Terraform と Infrastructure Manager

Infrastructure Manager(Infra Manager)を使用するには、Terraform に精通している必要があります。Terraform の詳細については、Terraform とはをご覧ください。

Infra Manager は、Terraform 構成で定義されたインフラストラクチャ リソースと構成をデプロイします。これらの構成は複数のファイルとディレクトリで構成できますが、エントリ ポイントは Terraform ルート モジュールである必要があります。

Infra Manager では、Terraform 構成を指す用語として「ブループリント」を使用します。

Google Cloudでの Terraform の詳細については、 Google Cloudでの Terraform をご覧ください。

Google Cloud用の Terraform モジュール

Google Cloud リソースをプロビジョニングするモジュールのセットについては、Google Cloud 用の Terraform ブループリントとモジュールをご覧ください。

Google Cloud用に独自の Terraform モジュールを作成することもできます。詳細については、モジュールの作成をご覧ください。

サポートされている Terraform のバージョン

Infra Manager は、次の Terraform バージョンをサポートしています。

  • Terraform バージョン 1.2.3
  • Terraform バージョン 1.3.10
  • Terraform バージョン 1.4.7
  • Terraform バージョン 1.5.7

フラグ --tf-version-constraint を使用して、Infra Manager がデプロイを作成するために使用する Terraform のバージョンを指定できます。

Terraform のバージョンを指定しない場合は、デフォルトで最新のサポート バージョンが使用されます。

デプロイを更新するときに、Terraform のバージョンを新しいバージョンの Terraform に変更できます。以前のサポート対象バージョンの Terraform に変更することはできません。

特定のデプロイまたはリビジョンの作成に使用された Terraform のバージョンを表示するには、デプロイの詳細を表示するリビジョンの詳細を表示するをご覧ください。

Terraform 構成の制約

Infrastructure Manager を使用して Terraform 構成をデプロイするには、構成に次の制約があります。

Terraform 構成値と機密データ

Terraform 構成値に個人情報や機密情報を含めないでください。

Google Cloud プロバイダのドキュメントには、機密情報が含まれる可能性のある構成値が記載されています。

たとえば、リソース google_storage_bucket_object では、content 引数を使用して Cloud Storage オブジェクトを作成できます。この引数は、google_storage_bucket_object ページの Google Cloud プロバイダ ドキュメントで機密情報としてラベル付けされています。

これらのラベルは、Terraform 構成を作成するときや、既存の Terraform 構成を使用前に確認するときに役立ちます。

クラウド サービスの提供と管理の際に Google Cloud が収集または生成する個人情報の処理方法については、Google Cloud プライバシーに関するお知らせをご覧ください。

Google Cloudの Terraform プロバイダを使用する

デプロイとプレビューを構成して、 Google Cloud用の Infra Manager で管理されている Terraform プロバイダを使用できます。

この省略可能なフィールドでは、Infra Manager で管理されている Terraform プロバイダを使用して、デプロイまたはプレビュー デプロイを作成または更新するかどうかを指定できます。Terraform プロバイダは、gcloud CLI を使用して指定できます。

Infra Manager は、 Google Cloudの Terraform プロバイダをサポートしています。

  • google
  • google-beta

HashiCorp が管理する Google Cloud用の Terraform プロバイダを使用する場合は、このフィールドを省略します。

Infra Manager で管理されている Terraform プロバイダの使用を指定する方法については、Infrastructure Manager を使用してインフラストラクチャをデプロイするデプロイを更新するデプロイをプレビューするをご覧ください。

プロバイダのサポートされているバージョンを確認する

Infra Manager がサポートする Google Cloud の Terraform プロバイダのバージョンを確認するには、Infra Manager が管理する Cloud Storage バケットの manifest.json を、次の形式で表示する必要があります。デプロイのリージョンに関連付けられている

https://storage.googleapis.com/LOCATION-im-providers/hashicorp/PROVIDER_VERSION/manifest.json

サポートされているバージョンの完全なリストは、manifest.json ファイルの versions フィールドで確認できます。

たとえば、デプロイが africa-south1 リージョンにあり、google-beta プロバイダを使用している場合は、https://storage.googleapis.com/africa-south1-im-providers/hashicorp/google-beta/manifest.json に移動して、使用可能なリージョンを表示します。

次のステップ