リソースをプロビジョニングします
TerraformまたはTerragruntを使用して、リソースをプロビジョニングできます。Terraformを使用する場合は、各ディレクトリで規定の順序で構成を適用する必要があります。Terragruntを使用すると、すべてのリソースを単一コマンドでプロビジョニングできます。
Terraform状態ファイルについて
Terraformには、管理インフラストラクチャ・リソースを追跡し、デプロイされたリソースを構成にマップし、メタデータを追跡し、大規模なインフラストラクチャ・デプロイメントのパフォーマンスを向上させるために、状態情報が格納されます。
デフォルトでは、terraform.tfstate
ファイルはローカル・ホストに格納されます。このデフォルトの動作は、複数のユーザーが特定の構成で定義されているリソースを作成および破棄する必要があるIT環境では最適ではありません。マルチ・ユーザー環境でのリソースのデプロイおよび管理を制御するには、Terraform状態ファイルをOracle Cloud Infrastructure Object Storageに格納し、すべてのユーザー間で状態ファイルおよびロック・ファイルを共有します。「Terraform状態ファイルのオブジェクト・ストアの使用」を参照してください。
Terragruntを使用したリソースのプロビジョニング
単一のコマンドを使用して、トポロジ内のすべてのリソースをプロビジョニングする場合にTerragruntを使用できます。内部では、TerragruntはTerraformコマンドを呼び出し、構成に定義されているすべてのリソース間の依存関係を処理します。
Terraformを使用したリソースのプロビジョニング
Terraformを使用してリソースをプロビジョニングする場合、規定の順序で各ディレクトリにTerraform構成を個別に適用する必要があります。
トポロジの変更
トポロジを変更するには、適切なTerraform構成でリソース定義を更新してから、改訂した構成を適用する必要があります。変更する必要があるリソース定義を特定するには、サンプル・コード、特に各ディレクトリで参照されるTerraformモジュールおよびモジュール間の依存性を十分に理解する必要があります。
すべてのリソースの削除
TerraformまたはTerragruntを使用して、デプロイされているすべてのリソースを簡単に削除できます。
examples/full-deployment
ディレクトリに移動します。- 次のいずれかを行います。
- Terragruntがインストールされている場合は、次のコマンドを実行します。
terragrunt destroy-all
Terragruntは、構成内のリソースの
terraform destroy
コマンドを定義済みのシーケンスで呼び出します。terragrunt destroy-all
を使用して失敗したデプロイメントまたはその一部をクリーンアップしようとすると、次のエラーが発生する場合があります。Error: Unsupported attribute on management_rte_attachment.tf line 8, in module "management_rte_attachement": 8: data.terraform_remote_state.peering_servers.outputs.routing_instance_1_ip_id, |---------------- | data.terraform_remote_state.peering_servers.outputs is object with 3 attributes This object does not have an attribute named "routing_instance_1_ip_id".
このエラーが発生した場合は、次に説明するように、各構成ディレクトリで
terraform destroy
を実行してリソースを削除します。 - Terraform CLIを使用してリソースを削除するには、次の順序で
examples/full-deployment
の下の各構成ディレクトリでterraform destroy
を実行します。注意:
コマンドの実行が各ディレクトリで終了するまで待機してから、次のディレクトリに進みます。tenant/servers management/server_attachment management/servers peering/routing management/access tenant/network management/network peering/network common/compartments common/configuration
- Terragruntがインストールされている場合は、次のコマンドを実行します。