通常、割り当て設定は各リソースに統合されます。ただし、割り当ては、ヘルパーの形でリソースから分離できます。ヘルパーは、リソースとゾーン化およびプロファイル化されたインフラストラクチャとの間のブリッジとして機能します。

ヘルパーは 1 対多で設定でき、1 つのヘルパーで複数のリソースに対してゾーン配置などの割り当てロジックを提供できます。そのうえで、クラウド プロバイダで定義され、関連付けられたプラグインでサポートされる全プロパティのリストに従ってリソースを細かくカスタマイズします。

図 1. クラウド プロバイダのネイティブ プロパティ
クラウド プロバイダのプロパティ。

プロパティはクラウド プロバイダ側から提供されるため、デザイン キャンバスで割り当てヘルパーが操作できるのはベンダー固有のプロパティのみです。クラウドに依存しないデザインでは割り当てヘルパーを使用できません。クラウドに依存しないテンプレートが必要な場合は、クラウドに依存しないリソース要素と従来のリソース内での割り当て方法を引き続き使用してください。

割り当てヘルパーは Avi Load Balancer リソース、Terraform リソース、およびカスタム リソースで使用できます。

使用可能な割り当てヘルパー

ヘルパーには次の割り当て機能があります。

  • クラウド ゾーン ヘルパー

    アカウント タイプと制約タグに基づいて、プロビジョニング用のアカウントとゾーンを選択します。また、プロジェクトに設定されたプロビジョニングの優先順位も解決します。

  • カスタム命名ヘルパー

    リソースのカスタム名を生成します。

割り当てヘルパーのプロパティは、コード エディタで表示できます。また、割り当てヘルパーのプロパティは、[展開] 画面で最近の展開を開き、右側のペインを開いても表示できます。

従来のリソース

Automation Assembler の左側のメニューでは、以前のデザイン リソースに (Classic) というラベルが表示されます。割り当てヘルパーは Avi Load Balancer リソース、Terraform リソース、およびカスタム リソースで使用できますが、従来のリソースでは使用できません。

テンプレートにはこれまでどおり従来のリソースを追加できます。また、従来のリソースとテンプレートの間、およびヘルパーを使用するリソースの間に依存関係を設定することもできます。

デザイン方法

  1. [インフラストラクチャ] で、これまでと同じ方法でアカウント、ゾーン、プロジェクト、マッピング、プロファイル、および機能タグを追加します。
  2. デザイン キャンバスに割り当てヘルパーをドラッグします。
  3. 従来のリソース以外のリソースをドラッグします。
  4. ヘルパーにバインドを追加します。

    コード エディタでプロパティ バインドを手動で記述することも、キャンバス内で割り当てヘルパーを非従来型のリソースに接続することもできます。

  5. コード エディタで、割り当てヘルパーと非従来型のリソースを構成します。

割り当てヘルパーからリソースへのリンク

割り当てヘルパーをリソースにリンクすると、コード エディタで次のプロパティ バインドが自動的に作成されます。

  • Allocations.CloudZone
    • Avi Load Balancer リソース:accountcloud_reftenant_ref

ユーザー入力

ユーザー入力をヘルパーに送信する方法は、ユーザー入力を従来のリソースに直接送信する方法と同じです。

inputs: 
  my-image:
    type: string
    enum:
      - coreos
      - ubuntu
resources:
  Allocations_Image_1:
    type: Allocations.Image
    properties:
      accountType: aws
      image: '${input.my-image}'

ユーザー入力の詳細については、「VMware Aria Automation 申請でのユーザー入力」を参照してください。