イメージ マッピングでは、自然言語による名前付けを使用して、VMware Aria Automation での特定のクラウド アカウントとリージョンに対する一連の事前定義済みのターゲット オペレーティング システム仕様をグループ化します。
Microsoft Azure や Amazon Web Services などのクラウド ベンダー アカウントは、イメージを使用して、OS や関連する設定などの一連のターゲットの展開条件をグループ化します。vCenter や VMware Cloud on AWS などの NSX ベースの環境では、同様のグループ分けメカニズムを使用して、一連の OS 展開条件を定義します。テンプレートをビルドし、最終的に展開して、繰り返し使用する場合は、ニーズに最も適した使用可能なイメージを選択します。
プロジェクトのイメージ マッピングは、同様のオペレーティング システム設定、タグ付け方法、および機能展開の目的に合わせて編成します。
テンプレートの作成を簡素化するために、新しいクラウド アカウントを追加するときに事前構成オプションを選択できます。事前構成オプションを選択すると、指定されたリージョンに対する組織で最も一般的なフレーバー マッピングとイメージ マッピングが選択されます。
テンプレートにイメージ情報を追加する場合は、マシン コンポーネントの properties
セクションの image
または imageRef
のどちらかのエントリを使用します。たとえば、スナップショットからクローンを作成する場合は、imageRef
プロパティを使用します。
テンプレート コードの image
および imageRef
エントリの例については、Automation Assembler 展開の設計を参照してください。
コンテンツ ライブラリに権限を割り当てるには、管理者が権限をグローバル権限としてユーザーに付与する必要があります。関連情報については、VMware vSphere のドキュメントで、『vSphere 仮想マシン管理』のコンテンツ ライブラリの権限の階層的な継承を参照してください。
複数のリージョンへのイメージ マッピングの適用
イメージ マッピングは、複数のリージョンのクラウド アカウントに適用できます。イメージ マッピング ユーザー インターフェイスを使用して、アカウント タイプ(AWS や Azure など)を基準としてクラウド アカウントをフィルタおよび検索し、複数のリージョン内のこのクラウド アカウント タイプに同時に適用するイメージを選択します。たとえば、1 つ以上の特定の AWS AMI リージョン内のすべての AWS クラウド アカウントですべての ubuntu20 イメージが使用可能になるように指定できます。この機能を使用すると、一度に 1 つ以上のリージョンのイメージ マッピングを表示、編集、および削除することもできます。
- 構成可能なクラウド アカウントとリージョンを複数のプロパティ(アカウント タイプ、リージョン名など)で検索して、フィルタします。
- 検索フィルタの結果に基づいて、イメージ マッピングを適用するリージョンを選択および選択解除します。
- 更新されたイメージ マッピングを複数のリージョンに同時に適用します。
グループ化されていないイメージ マッピングを表示するには、[フィルタ] ドロップダウン メニューで [グループ解除表示] を選択します。
[グループ解除表示] オプションを選択すると、名前またはリージョンでグループ化されていないすべてのイメージ マッピングが表示されます。
グループ化されていないページのすべてのアイテムを選択すると、すべてのページのすべてのアイテムを選択できる情報ラベルが表示されます。
選択したイメージ マッピングは編集または削除できます。[マッピングの編集] メニューの例が表示されます。
選択シナリオによっては、一部の編集オプションが使用できない場合があることに注意してください。たとえば、複数のクラウド アカウント タイプを選択した場合は、クラウド アカウント タイプに共通のイメージがないため、([マッピングの編集] メニューで)イメージを編集することはできません。次の表を使用して、選択したアイテムのイメージを([マッピングの編集] メニューで)編集できるかどうかを判断してください。
クラウド アカウント/リージョンのイメージの同期
- Automation Assembler で を選択して、関連付けられている [クラウド アカウント/リージョン] を開きます。
- 既存のクラウド アカウント/リージョンを選択します。
- [イメージの同期] ボタンをクリックして、アクションを完了させます。
- アクションが完了したら、 をクリックします。
- イメージ マッピングを新しく定義するか、既存のものを編集して、手順 1 のクラウド アカウント/リージョンを選択します。
- [イメージ マッピング] ページのイメージ同期アイコンをクリックします。
- [イメージ マッピング] ページで、指定されたクラウド アカウント/リージョンのイメージ マッピングを構成します。
OVF 詳細の表示
vCenter Server マシン コンポーネントやイメージ マップなど、OVF 仕様を Automation Assembler クラウド テンプレート オブジェクトに含めることができます。イメージに OVF ファイルが含まれている場合は、ファイルを開かずにそのコンテンツを見つけることができます。OVF の詳細を表示 オプションの上にマウスを移動すると、名前と場所を含む OVF の詳細が表示されます。OVF ファイル フォーマットの詳細については、vcenter ovf: propertyを参照してください。OVF の詳細を表示するには、イメージ マッピングが Web サーバに存在する必要があります。
マッピング フィールドで 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 形式のスクリプトの場合、マージでは各モジュールの内容(たとえば
runcmd
、users
、write_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
- 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も参照してください。