이 예에서는 사용자 이름 및 암호 액세스를 사용하여 Puppet 구성 관리를 vCenter 계산 리소스에 배포된 클라우드 템플릿에 추가합니다.

이 절차는 사용자 이름 및 암호 인증이 필요한 배포 가능한 Puppet 지원 리소스를 생성할 수 있는 방법에 대한 하나의 예를 보여 줍니다. 사용자 이름 및 암호 액세스란 사용자가 계산 리소스에서 Puppet 기본 시스템으로 수동으로 로그인해야 Puppet 구성 관리를 호출할 수 있음을 의미합니다.

선택적으로, 계산 리소스가 Puppet 기본 시스템을 사용하여 인증을 처리하도록 클라우드 템플릿에서 구성 관리를 설정하는 원격 액세스 인증을 구성할 수 있습니다. 원격 액세스를 사용하도록 설정하면 계산 리소스가 암호 인증을 만족하는 키를 자동으로 생성합니다. 이 경우에도 올바른 사용자 이름은 필요합니다.

Cloud Assembly Blueprint에서 서로 다른 Puppet 시나리오를 구성할 수 있는 방법에 대한 더 많은 예를 보려면 AWS Puppet 구성 관리 클라우드 템플릿 예제vCenter Puppet 구성 클라우드 템플릿 예 항목을 참조하십시오.

사전 요구 사항

  • 올바른 네트워크에 Puppet Enterprise 인스턴스를 설정합니다.
  • 통합 기능을 사용하여 Puppet Enterprise 인스턴스를 Cloud Assembly에 추가합니다. Cloud Assembly에서 Puppet Enterprise 통합 구성 항목을 참조하십시오.
  • vSphere 계정 및 vCenter 계산 리소스를 설정합니다.

프로시저

  1. Puppet 구성 관리 구성 요소를 원하는 클라우드 템플릿 캔버스의 vSphere 계산 리소스에 추가합니다.
    1. 인프라 > 관리 > 통합을 선택합니다.
    2. 통합 추가를 클릭하고 Puppet을 선택합니다.
    3. [Puppet 구성] 페이지에 적절한 정보를 입력합니다.
      구성 설명 예시 값
      호스트 이름 Puppet 기본 시스템의 호스트 이름 또는 IP 주소 Puppet-Ubuntu
      SSH 포트 Cloud Assembly와 Puppet 기본 시스템 간 통신을 위한 SSH 포트입니다. (선택 사항) 해당 없음
      Autosign 암호 Autosign 인증서 요청 지원을 위해 노드에서 제공해야 하는 Puppet 기본 시스템에서 구성된 공유 암호입니다. 사용자 특정
      위치 Puppet 기본 시스템이 전용 클라우드에 있는지 아니면 공용 클라우드에 있는지 나타냅니다.
      참고: 교차 클라우드 배포는 배포 계산 리소스와 Puppet 기본 시스템 간에 연결이 있는 경우에만 지원됩니다.
      Cloud proxy Microsoft Azure 또는 Amazon Web Services와 같은 공용 클라우드 계정에는 필요하지 않습니다. vCenter 기반 클라우드 계정을 사용 중이라면 계정에 적절한 cloud proxy를 선택합니다. 해당 없음
      사용자 이름 Puppet 기본 시스템에 대한 SSH 및 RBAC 사용자 이름입니다. 사용자 특정. YAML 값은 '${input.username}'입니다.
      암호 Puppet 기본 시스템에 대한 SSH 및 RBAC 암호입니다. User 특정. YAML 값은 '${input.password}'입니다.
      이 사용자에 대해 sudo 명령 사용 procidd에 대해 sudo 명령을 사용하려면 선택합니다. true
      이름 Puppet 기본 시스템 이름입니다. PEMasterOnPrem
      설명
  2. 다음 예에 나와 있는 것과 같이 Puppet YAML에 사용자 이름 및 암호를 추가합니다.
  3. 아래 예에 나와 있는 것과 같이 Puppet 클라우드 템플릿 YAML에 대한 remoteAccess 속성 값이 authentication: username and password로 설정되어 있는지 확인합니다.

예: vCenter 사용자 이름 및 암호 YAML 코드

다음 예는 vCenter 계산 리소스에서 사용자 이름 및 암호 인증을 추가하기 위한 대표 YAML 코드를 보여 줍니다.

inputs:
  username:
    type: string
    title: Username
    description: Username to use to install Puppet agent
    default: puppet
  password:
    type: string
    title: Password
    default: VMware@123
    encrypted: true
    description: Password for the given username to install Puppet agent
resources:
  Puppet-Ubuntu:
    type: Cloud.vSphere.Machine
    properties:
      flavor: small
      imageRef: >-
        https://cloud-images.ubuntu.com/releases/16.04/release-20170307/ubuntu-16.04-server-cloudimg-amd64.ova
      remoteAccess:
        authentication: usernamePassword
        username: '${input.username}'
        password: '${input.password}'
  Puppet_Agent:
    type: Cloud.Puppet
    properties:
      provider: PEMasterOnPrem
      environment: production
      role: 'role::linux_webserver'
      username: '${input.username}'
      password: '${input.password}'
      host: '${Puppet-Ubuntu.*}'
      useSudo: true
      agentConfiguration:
        certName: '${Puppet-Ubuntu.address}'