Cloud Assembly テンプレートに Terraform 構成を追加する前に、バージョン管理リポジトリのセットアップと統合を実行します。

  1. Terraform ランタイム環境について
  2. バージョン管理リポジトリへの Terraform 構成ファイルの保存
  3. クラウド ゾーン マッピングの有効化
  4. リポジトリと Cloud Assembly の統合

Terraform ランタイム環境について

Terraform 構成を含むデザインでは、Terraform ランタイム環境にアクセスできることが必須になります。ランタイム環境は、Terraform CLI コマンドを実行することで要求された操作を実行する Kubernetes クラスタで構成されています。また、ランタイムはログを収集し、Terraform CLI コマンドの結果を返します。

vRealize Automation Cloud ホスト サービスは、ユーザーには変更できない独自の事前構成済み Kubernetes クラスタを使用します。

バージョン管理リポジトリへの Terraform 構成ファイルの保存

Cloud Assembly では、Terraform 構成に対して次のバージョン管理リポジトリをサポートしています。

  • GitHub クラウド
  • GitLab クラウド

バージョン管理リポジトリで、Terraform 構成ファイルが格納されたサブディレクトリを 1 レイヤーに含むデフォルトのディレクトリを作成します。Terraform 構成ごとに 1 つのサブディレクトリを作成します。

  1. デフォルト ディレクトリ
  2. 単一のサブディレクトリ レイヤー
  3. 展開対応の Terraform 構成ファイル

    Terraform 構成ファイルには、状態ファイルを含めないでください。terraform.tfstate が存在する場合、展開中にエラーが発生します。

リポジトリのディレクトリ構造

クラウド ゾーン マッピングの有効化

クラウド アカウントに展開する場合は、Terraform ランタイム エンジンにクラウド ゾーンの認証情報が必要です。

プロジェクトの [プロビジョニング] タブで、[Terraform のクラウド ゾーン マッピングを許可] を有効にします。

Terraform のクラウド ゾーン マッピングが有効

認証情報が安全に転送される場合でも、プロジェクト ユーザーがクラウド アカウントへの展開を必要としていない場合は、セキュリティの強化のため、このオプションを無効のままにする必要があります。

リポジトリと Cloud Assembly の統合

Cloud Assembly で、[インフラストラクチャ] > [接続] > [統合] に移動します。

Terraform 構成を保存したリポジトリ サービス タイプ(GitHub または GitLab)に統合を追加します。

統合にプロジェクトを追加する場合は、[Terraform 構成] タイプを選択し、リポジトリとブランチを特定します。

[フォルダ] は、以前の構造のデフォルト ディレクトリです。

Terraform のリポジトリ統合