Infrastructure Manager(Infra Manager)を使用するには、Terraform に精通している必要があります。Terraform の詳細については、HashiCorp の 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
を使用して、Infrastructure Manager がデプロイメントの作成に使用する Terraform のバージョンを指定できます。
Terraform のバージョンを指定しない場合は、デフォルトで最新のサポート バージョンが使用されます。
デプロイメントを更新するときに、Terraform のバージョンを新しいバージョンの Terraform に変更できます。以前のサポート対象バージョンの Terraform に変更することはできません。
特定のデプロイまたはリビジョンの作成に使用された Terraform のバージョンを表示するには、デプロイの詳細を表示するとリビジョンの詳細を表示するをご覧ください。
Terraform 構成の制約
Infrastructure Manager を使用して Terraform 構成をデプロイするには、構成に次の制約があります。
- Terraform 構成値に個人情報や機密情報を含めないでください。詳細については、次のセクションの Terraform 構成値と機密データをご覧ください。
- 有効な Terraform ルート モジュールを指定する必要があります。Terraform のテンプレート化または生成はサポートされていません。
- 構成は、サポートされているバージョンの Terraform でアクチュエートできる必要があります。
- バックエンド ブロックは定義しないでください。
- プロビジョナーの使用はおすすめしません。可能であれば、別のソリューションを使用してください。プロビジョナーの詳細については、プロビジョナーは最後の手段ですをご覧ください。プロビジョナーを使用している場合、Infra Manager ランタイム環境はいつでも変更される可能性があることに注意してください。
Terraform 構成値と機密データ
Terraform 構成値に個人情報や機密情報を含めないでください。
Google Cloud プロバイダのドキュメントでは、機密情報が含まれる可能性がある構成値を示しています。
たとえば、リソース google_storage_bucket_object
を使用すると、content
引数を使用して Cloud Storage オブジェクトを作成できます。この引数は、google_storage_bucket_object
Google Cloud プロバイダのドキュメントのページで機密情報としてラベル付けされています。
これらのラベルは、Terraform 構成を作成する際や、使用前に既存の Terraform 構成を確認する際に役立ちます。
Google Cloud が、Cloud サービスのプロビジョニングと管理中に収集または生成する個人情報を処理する方法については、Google Cloud プライバシーに関するお知らせをご覧ください。
次のステップ
- 詳しくは、Infrastructure Manager をご覧ください。
- デプロイを作成する。
- デプロイメントを更新する。
- デプロイの状態を表示する。
- デプロイメントを削除する。