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

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

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

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

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

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

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

複数のリージョンへのイメージ マッピングの適用

イメージ マッピングは、複数のリージョンのクラウド アカウントに適用できます。イメージ マッピング ユーザー インターフェイスを使用して、アカウント タイプ(AWS や Azure など)を基準としてクラウド アカウントをフィルタおよび検索し、複数のリージョン内のこのクラウド アカウント タイプに同時に適用するイメージを選択します。たとえば、1 つ以上の特定の AWS AMI リージョン内のすべての AWS クラウド アカウントですべての ubuntu20 イメージが使用可能になるように指定できます。この機能を使用すると、一度に 1 つ以上のリージョンのイメージ マッピングを表示、編集、および削除することもできます。

  • 構成可能なクラウド アカウントとリージョンを複数のプロパティ(アカウント タイプ、リージョン名など)で検索して、フィルタします。
  • 検索フィルタの結果に基づいて、イメージ マッピングを適用するリージョンを選択および選択解除します。
  • 更新されたイメージ マッピングを複数のリージョンに同時に適用します。

グループ化されていないイメージ マッピングを表示するには、[フィルタ] ドロップダウン メニューで [グループ解除表示] を選択します。

グループ解除されたイメージ

[グループ解除表示] オプションを選択すると、名前またはリージョンでグループ化されていないすべてのイメージ マッピングが表示されます。

グループ化されていないすべてのイメージ マッピングのサンプル ページ

グループ化されていないページのすべてのアイテムを選択すると、すべてのページのすべてのアイテムを選択できる情報ラベルが表示されます。

リージョン us-east-1 のすべてのイメージ マッピングが選択されています

選択したイメージ マッピングは編集または削除できます。[マッピングの編集] メニューの例が表示されます。

[イメージ マッピングの編集] メニューで示されているイメージ フィールド

選択シナリオによっては、一部の編集オプションが使用できない場合があることに注意してください。たとえば、複数のクラウド アカウント タイプを選択した場合は、クラウド アカウント タイプに共通のイメージがないため、([マッピングの編集] メニューで)イメージを編集することはできません。次の表を使用して、選択したアイテムのイメージを([マッピングの編集] メニューで)編集できるかどうかを判断してください。

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

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

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

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

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

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

OVF 詳細の表示

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

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

注: テンプレートからプロビジョニングするときに、 vCenter Server またはコンテンツ ライブラリ内のイメージの OVF プロパティを使用することはできません。OVF が vCenter に直接ホストされている場合、「 OVF の詳細を表示」オプションは表示されないか、使用できません。 OVF の詳細を表示 オプションは、コンテンツ ライブラリ内のイメージには使用できません。

マッピング フィールドで OVF リンクを使用して OVF の詳細を表示する方法の関連情報については、外部の記事OVA からのクラウド テンプレートを参照してください。

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

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

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

制約とタグの使用によるイメージに適したコンピューティングの選択

イメージ制約を使用し、コンピューティングのタグに基づいて適切なコンピューティングを選択できます。たとえば、特定のイメージに tag1 制約があり、割り当て中にイメージが選択される場合は、プロビジョニングするマシンを配置するためにタグ tag1 が付いたコンピューティングが選択されます。このようなコンピューティングがない場合、マシンの割り当ては失敗します。

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

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

動的プロパティ評価は、テンプレートで cloudConfig を直接使用する場合には機能しますが、イメージ マップ内の cloudConfig ではサポートされません。

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

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

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

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

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

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

注:

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

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

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

たとえば、次のシナリオでは、サブスクライバ コンテンツ ライブラリ アイテムのみが VMware Aria Automation イメージ マッピング リストに表示されます。
  • VC-1 という名前の vCenter Server に、サブスクライバ コンテンツ ライブラリがあり、クラウド アカウントは VC-1 に関連付けられた VMware Aria Automation に作成されます。
  • VC-2 という名前の vCenter Server に、公開者コンテンツ ライブラリがあり、VC-1 のサブスクライバ コンテンツ ライブラリはここからサブスクライブされています。ただし、VC-2 に関連付けられているクラウド アカウントは VMware Aria Automation にありません。

    VC-1 は VMware Aria Automation クラウドアカウントに関連付けられているため、サブスクライバ コンテンツ ライブラリは VMware Aria Automation で使用できます。そのコンテンツは収集され、VMware Aria Automation イメージ マッピング リストに表示されます。しかし、VC-2 はクラウド アカウントに関連付けられていないため、VMware Aria Automation には公開者コンテンツ ライブラリの情報はありません。イメージ マッピング リストに公開者コンテンツ ライブラリ アイテムを表示するには、クラウド アカウントを VC-2 vCenter Server に関連付ける必要があります。

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

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

vCenter Server コンテンツ ライブラリの作成と使用に関する情報については、vSphere 製品ドキュメントコンテンツ ライブラリの使用および VMware ブログ記事How to Use Content LibrariesおよびManage templates with vSphere content libraryを参照してください。

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

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

VMware ブログ記事vSphere Customization with Cloud-initおよびCustomizing Deployments with Cloud-Initも参照してください。