Automation Config 인스턴스를 설정하고 확인하려면 Salt 마스터에 Salt 및 마스터 플러그인을 설치하고 Cloud Services 콘솔에서 API 토큰을 생성한 다음 Salt 마스터를 Automation Config에 연결합니다. 온-프레미스 또는 클라우드에 있는 Salt 마스터를 연결할 수 있습니다.

사전 요구 사항

Automation Config를 설정하기 전에 다음 사전 요구 사항을 완료해야 합니다.
  • VMware Cloud Services에 다음 역할이 있어야 합니다.
    • 조직 역할: 조직 소유자 또는 조직 관리자
    • 서비스 역할: Salt 마스터
  • 기본 조직을 Automation Config 서비스에 대한 액세스 권한이 있는 조직으로 설정합니다.

설정 개요

Automation Config 설정에는 다음과 같은 작업이 포함됩니다.

  1. Salt 마스터 및 Automation Config를 사용하여 관리하려는 노드에 Salt를 설치합니다. 자세한 내용은 1단계: Salt 설치 항목을 참조하십시오.
  2. Automation Config와 통신해야 하는 Salt 마스터에 마스터 플러그인을 설치하거나 업그레이드합니다. 자세한 내용은 2단계: 마스터 플러그인 설치 및 구성 항목을 참조하십시오.
  3. Salt 마스터가 Automation Config에 연결할 수 있도록 API 토큰을 생성합니다. 자세한 내용은 3단계: API 토큰 생성 항목을 참조하십시오.
  4. Salt 마스터를 Automation Config에 연결합니다. 자세한 내용은 4단계: Salt 마스터를 Automation Config에 연결하기 항목을 참조하십시오.
  5. Automation Config 사용자 인터페이스에서 Salt 마스터 키를 수락합니다. 자세한 내용은 5단계: Salt 마스터 키 수락 항목을 참조하십시오.

1단계: Salt 설치

먼저 Salt 마스터에 Salt 마스터 서비스 및 Salt 미니언 서비스를 설치해야 Automation Config를 사용할 수 있습니다.

Salt를 설치하기 전에 필요한 모든 종속성을 설치합니다. 자세한 내용은 Salt 설치 가이드에서 종속성 설치를 참조하십시오. 지원되는 Salt 운영 체제 목록은 Salt 지원 운영 체제를 참조하십시오.
참고: Salt Open Project 설명서는 VMware에서 유지 관리합니다.

다음 지침은 RHEL 8에 최신 Salt 릴리스를 설치합니다. 다른 운영 체제에 Salt를 설치하는 방법에 대한 자세한 내용은 Salt 설치 가이드를 참조하십시오.

  1. 오프라인 또는 보안 환경에서 Salt를 설치하는 경우, Salt를 설치하는 데 필요한 다음 URL을 허용하도록 네트워크 프록시를 구성해야 합니다.
    • https://repo.saltproject.io
    • https://pypi.org
    • https://python.org
    설치를 진행하기 전에 네트워크 프록시를 통한 네트워크 활동을 확인합니다.
  2. Salt 마스터의 터미널에서 다음 명령을 실행하여 Salt 프로젝트 저장소 및 키를 설치합니다.
    sudo rpm --import https://repo.saltproject.io/py3/redhat/8/x86_64/latest/SALTSTACK-GPG-KEY.pub
    curl -fsSL https://repo.saltproject.io/salt/py3/redhat/8/x86_64/latest.repo | sudo tee /etc/yum.repos.d/salt.repo
  3. sudo yum clean expire-cache를 실행합니다.
  4. Salt 마스터에 salt-minion 서비스 및 salt-master 서비스를 설치합니다.
    sudo yum install salt-master
    sudo yum install salt-minion
  5. /etc/salt/minion.d 디렉토리에 master.conf 파일을 생성합니다.
    touch master.conf
  6. master.conf 파일에서 Salt 마스터의 IP 주소가 스스로를 가리키도록 설정합니다.
    master: localhost
  7. Salt 마스터 서비스 및 Salt 미니언 서비스를 시작합니다.
    sudo systemctl enable salt-master && sudo systemctl start salt-master
    sudo systemctl enable salt-minion && sudo systemctl start salt-minion
  8. 네트워크 프록시를 사용하는 경우 네트워크 설정에 따라 HTTP_PROXYHTTPS_PROXY 변수를 설정합니다.
    1. systemd를 사용하여 Salt 마스터 서비스를 관리하는 경우 HTTP_PROXYHTTPS_PROXY 환경 변수를 salt-master.service 파일에 추가합니다.
    2. systemctl daemon-reload를 실행합니다.
    3. systemctl restart salt-master를 실행하여 Salt 마스터 서비스를 다시 시작합니다.

2단계: 마스터 플러그인 설치 및 구성

인프라에 Salt를 설치한 후에는 Salt 마스터가 Automation Config와 통신할 수 있도록 마스터 플러그인을 설치하고 구성해야 합니다.

기존 Salt 마스터가 이미 있는 경우 Salt 마스터를 Automation Config에 연결하기 전에 마스터 플러그인을 사용 가능한 최신 버전으로 업그레이드합니다. 자세한 내용은 마스터 플러그인 업무 공간 사용을 참조하십시오.

마스터 플러그인을 설치 및 구성하려면:

  1. Salt 마스터에 로그인합니다.
  2. 마스터 플러그인 업무 공간에서 최신 버전의 마스터 플러그인을 다운로드합니다. 마스터 플러그인 버전은 일반적으로 8.12.1.2와 같은 4개의 숫자로 구성됩니다.
    중요:

    마스터 플러그인 버전은 Automation Config 버전의 처음 3개 숫자와 일치해야 합니다. 예를 들어 Automation Config 버전이 8.12.1인 경우 마스터 플러그인 버전은 8.12.1.0 이상이어야 합니다. Automation Config 버전은 마스터 플러그인 업무 공간에서 찾을 수 있습니다.

  3. Python 휠을 수동으로 설치하여 마스터 플러그인을 설치합니다. 예제 명령을 휠 파일의 정확한 이름을 대체하여 사용합니다.
    salt-call --local pip.install /path/to/SSEAPE-file-name.whl

    에어갭이 아닌 환경의 경우 이 명령을 실행할 때 종속성이 아직 없으면 종속성이 자동으로 설치됩니다. 에어갭 환경의 경우 에어갭 시스템에 Salt 마스터 플러그인 설치 기술 자료 문서를 참조하십시오.

  4. 마스터 구성 설정을 생성합니다.
    1. /etc/salt/master.d 디렉토리가 있는지 확인합니다. 없는 경우 생성합니다.
    2. 다음 명령을 실행하여 마스터 구성 파일을 생성합니다.
      sudo sseapi-config --all > /etc/salt/master.d/raas.conf

      이 명령을 실행할 때 오류가 발생하면 Automation Config 문제 해결을 참조하십시오.

  5. Salt 마스터 서비스를 다시 시작합니다.
    sudo systemctl restart salt-master

3단계: API 토큰 생성

Salt 마스터를 Automation Config에 연결하려면 먼저 Cloud Services 콘솔을 사용하여 API 토큰을 생성해야 합니다. 이 토큰은 VMware Cloud Services에 Salt 마스터를 인증하는 데 사용됩니다.

참고: 이 단계를 완료하려면 조직에서 조직 관리자 역할이 있어야 합니다. 조직 역할을 보려면 Cloud Services 콘솔을 열고 사용자 이름을 클릭한 다음 내 계정 > 내 역할을 선택합니다.

조직 관리자 역할이 할당되지 않은 경우 조직 소유자에게 문의하십시오.

API 토큰을 생성하려면:

  1. Cloud Services 콘솔에서 사용자 이름을 클릭하고 내 계정 > API 토큰을 선택합니다.
  2. 토큰 생성을 클릭합니다.
  3. 양식을 작성합니다.

    Cloud Services 콘솔에서 토큰 양식 생성

    1. 토큰의 이름을 입력합니다.
    2. 토큰의 TTL(Time to Live)을 선택합니다. 기본 기간은 6개월입니다.
      참고: 만료되지 않는 토큰은 손상될 경우 보안 위험을 초래할 수 있습니다. 이러한 상황이 발생하는 경우 토큰을 해지해야 합니다.
    3. 토큰의 범위를 정의합니다.
      범위 설명
      조직 역할 조직 역할은 조직의 리소스에 대한 사용자의 액세스 권한을 결정합니다.

      Automation Config 서비스에 액세스하려면 조직 관리자 또는 조직 소유자 역할을 선택해야 합니다.

      서비스 역할 서비스 역할은 VMware Cloud Services에 대한 액세스 권한을 부여하는 미리 정의된 기본 제공 사용 권한 집합입니다.

      Automation Config 서비스에 액세스하려면 VMware Aria Automation 서비스를 검색합니다.

      Config 서비스 옆의 드롭다운 화살표를 클릭하고 Salt 마스터 서비스 역할을 선택합니다.

    4. (선택 사항) 토큰이 곧 만료되는 경우 미리 알림을 받도록 이메일 기본 설정을 지정합니다.
    5. 생성을 클릭합니다.

      새로 생성된 API 토큰이 토큰 생성됨 창에 나타납니다.

  4. 토큰 자격 증명을 안전한 위치에 저장합니다.

    토큰을 생성한 후에는 API 토큰 페이지에서 토큰 이름만 볼 수 있고 자격 증명은 볼 수 없습니다. 토큰을 재생성하려면 재생성을 클릭합니다.

4단계: Salt 마스터를 Automation Config에 연결하기

API 토큰을 생성한 후에는 이 토큰을 사용하여 Salt 마스터를 Automation Config에 연결할 수 있습니다.

Salt 마스터를 연결하려면:

  1. Salt 마스터의 터미널에서 API 토큰을 환경 변수로 저장합니다.
    export CSP_API_TOKEN=<api token value>
  2. sseapi-config join 명령을 실행하여 Salt 마스터를 Automation Config에 연결합니다.
    1. Salt 마스터를 Automation Config에 처음 연결하는 경우 ssc-urlcsp-url 값을 지역별 URL로 바꾸어 다음 명령을 실행합니다.
      sseapi-config join --ssc-url <SSC URL> --csp-url <CSP URL>
    2. sudo 를 사용하는 경우 다음 명령을 실행합니다.
      sudo CSP_API_TOKEN=<api token value> sseapi-config join --ssc-url <SSC URL> --csp-url <CSP URL>
    3. 가입 프로세스를 다시 실행해야 하는 경우 sseapi-config join 명령을 다시 실행하여 플래그 --override-oauth-app를 전달합니다.
      sseapi-config join --ssc-url <SSC URL> --csp-url <CSP URL> --override-oauth-app

      --override-oauth-app 플래그는 액세스 토큰을 가져오는 데 사용되는 OAuth 애플리케이션을 삭제하고 다시 생성합니다.

    표 1. Automation Config에 대한 지역별 URL
    지역 Automation Config URL 클라우드 서비스 URL
    US https://ssc-gateway.mgmt.cloud.vmware.com https://console.cloud.vmware.com
    독일 https://de.ssc-gateway.mgmt.cloud.vmware.com https://console.cloud.vmware.com
    인도 https://in.ssc-gateway.mgmt.cloud.vmware.com https://console.cloud.vmware.com
    캐나다 https://ca.ssc-gateway.mgmt.cloud.vmware.com https://console.cloud.vmware.com
    오스트레일리아 https://au.ssc-gateway.mgmt.cloud.vmware.com https://console.cloud.vmware.com
    UK https://uk.ssc-mgmt.cloud.vmware.com https://console.cloud.vmware.com
    다음 코드 샘플은 미국 지역의 성공적인 응답 예를 보여줍니다.
    2022-08-16 21:28:26 [INFO] SSEAPE joining SSC Cloud... v8.9.1.1 2022-08-16T15:28:12
    2022-08-16 21:28:26 [INFO] Retrieving CSP auth token.
    2022-08-16 21:28:27 [INFO] Creating new oauth app.
    2022-08-16 21:28:27 [INFO] Finished with oauth app [Salt Master App for master id:my-salt-master] in org [6bh70973-b1g2-716c-6i21-i9974a6gdc85].
    2022-08-16 21:28:29 [INFO] Added service role [saltstack:master] for oauth app [Salt Master App for master id:my-salt-master].
    2022-08-16 21:28:29 [INFO] Created pillar [CSP_AUTH_TOKEN].
    2022-08-16 21:28:29 [INFO] Updated master config. Please restart master for config changes to take effect.
    2022-08-16 21:28:29 [INFO] Updated master cloud.conf.
    2022-08-16 21:28:29 [INFO] Validating connectivity to SaltStack Cloud instance [https://ssc-gateway.mgmt.cloud.vmware.com]
    2022-08-16 21:28:29 [INFO] Successfully validated connectivity to SaltStack Cloud instance [https://ssc-gateway.mgmt.cloud.vmware.com]. Response: {'version': 'v8.9.0.5', 'vipVersion': '8.9.0'}
    2022-08-16 21:28:29 [INFO] Finished SSEAPE joining SSC Cloud... v8.9.1.1 2022-08-16T15:28:12
    

    이 명령을 실행할 때 오류가 발생하면 Automation Config 문제 해결을 참조하십시오.

  3. Salt 마스터 서비스를 다시 시작합니다.
    systemctl restart salt-master
  4. 각 Salt 마스터에 대해 이 절차를 반복합니다.
    참고: 각 Salt 마스터를 Automation Config에 연결한 후 API 토큰을 삭제할 수 있습니다. Salt 마스터를 Automation Config에 연결하는 데만 필요합니다.

sseapi-config 명령을 실행하면 조직에 각 Salt 마스터에 대한 OAuth 애플리케이션이 생성됩니다. Salt 마스터는 OAuth 애플리케이션을 사용하여 Automation Config에 대한 모든 요청에 추가되는 액세스 토큰을 가져옵니다. 조직 > OAuth 애플리케이션을 선택하여 OAuth 애플리케이션의 세부 정보를 볼 수 있습니다.

또한 이 명령은 Salt 마스터에 CSP_AUTH_TOKEN이라는 pillar 데이터를 생성합니다. pillar는 Salt 마스터에 저장되고 데이터에 액세스할 수 있는 권한이 부여된 하나 이상의 미니언으로 전달되는 데이터 구조입니다. pillar 데이터는 /srv/pillar/csp.sls에 저장되며 클라이언트 ID, 비밀, 조직 ID 및 CSP URL을 포함합니다. 비밀을 순환해야 하는 경우 sseapi-config join 명령을 다시 실행하면 됩니다.

pillar 데이터 예시:

CSP_AUTH_TOKEN:
   csp_client_id: kH8wIvNxMJEGGmk7uCx4MBfPswEw7PpLaDh
   csp_client_secret: ebH9iuXnZqUOkuWKwfHXPjyYc5Umpa00mI9Wx3dpEMlrUWNy95
   csp_org_id: 6bh70973-b1g2-716c-6i21-i9974a6gdc85
   csp_url: https://console.cloud.vmware.com

5단계: Salt 마스터 키 수락

Salt 마스터를 Automation Config에 연결한 후에는 Automation Config 사용자 인터페이스에서 Salt 마스터의 키를 수락해야 합니다.

Salt 마스터의 키를 수락하려면 에서 감독자Automation Config 역할이 있어야 합니다. 자세한 내용은 사용자 역할을 정의하는 방법을 참조하십시오.

Salt 마스터 키를 수락하려면:

  1. Automation Config 사용자 인터페이스에 로그인합니다.
  2. 왼쪽 상단 탐색 모음에서 메뉴 메뉴 아이콘를 클릭한 다음 관리를 선택하여 관리 업무 공간에 액세스합니다. 마스터 키 탭을 클릭합니다.

    마스터 키가 표시되지 않으면 Automation Config 문제 해결을 참조하십시오.

    참고: 키 지문을 확인하여 보류 중인 마스터 키가 올바른 Salt 마스터의 키인지 확인할 수 있습니다. Salt 마스터에서 sseapi-config auth를 실행하여 키 지문을 확인한 다음, 마스터 키 탭에 표시된 지문과 동일한지 확인합니다.
  3. 마스터 키 옆의 확인란을 선택하여 선택합니다. 그런 다음 키 수락을 클릭합니다.
  4. Salt 미니언을 Salt 마스터에 이미 연결한 경우 수락할 보류 중인 미니언 키가 있음을 나타내는 경고가 표시됩니다. 이러한 미니언 키를 수락하려면 미니언 키 > 보류 중으로 이동합니다.
    1. 미니언 옆의 확인란을 선택하여 선택합니다. 그런 다음 키 수락을 클릭합니다.

    이제 키가 수락됩니다. 몇 초 후에 수락함 탭과 대상 업무 공간에 미니언이 나타납니다.

Automation Config 인터페이스에서 test.ping 명령을 실행하여 Salt 마스터와 Salt 미니언이 통신 중인지 확인할 수 있습니다. 자세한 내용은 대상 업무 공간에서 임시 작업 실행을 참조하십시오.

다른 노드에 Salt 미니언을 더 추가하려면 이 절차의 1단계를 따르고 salt-master를 설치하거나 사용하도록 설정하는 명령을 생략한 다음, Salt 마스터의 호스트 이름 또는 IP를 가리키도록 master.conf를 편집합니다. 자세한 내용은 Salt 미니언 구성을 참조하십시오.

Salt 마스터와 Salt 미니언이 통신하지 않는 경우 Automation Config 문제 해결을 참조하십시오.