vCenter コンピューティング リソースで Puppet ベースの構成管理をサポートするようにクラウド テンプレートを設定するためのオプションがいくつか用意されています。
vSphere 上の Puppet でユーザー名とパスワードによる認証を使用する
次の例は、vSphere OVA 上の Puppet でユーザー名とパスワードによる認証を使用する場合の YAML コードを示しています。
例... | ブループリント YAML のサンプル |
---|---|
vSphere OVA 上の Puppet でユーザー名とパスワードによる認証を使用する場合の YAML コード。 | inputs: username: type: string title: Username default: puppet password: type: string title: Password encrypted: true default: VMware@123 resources: Puppet_Agent: type: Cloud.Puppet properties: provider: PEonAWS environment: dev role: 'role::linux_webserver' username: '${input.username}' password: '${input.password}' useSudo: true host: '${Webserver.*}’ osType: linux agentConfiguration: runInterval: 15m certName: ‘${Machine.address}' Webserver: type: Cloud.vSphere.Machine properties: cpuCount: 1 totalMemoryMB: 1024 imageRef: >- https://cloud-images.ubuntu.com/releases/16.04/release-20170307/ubuntu-16.04-server-cloudimg-amd64.ova cloudConfig: | #cloud-config ssh_pwauth: yes chpasswd: list: | ${input.username}:${input.password} expire: false users: - default - name: ${input.username} lock_passwd: false sudo: ['ALL=(ALL) NOPASSWD:ALL'] groups: [wheel, sudo, admin] shell: '/bin/bash' ssh-authorized-keys: - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDytVL+Q6+vGbmkXoRpX [email protected] runcmd: - echo "Defaults:${input.username} |
vSphere OVA 上の Puppet でユーザー名とパスワードによる認証を使用してコンピューティング リソースを管理する場合の YAML コード。 | inputs: username: type: string title: Username default: puppet password: type: string title: Password encrypted: true default: VMware@123 resources: Puppet_Agent: type: Cloud.Puppet properties: provider: PEonAWS environment: dev role: 'role::linux_webserver' username: '${input.username}' password: '${input.password}' useSudo: true host: '${Webserver.*}’ osType: linux agentConfiguration: runInterval: 15m certName: ‘${Machine.address}' Webserver: type: Cloud.vSphere.Machine properties: cpuCount: 1 totalMemoryMB: 1024 imageRef: >- https://cloud-images.ubuntu.com/releases/16.04/release-20170307/ubuntu-16.04-server-cloudimg-amd64.ova cloudConfig: | #cloud-config ssh_pwauth: yes chpasswd: list: | ${input.username}:${input.password} expire: false users: - default - name: ${input.username} lock_passwd: false sudo: ['ALL=(ALL) NOPASSWD:ALL'] groups: [wheel, sudo, admin] shell: '/bin/bash' ssh-authorized-keys: - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDytVL+Q6+vGbmkXoRpX [email protected] runcmd: - echo "Defaults:${input.username} |
vCenter 上の Puppet でリモート アクセス対応のパスワード認証を使用してコンピューティング リソースを管理する場合の 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}' |
vSphere 上の Puppet で生成済みのパブリック キーまたはプライベート キーによる認証を使用する
例... | ブループリント YAML のサンプル |
---|---|
vSphere OVA 上の Puppet で生成済みのパブリック キーまたはプライベート キーによる認証を使用してコンピューティング リソースを管理する場合の YAML コード。 | inputs: {} resources: Machine: 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: generatedPublicPrivateKey Puppet_Agent: type: Cloud.Puppet properties: provider: puppet-BlueprintProvisioningITSuite environment: production role: 'role::linux_webserver' host: '${Machine.*}’ osType: linux username: ubuntu useSudo: true agentConfiguration: runInterval: 15m certName: ‘${Machine.address}' - echo "Defaults:${input.username} |