この例では、vCenter コンピューティング リソースに展開され、かつユーザー名とパスワードでアクセスできるクラウド テンプレートに Puppet 構成管理を追加します。

この手順では、Puppet 対応の展開可能なリソースを作成し、しかもユーザー名とパスワードの認証がないと使用できないようにするにはどうすればよいか、その例を示します。ユーザー名とパスワードによるアクセスとは、Puppet 構成管理を呼び出すためには、ユーザーがコンピューティング リソースから Puppet プライマリ マシンに手動でログインする必要があることを意味します。

必要に応じて、コンピューティング リソースが Puppet プライマリ マシンで認証を処理するように、クラウド テンプレートで構成管理を設定するリモート アクセス認証を設定できます。リモート アクセスが有効な場合、コンピューティング リソースはパスワード認証を満たすキーを自動的に生成します。有効なユーザー名が引き続き必要です。

Cloud Assembly ブループリントにさまざまな Puppet シナリオを設定する例については、AWS での Puppet 構成管理のクラウド テンプレートの例vCenter Puppet 構成クラウド テンプレートの例を参照してください。

前提条件

  • 有効なネットワークに Puppet Enterprise インスタンスをセットアップします。
  • 統合機能を使用して、Puppet Enterprise インスタンスを Cloud Assembly に追加します。Cloud Assembly での Puppet Enterprise 統合の設定を参照してください。
  • vSphere アカウントと vCenter コンピューティング リソースを設定します。

手順

  1. 目的のクラウド テンプレートのキャンバスにある vSphere コンピューティング リソースに、Puppet 構成管理コンポーネントを追加します。
    1. [インフラストラクチャ] > [管理] > [統合] の順に選択します。
    2. [統合の追加] をクリックし、[Puppet] を選択します。
    3. Puppet 設定画面で適切な情報を入力します。
      設定 説明 値の例
      ホスト名 Puppet プライマリ マシンのホスト名または IP アドレス Puppet-Ubuntu
      SSH ポート Cloud Assembly と 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
      説明
  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}'