vRealize Automation 8.3 및 SaltStack Config – 기술 개요

작년에 VMware가 SaltStack을 인수했다는 발표를 놓쳤을 경우 여기에서 자세히 알아보십시오. 이 블로그를 통해 제품 관점에서 vRealize Automation 8.3이 SaltStack(현재의 vRealize SaltStack Config)과 더 긴밀하게 통합되는 방법에 대해 소개하게 되어 매우 기쁘게 생각합니다. NAT vRealize Automation 8.x 고객은 SaltStack Config를 별도의 어플라이언스로 다운로드하여 해당 제품을 사용할 수 있지만, 이제 vRealize Automation 8.3 고객은 SaltStack Config를 Cloud Assembly 또는 CodeStream과 같은 다른 서비스로 인식하게 됩니다.

SaltStack Config 타일을 클릭하면 SaltStack Config 인터페이스가 열립니다. 이제 이 강력한 구성 관리 툴을 시작하고 인프라를 구축하는 것이 쉽고 간단합니다. 이 블로그에서 저는 이 새로운 통합의 몇 가지 주요 사항을 살펴보고 이 통합이 어떻게 사용될 수 있는지 보여드리겠습니다. SaltStack Config의 몇 가지 사용 사례에 대해 읽고 싶으시다면 여기에 블로그를 작성해서 확인해 보세요.

vRealize Suite Lifecycle Manager의 SaltStack Config 구성

이제 vRealize Suite Lifecycle Manager(vRSLCM) 8.3을 사용하여 SaltStack Config를 vRealize Automation 서비스 세트에 추가할 수 있습니다. 이를 위해 vRSLCM으로 이동한 후 환경 관리로 이동합니다. 그런 다음 vRealize Automation 8.3 타일을 선택하고 점 세 개를 클릭합니다. 그런 다음 제품 추가를 선택하면 SaltStack 구성 타일이 표시됩니다.

제품 추가를 클릭하면 타일 목록이 표시됩니다. SaltStack 구성을 선택하고 마법사를 통해 설치합니다.

SaltStack Config 설치를 완료하면 vRealize Automation 8.3에 SaltStack Config 서비스 타일이 표시됩니다.

SaltStack Config 인터페이스 탐색

앞서 말씀드린 SaltStack Config 타일을 클릭하면 SaltStack Config용 인터페이스가 열립니다. SaltStack Enterprise(현재의 SaltStack Config) 인터페이스를 잘 알고 있다면 기능은 동일하지만 일부 메뉴 항목은 다른 영역에 있습니다. 그러나 파일 서버, 작업, 작업, 활동, 필라, 미니언 등을 볼 수 있습니다.

왼쪽 탐색 막대를 통해 관리 중인 미니언에 액세스할 수 있습니다. Minions를 클릭하면 SaltStack Config 시스템에 현재 등록되어 있는 Minions 목록을 볼 수 있습니다. 배포된 SaltStack Config 어플라이언스는 Salt “Master” 역할을 하므로 미니언이 등록할 수 있습니다.

미니언을 클릭하면 해당 미니언과 관련된 그레인 및 활동이 표시됩니다. 그레인은 기본적으로 키/값 쌍 형식의 미니언에 대한 메타데이터입니다. OS, FQDN, cpuarch 등과 같은 다양한 기본 제공 그레인이 있으며 사용자 지정 그레인도 생성할 수 있습니다. 활동 섹션에는 해당 미니언에 대해 실행되는 작업 및/또는 명령이 표시됩니다.

인터페이스의 또 다른 중요한 영역은 Config > File Server입니다. 이 섹션에서는 작업, 오케스트레이션 및 리액터에 대한 상태 파일을 생성할 수 있습니다. SaltStack Config는 여전히 인터페이스 내에서 직관적이고 강력한 트리 구조를 제공하여 다양한 상태 파일의 파일을 호출하고 상태 파일을 다른 상태 파일과 상호 작용시키는 우아한 방법을 제공하기 위해 “base” 구조(기본값)를 사용한다. 예를 들어 구성 파일을 넣은 다음 상태 파일에서 해당 위치를 가리킬 수 있는 하위 디렉토리를 생성할 수 있습니다. 예를 들어 데이터베이스 또는 Apache 웹 서버를 설치할 때 유용합니다. 아래 예제는 Apache 배포의 샘플 디렉터리 구조를 보여줍니다.

인터페이스 내에서 몇 개의 중요한 영역을 간단히 둘러보는 것이 고작이었습니다. 이제 vRealize Automation Cloud Assembly가 SaltStack Config와 함께 작동하는 방식도 살펴보겠습니다.

클라우드 어셈블리 및 배포 미니언

다음은 vRealize Automation을 통해 minion을 배포한 다음 SaltStack Config 마스터 시스템에 자동으로 등록하는 몇 가지 단계에 대해 설명합니다. Cloud Assembly에서는 미니어처 구축 프로세스를 지원하기 위해 몇 가지 추가 기능이 개선되었습니다. 향상된 기능 중 하나는 속성 그룹입니다.

Cloud Assembly에는 Property Groups가 있으며, Design > Property Groups로 이동하면 “SaltStack Configuration”이라는 기본 제공 속성 그룹이 표시됩니다. 이 속성 그룹에는 masterAddress 및 masterFingerPrint라는 두 가지 상수 값 속성이 있습니다. vRSLCM을 통해 배포된 SaltStack Config 어플라이언스를 가리키도록 자동으로 구성됩니다.

그런 다음 이러한 속성을 Cloud Assembly Cloud Templates 내에서 사용하여 Minion을 Cloud Assembly를 통해 배포되는 시스템에 설치할 수 있습니다. 그런 다음 Minion이 SaltStack Config에 등록되면 오케스트레이션, 상태 관리 및 소프트웨어 전송과 같은 구성 관리 기능을 활용할 수 있습니다. 다음은 클라우드 구성을 사용하여 시스템에서 미니언을 구성한 Cloud Template의 예입니다(마스터 지문 속성이 아직 필요하지 않습니다. 파트 2 블로그에서 설명하겠습니다).

inputs: 
  environment:
    type: string
    enum:
      - Production
      - Development
resources:
  LinuxVM-Minion:
    type: Cloud.vSphere.Machine
    properties:
      name: salt-minion-vra
      cpuCount: 1
      totalMemoryMB: 2048
      imageRef: 'https://build-artifactory.eng.vmware.com/symphony-infra-local/ubuntu/releases/xenial/release-20190605/ubuntu-16.04-server-cloudimg-amd64.ova'
      cloudConfig: |
        #cloud-config
        runcmd:
          - curl -L https://bootstrap.saltstack.com -o install_salt.sh
          - sudo sh install_salt.sh -A ${propgroup.SaltStackConfiguration.masterAddress}
          - sudo salt-call grains.set env ${input.environment} # example to pass grains
      remoteAccess:
        authentication: publicPrivateKey
        sshKey: ssh-rsa your-public-key
      networks:
        - network: '${resource.vSphere_Network.id}'
  vSphere_Network:
    type: Cloud.Network
    properties:
      networkType: existing

https://gitlab.com/vincegroup/vince_gitlab_cas/-/snippets/2061153

Minion이 Saltstack Config 마스터에 등록하려고 할 때마다 관리자가 Minion에 생성된 키를 수동으로 수락하는 것이 기본 작업입니다. 그런 다음 이 작업을 수행하면 SaltStack Config에서 미니언을 관리하고 그에 대해 작업을 실행할 수 있습니다. 그러나 특정 기준에 기초한 미니언 자동 수용을 제공하는 원자로 파일을 통해 시작될 일부 조정 규칙을 설정할 수 있다. SaltStack Config는 이벤트 기반 구성 관리 플랫폼이기 때문에, 원자로는 조정으로 응답할 특정 이벤트의 이벤트 버스를 본다. 예를 들어, 아래의 리액터로 파일은 ‘salt/auth’ 이벤트를 찾고 있으며, 이러한 유형의 이벤트는 미니언(minion)이 SaltStack Config 마스터로 인증을 시도하고 있음을 나타낸다. 리액터로 파일에는 ‘accept-key.sls’ 리액터로 상태 파일에 대한 추가 지침이 있다.

리액터로 상태 파일 ‘accept-key.sls’는 진자를 사용하여 수용해야 하는 미니언의 필터링을 더욱 세분화할 수 있다. 아래 예에서는 dev 또는 oc-cool로 시작하는 ‘id’가 있는 미니언만 자동으로 수락되고 SaltStack Config 마스터에 등록됩니다.

클라우드-init을 사용하여 미니언을 설치하지 않으려면 여기에 ABX를 사용하는 다른 방법이 나와 있습니다. 참조된 블로그에서는 Windows와 Linux 모두에 ABX를 사용하여 미니언을 설치하는 방법을 설명하고 미니언을 컴퓨터에 설치하는 또 다른 좋은 방법입니다.

SaltStack Config와 vRealize Automation 8.3 간의 보다 긴밀한 UI 통합이 매우 기대됩니다. 또한 vRealize Automation 고객이 SaltStack Config를 통해 강력한 구성 관리 기능과 함께 vRealize Automation이 고객에게 제공하는 다른 모든 장점을 제공하게 되어 기쁘게 생각합니다. 앞으로 SaltStack Config 블로그와 비디오를 더 많이 확인해 보십시오!

출처 : https://blogs.vmware.com/management/2021/02/vrealize-automation-8-3-and-saltstack-config-technical-overview.html
답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

You May Also Like