よっしー
こんにちは。よっしーです(^^)
今日は、TerraformでGCPのリソース作成について解説しています。
背景
下記のサイトを参考に実施したときの内容を自身のGCPプロジェクトに適用したときの内容を備忘として残しました。
実施内容
下記の手順で実施しました。
mkdir `作業ディレクトリ`
cd `作業ディレクトリ`
# terraformのバージョン指定
asdf local terraform 1.9.2
# terraformのバージョン確認
terraform --version
asdf local gcloud 482.0.0
asdf local python 3.12.4
# gcloudのバージョン確認
gcloud --version
# 操作アカウントの設定
gcloud config set account `アカウント`
# 操作アカウントの確認
gcloud config get-value account
# プロジェクト新規作成
gcloud projects create `プロジェクト`
# プロジェクトの情報確認
gcloud projects describe `プロジェクト`
# 請求先アカウントの確認
gcloud beta billing accounts list
# 請求先アカウントのリンク
gcloud beta billing projects link `プロジェクト` --billing-account=`請求先アカウント`
# tfファイル作成
touch main.tf
% cat main.tf
terraform {
required_providers {
google = {
source = "hashicorp/google"
}
}
}
provider "google" {
project = "プロジェクト"
region = "us-west1"
zone = "us-west1-c"
}
resource "google_compute_network" "vpc_network" {
name = "terraform-network"
}
# 初期化
terraform init
# 実行プランの作成
terraform plan
# 変更を適用
terraform apply
# 状態ファイルの確認
terraform show
# リソースの破棄
terraform destroy
解説
main.tf
このTerraformコードは、Google Cloud Platform (GCP)上にVirtual Private Cloud (VPC)ネットワークを作成するための設定を定義しています。以下、各セクションの解説です:
terraform
ブロック:
- 使用するプロバイダーを指定します。
- ここでは、GoogleクラウドプロバイダーのバージョンR3.5.0を使用することを指定しています。
provider "google"
ブロック:
- GCPプロバイダーの設定を行います。
project
: 使用するGCPプロジェクトIDを指定します。region
: リソースを作成するデフォルトのリージョン(”us-west1″)を設定します。zone
: リソースを作成するデフォルトのゾーン(”us-west1-c”)を設定します。
resource "google_compute_network" "vpc_network"
ブロック:
- GCP上にVPCネットワークリソースを作成します。
name
: 作成するVPCネットワークの名前を”terraform-network”と指定しています。
このコードを実行すると、指定されたGCPプロジェクト内に”terraform-network”という名前のVPCネットワークが作成されます。
おわりに
今日は、 TerraformでGCPのリソース作成について解説しました。
よっしー
何か質問や相談があれば、コメントをお願いします。また、エンジニア案件の相談にも随時対応していますので、お気軽にお問い合わせください。
それでは、また明日お会いしましょう(^^)
コメント