2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Gakken LEAPAdvent Calendar 2024

Day 25

HCP TerraformでGoogle Cloudのクレデンシャルを設定する方法

Last updated at Posted at 2024-12-24

はじめに

どうも、@to-fmakです。最近のプロジェクトでは、HCP Terraformを使ってGoogle Cloud上にインフラリソースを構築する機会がありましたので、今回はHCP TerraformでのGoogle Cloudのクレデンシャル設定方法について簡単に共有したいと思います。

サービスアカウントの作成

まずTerraform用のサービスアカウントを作成します。「IAM」->「サービスアカウント」のコンソールを開き、「サービスアカウントを作成」をクリックします。

Screenshot 2024-12-24 at 11.49.32.png

サービスアカウント名を入力し、必要なロールを割り当てます。

クレデンシャルの発行

作成したサービスアカウントを開き、「鍵」タグから「キーを追加」をクリックします。

「キーのタイプ」で「JSON」を選択し、「作成」をクリックします。

Screenshot 2024-12-24 at 12.09.28.png

作成後、JSON形式のクレデンシャルファイルが自動ダウンロードされます。(このファイルは安全に保管してください)

HCP Terraform変数の作成

HCP Terraform では、クレデンシャル情報をWorkspace VariablesまたはVariable Setsに設定できます。今回はシンプルな例として、Workspace Variablesを使用する手順を紹介します。

HCP Terraformで対象Workspaceの「Variables」を開き、「Workspace variables」の「Add variable」をクリックします。

以下の内容で変数を設定します。

  • Key: GOOGLE_CREDENTIALS(TerraformのGoogle Providerが参照する変数名)
  • Value: 前ステップで発行したJSONクレデンシャルファイルの内容をそのまま貼り付ける
  • Sensitive: チェックを入れる(値が非表示になり、後から読み取ることはできなくなる)

image.png

Terraformコード内でこの変数を利用するよう設定します。

main.tf
provider "google" {
  credentials = var.GOOGLE_CREDENTIALS
  project     = var.project_id
  region      = var.region
}

注意点

  • クレデンシャル情報を管理する際は、セキュリティに十分注意してください
  • 必要に応じてサービスアカウントの権限を最小限に設定してください

参考URL

エンジニア募集

Gakken LEAP では教育をアップデートしていきたいエンジニアを絶賛大募集しています!!
ぜひお気軽にカジュアル面談へお越しください!!

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?