イメージ マッピングでは、自然言語による名前付けを使用して、vRealize Automation Cloud での特定のクラウド アカウントとリージョンに対する一連の事前定義済みのターゲット オペレーティング システム仕様をグループ化します。

Microsoft AzureAmazon Web Services などのクラウド ベンダー アカウントは、イメージを使用して、OS や関連する設定などの一連のターゲットの展開条件をグループ化します。vCenterVMware Cloud on AWS などの NSX ベースの環境では、同様のグループ分けメカニズムを使用して、一連の OS 展開条件を定義します。クラウド テンプレートをビルドし、最終的に展開して、繰り返し使用する場合は、ニーズに最も適した使用可能なイメージを選択します。

プロジェクトのイメージ マッピングは、同様のオペレーティング システム設定、タグ付け方法、および機能展開の目的に合わせて編成します。

クラウド テンプレートの作成を簡素化するために、新しいクラウド アカウントを追加するときに事前構成オプションを選択できます。事前構成オプションを選択すると、指定されたリージョンに対する組織で最も一般的なフレーバー マッピングとイメージ マッピングが選択されます。

クラウド テンプレートにイメージ情報を追加する場合は、マシン コンポーネントの properties セクションの image または imageRef のどちらかのエントリを使用します。たとえば、スナップショットからクローンを作成する場合は、imageRef プロパティを使用します。

クラウド テンプレート コードの image および imageRef エントリの例については、Cloud Assembly 展開の設計を参照してください。

コンテンツ ライブラリに権限を割り当てるには、管理者が権限をグローバル権限としてユーザーに付与する必要があります。関連情報については、VMware vSphere のドキュメントで、『vSphere 仮想マシン管理』のコンテンツ ライブラリの権限の階層的な継承を参照してください。

クラウド アカウント/リージョンのイメージの同期

イメージの同期を実行すると、 [インフラストラクチャ] > [構成] > [イメージ マッピング] ページの特定のクラウド アカウント/リージョンに対して追加または削除しているイメージが、最新のものであることを確認できます。
  1. [インフラストラクチャ] > [接続] > [クラウド アカウント] を選択して、関連付けられている [クラウド アカウント/リージョン] を開きます。既存のクラウド アカウント/リージョンを選択します。
  2. [イメージの同期] ボタンをクリックして、アクションを完了させます。

    クラウド アカウント ページの [イメージの同期] アイコンの画像

  3. アクションが完了したら、[インフラストラクチャ] > [構成] > [イメージ マッピング] をクリックします。イメージ マッピングを新しく定義するか、既存のものを編集して、手順 1 のクラウド アカウント/リージョンを選択します。
  4. [イメージ マッピング] ページのイメージ同期アイコンをクリックします。

    イメージ マッピング ページに表示されたイメージ同期アイコン

  5. [イメージ マッピング] ページで、指定されたクラウド アカウント/リージョンのイメージ マッピングを構成します。

OVF 詳細の表示

vCenter マシン コンポーネントやイメージ マップなど、OVF 仕様を Cloud Assembly クラウド テンプレート オブジェクトに含めることができます。イメージに OVF ファイルが含まれている場合は、ファイルを開かずにそのコンテンツを見つけることができます。OVF の上にマウスを移動すると、名前と場所を含む OVF 詳細が表示されます。OVF ファイル フォーマットの詳細については、vcenter ovf: propertyを参照してください。

[OVF 詳細の表示] 記号の上にマウスを移動し、クリックして OVF コンテンツを表示

Microsoft Azure イメージ ギャラリーにある最新の共有イメージの使用

Microsoft Azure のイメージ マッピングを作成するとき、サブスクリプションの共有 Azure イメージ ギャラリーからイメージを選択できます。ドロップダウン メニュー内のイメージはデータ収集され、選択したリージョンに基づいて使用可能になります。

共有イメージ ギャラリーは複数のサブスクリプションから使用できますが、イメージ マッピング ドロップダウン メニューに複数のサブスクリプションから表示することはできません。特定のサブスクリプションのイメージだけがデータ収集されてイメージ マッピング リストに表示されます。別のサブスクリプションのイメージ ギャラリーに属するイメージを使用するには、イメージ マッピングでイメージ ID を指定して、クラウド テンプレートでそのイメージ マッピングを使用します。

イメージの選択を調整するための制約とタグの使用

クラウド テンプレートのイメージの選択をさらに絞り込むには、1 つまたは複数の制約を追加して、展開可能なイメージ タイプにタグベースの制限を指定します。イメージ マッピングの構成を作成または編集するときに表示される、提供される [制約] の例は、!license:none:hard です。この例では、タグベースの制限が示されています。これは、クラウド テンプレートに license:none タグが表示されない場合にのみ、イメージを使用できることを示しています。license:88license:92 などのタグを追加すると、license:88 および license:92 タグがクラウド テンプレート内に含まれている場合にのみ、指定されたイメージを使用できます。

前述のイメージ マッピング制約の例の図

クラウド設定スクリプトを使用した展開の制御

イメージ マップとクラウド テンプレートのどちらかまたはその両方でクラウド設定スクリプトを使用して、Cloud Assembly 展開で使用するカスタムの OS 特性を定義できます。たとえば、クラウド テンプレートをパブリック クラウドまたはプライベート クラウドのどちらに展開するかに応じて、特定のユーザー権限、OS 権限、またはその他の条件をイメージに適用することができます。クラウド設定スクリプトは、Linux ベースのイメージの場合は cloud-init、Windows ベースのイメージの場合は cloudbase-init の形式になります。Cloud Assembly は、Linux システム用の cloud-init ツールと Windows 用の cloudbase-init ツールをサポートしています。

Windows マシンの場合、cloudbase-init でサポートされている任意のクラウド設定スクリプト形式を使用できます。

次のサンプル クラウド テンプレート コードのマシン リソースは、クラウド設定スクリプトを含むイメージを使用しており、その内容が image エントリに表示されます。
resources:
  demo-machine:
    type: Cloud.vSphere.Machine
    properties:
      flavor: small
      image: MyUbuntu16 
        https://cloud-images.ubuntu.com/releases/16.04/release-20170307/ami-ubuntu-16.04-1.10.3-00-15269239.ova
      cloudConfig: |
        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'
        runcmd:
          - echo "Defaults:${input.username}  !requiretty" >> /etc/sudoers.d/${input.username}

クラウド テンプレートのコードでは、イメージ マッピングとして定義されているイメージを参照するには image 設定を使用します。スナップショット(リンク クローンの場合)、イメージ テンプレート、またはコンテンツ ライブラリ テンプレート OVF を含むテンプレートを特定するには、imageRef 設定を使用します。

イメージ マッピングとクラウド テンプレートにクラウド設定スクリプトが含まれている場合の動作

クラウド設定スクリプトを含むクラウド テンプレートがクラウド設定スクリプトを含むイメージ マッピングを使用する場合、両方のスクリプトが結合されます。このマージ動作では、スクリプトが #cloud-config の形式になっているかどうかを考慮しながら、まずイメージ マッピング スクリプトの内容、次にクラウド テンプレート スクリプトの内容が処理されます。

  • #cloud-config 形式のスクリプトの場合、マージでは各モジュールの内容(たとえば runcmduserswrite_files)が次のように結合されます。
    • 内容がリストであるモジュールの場合、イメージ マッピングのコマンドのリストとクラウド テンプレートのコマンドのリストがマージされ、両方のリストで同一であるコマンドが除外されます。
    • 内容がディクショナリであるモジュールの場合、コマンドはマージされ、結果は両方のディクショナリの組み合わせになります。両方のディクショナリに同じキーが存在する場合、イメージ マッピング スクリプト ディクショナリのキーは保持され、クラウド テンプレート スクリプト ディクショナリのキーは無視されます。
    • 内容が文字列であるモジュールの場合、イメージ マッピング スクリプトの内容値は保持され、クラウド テンプレート スクリプトの内容値は無視されます。
  • 両スクリプトの形式が #cloud-config 以外の場合、または片方のスクリプトが #cloud-config 形式でもう片方が別の形式の場合、両スクリプトの結合では、イメージ マッピング スクリプトが最初に実行され、イメージ マッピング スクリプトの終了後にクラウド テンプレート スクリプトが実行されます。

関連情報については、Merging user-data sectionsを参照してください。

vCenter コンテンツ ライブラリからのイメージの追加

ローカルまたは公開者のコンテンツ ライブラリの場所が、vRealize Automation Cloud 組織によって管理されている vCenter Server 内である場合、コンテンツ ライブラリのテンプレート イメージがイメージ ドロップダウン メニューに表示されます。表示されるイメージには、ローカルまたは公開者の vCenter Server コンテンツ ライブラリ内の OVF および仮想マシン テンプレート イメージも含まれます。サブスクライバ コンテンツ ライブラリ内のイメージは、ドロップダウン メニューに表示されません。仮想マシンのクローンを作成する元になったテンプレートが、マシン展開ユーザー インターフェイスの [マシンの詳細] セクションに表示されます。

イメージ名の前にライブラリ名が付き、スラッシュで区切られたライブラリ アイテムを示す画像

注:

公開者コンテンツ ライブラリの vCenter Server が vRealize Automation Cloud によって管理されている場合、公開者の情報がイメージ マッピングの選択グリッドに次の形式で表示されます。publisher_content_library_name / content_item_name

コンテンツ ライブラリに権限を割り当てるには、管理者が権限をグローバル権限としてユーザーに付与する必要があります。関連情報については、VMware vSphere のドキュメントで、『vSphere 仮想マシン管理』のコンテンツ ライブラリの権限の階層的な継承を参照してください。

公開者コンテンツ ライブラリの vCenter Server が vRealize Automation Cloud によって管理されていない場合、サブスクライバの情報がイメージ マッピングの選択グリッドに次の形式で表示されます。subscriber_content_library_name / content_item_name

仮想マシン テンプレート イメージ マッピングを含むクラウド テンプレートを展開すると、vRealize Automation Cloud は、プロビジョニングするマシンのデータストアに最も近いコンテンツ ライブラリ内で、マッピングされたイメージへのアクセスを試みます。次に、そのマシンのホストに最も近いコンテンツ ライブラリ内でアクセスを試みます。これには、ローカルのコンテンツ ライブラリに加えて、公開者またはサブスクライバのコンテンツ ライブラリも含まれます。

OVF テンプレート イメージ マッピングを含むクラウド テンプレートを展開すると、OVF イメージがローカル コンテンツ ライブラリにある場合、または指定されたリモート公開者コンテンツ ライブラリのローカル サブスクライバにある場合、そのイメージはイメージ マッピング行で指定された方法でアクセスされます。

vCenter コンテンツ ライブラリの作成と使用に関する情報については、VMware vSphere のドキュメントコンテンツ ライブラリの使用およびブログ記事How to Use Content Libraries in vRealize Automation 8 and vRealize Automation Cloudを参照してください。

クラウド構成スクリプトの設定と使用に関する詳細情報

クラウド テンプレートでのクラウド構成スクリプトの使用方法については、Cloud Assembly でのマシンの初期化を参照してください。

また、VMware ブログ記事のvSphere Customization with Cloud-init While Using vRealize Automation 8 or CloudCustomizing Cloud Assembly Deployments with Cloud-Initも参照してください。