Trusted Cloud リソースを操作するときのベスト プラクティス
Terraform を使用して Trusted Cloud リソースをプロビジョニングするためのベスト プラクティスは、Google が管理する Cloud Foundation Toolkit モジュールに統合されています。このドキュメントでは、これらのベスト プラクティスについて説明します。
このガイドでは Terraform の概要は説明しません。 Trusted Cloud by S3NSで Terraform を使用する方法については、Terraform を使ってみるをご覧ください。
仮想マシンイメージをベイクする
通常は、Packer などのツールを使用して仮想マシンイメージをベイクすることをおすすめします。Terraform で必要なのは、事前に作成したイメージを使用してマシンを起動するだけです。
事前にベイクされたイメージが使用できない場合、Terraform は provisioner
ブロックを使用して、構成管理ツールに新しい仮想マシンを渡すことができます。この方法はおすすめしません。最後の手段としてのみ使用してください。インスタンスに関連付けられた古い状態をクリーンアップするには、破棄ロジックを必要とするプロビジョナが when = destroy
で provisioner
ブロックを使用する必要があります。
Terraform は、インスタンス メタデータを使用して VM 構成情報を構成管理に提供する必要があります。
Identity and Access Management を管理する
Terraform と IAM の関連付けをプロビジョニングする場合、いくつかのリソースを使用できます。
google_*_iam_policy
(例: google_project_iam_policy
)
google_*_iam_binding
(例: google_project_iam_binding
)
google_*_iam_member
(例: google_project_iam_member
)
google_*_iam_policy
と google_*_iam_binding
は、信頼できる IAM の関連付けを作成します。ここでは、Terraform リソースが、関連するリソースに割り当てることができる権限の唯一の正確な情報源として機能します。
Terraform の外部で権限が変更された場合、Terraform は次回の実行時にすべての権限を上書きし、構成で定義されているポリシーを反映します。これは、特定の Terraform 構成によって完全に管理されているリソースには適していますが、 Trusted Cloud によって自動的に管理されるロールが削除されることや、一部のサービスの機能が停止する可能性があります。
これを防ぐには、google_*_iam_member
リソースを直接使用するか、Google の IAM モジュールを使用することをおすすめします。
次のステップ
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-08-08 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-08-08 UTC。"],[[["This guide reiterates best practices for provisioning Google Cloud resources with Terraform, as integrated into the Cloud Foundation Toolkit modules."],["It's recommended to use pre-baked virtual machine images with tools like Packer, and only utilize Terraform provisioners as a last resort."],["Terraform should provide VM configuration information to configuration management through instance metadata."],["When managing IAM, using `google_*_iam_member` resources or the Google IAM module is preferable to prevent overwriting automatically managed roles."],["Authoritative IAM resources like `google_*_iam_policy` and `google_*_iam_binding` are not ideal for resources that have roles that are automatically managed by Google Cloud."]]],[]]