この例では、vCenter コンピューティング リソースに展開され、かつユーザー名とパスワードでアクセスできるクラウド テンプレートに Puppet 構成管理を追加します。
この手順では、Puppet 対応の展開可能なリソースを作成し、しかもユーザー名とパスワードの認証がないと使用できないようにするにはどうすればよいか、その例を示します。ユーザー名とパスワードによるアクセスとは、Puppet 構成管理を呼び出すためには、ユーザーがコンピューティング リソースから Puppet プライマリ マシンに手動でログインする必要があることを意味します。
必要に応じて、コンピューティング リソースが Puppet プライマリ マシンで認証を処理するように、クラウド テンプレートで構成管理を設定するリモート アクセス認証を設定できます。リモート アクセスが有効な場合、コンピューティング リソースはパスワード認証を満たすキーを自動的に生成します。有効なユーザー名が引き続き必要です。
Automation Assembler ブループリントにさまざまな Puppet シナリオを設定する例については、AWS での Puppet 構成管理のクラウド テンプレートの例とvCenter Puppet 構成クラウド テンプレートの例を参照してください。
前提条件
- 有効なネットワークに Puppet Enterprise インスタンスをセットアップします。
- 統合機能を使用して、Puppet Enterprise インスタンスを Automation Assembler に追加します。Automation Assembler での Puppet Enterprise 統合の設定を参照してください。
- vSphere アカウントと vCenter コンピューティング リソースを設定します。
手順
- 目的のクラウド テンプレートのキャンバスにある vSphere コンピューティング リソースに、Puppet 構成管理コンポーネントを追加します。
- の順に選択します。
- [統合の追加] をクリックし、[Puppet] を選択します。
- Puppet 設定画面で適切な情報を入力します。
設定 説明 値の例 ホスト名 Puppet プライマリ マシンのホスト名または IP アドレス Puppet-Ubuntu SSH ポート Automation Assembler と Puppet プライマリ マシン間の通信用の SSH ポート。(オプション) なし 自動署名シークレット 証明書要求の自動署名をサポートするためにノードが提供する、Puppet プライマリ マシンに設定された共有シークレット。 ユーザー固有 場所 Puppet プライマリ マシンがプライベート クラウドとパブリック クラウドのどちらにあるかを示します。 注: クロス クラウド展開は、展開コンピューティング リソースと Puppet プライマリ マシンとの間に接続がある場合にのみサポートされます。Cloud proxy Microsoft Azure や Amazon Web Services などのパブリック クラウド アカウントには必要ありません。vCenter ベースのクラウド アカウントを使用している場合は、そのアカウントに適切な cloud proxy を選択します。 なし Username Puppet プライマリ マシンの SSH および RBAC ユーザー名。 ユーザー固有です。YAML 値は「${input.username}」です。 パスワード Puppet プライマリ マシンの SSH および RBAC パスワード。 ユーザー固有の YAML 値は「${input.password}」です。 このユーザーに sudo コマンドを使用 procidd に sudo コマンドを使用する場合に選択します。 true 名前 Puppet プライマリ マシン名。 PEMasterOnPrem 説明
- 次の例のように、ユーザー名とパスワードのプロパティを Puppet YAML に追加します。
- 次の例に示すように、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}'