Google Cloud PR

【Terraform】Google Cloudのサービスアカウントの作成方法

【Terraform】Google Cloudのサービスアカウントの作成方法
記事内に商品プロモーションを含む場合があります

データ周りのお仕事をしています!モリヤス(@_moriyas)です!

最近「Google Cloud × Terraform」の学習をしております。

今回はTerraformでGoogle Cloudのサービスアカウントの作成をしていきたいと思います!

環境

  • Mac OS(Intel)
  • Terraform v1.7.3

Terraformgcloud CLIのインストール、Google Cloudのプロジェクトの作成は完了している前提の記事になります。

コード

今回の検証用のフォルダ(「my_blog_analysis」とします)の中に下記のファイルを作成します。

terraform {
  required_version = "1.7.3"
  required_providers {
    google = {
      source  = "hashicorp/google"
      version = ">= 5.40"
    }
  }
}

provider "google" {
  project = var.project_id
  region  = var.region
}

resource "google_service_account" "dbt_runner" {
  account_id   = "my-blog-analysis-sa"
  display_name = "my_blog_analysis用のService Account"
}

variable "project_id" {
  description = "Google CloudのProject ID"
  type        = string
}

variable "region" {
  description = "Google Cloudのregion"
  type        = string
  default     = "asia-northeast1"
}

project_id  = "project-id"
region      = "asia-northeast1"

※ご自身で作成したのGoogle Cloudのプロジェクトのproject_idやregionを設定してください。

上記で準備はOKです。

コマンド実行

では「my_blog_analysis」フォルダで、下記のコマンドを実行してみます。

terraform init

下記のように「Terraform has been successfully initialized!」と表示されればTerraformのプロジェクトの初期化が完了です。

続いて、コードのフォーマットを整えるために下記のコマンドを実行します。(上記コピペしているのであればおそらく差分はないはずですが、念の為!)

terraform fmt -recursive

次に下記のコマンドで.tfファイルの設定を反映してサービスアカウントを作成してみます。

terraform apply

すると下記の画像のようなメッセージが表示され

Do you want to perform these actions?」と聞かれるので、「Enter a value:」に「yes」と入力してEnterを押します。

下の画像のように「Apply complete! Resources: 1 added. changed. 0 destroved.」となっていれば成功しているはずです。

Google Cloud上で確認

実際にGoogle Cloudの設定してプロジェクトにサービスアカウントが作成されているかを確認したところ、しっかりと作成されているのが確認できました。