terraformでGCPにGAEをたててみる

Development

お仕事でterraformを使うことになったので、自分でも勉強をかねてterraform環境を立ち上げてみました。

今回はterraformを使ってGCPにGAEを立ててみます。

CloudSDKのインストール

CloudSDKはGCPのgcloudコマンドを利用したりするのに必要なツールってイメージで良いかと思います。

terraformでGCPのリソースを操作したくても、このツールがないとできません。

Googleのドキュメントに従って必要なツールをインストールします。

Packageをダウンロードして、tarファイルを解凍、解凍後されたgoogle-cloud-sdkディレクトリのある場所でインストール用のshellを実行します。

tar -zxvf ~/Downloads/google-cloud-sdk-370.0.0-darwin-arm.tar.gz  # ダウンロードしたファイルを解凍
./google-cloud-sdk/install.sh  # shellを実行

gcloudコマンドの認証

その後、gloudコマンドの認証を通します。以下、実行するとブラウザでGoogleアカウントの権限承認画面となります。

gcloud auth application-default login

main.tfを作る

そしたら、terraformのルートディレクトリ(はじめなので、空ならどんなディレクトリでも構いません)で、以下main.tfを作りましょう。(参考)

terraform {
  required_providers {
    google = {
      source = "hashicorp/google"
    }
  }
}

provider "google" {
  project = var.project
  region  = "asia-northeast1"
}

resource "google_project" "test_project" {
  name       = "test"  // この名前のプロジェクトが立ち上がる
  project_id = "test-project-id1" // この名前のプロジェクトID(数字、ハイフン、小文字が必要)が同上
}

resource "google_app_engine_application" "app" {
  project     = google_project.test_project.project_id
  location_id = "asia-northeast1"
}

variable "project" {
  type = string
}

最後に、terraform実行。apply中に設定がこれでいいか聞かれるので、よければyesと入力します。

terraform init
terraform fmt
terraform plan
terraform apply

ブラウザ側でGCPを確認してみたら、立ち上がっていることが確認できました。

まとめ

今回はGCPにterraformを使ってGAEを立ち上げてみました。

次回はこの上にGoogle製品のサーバーサイドGTMをインストールしてみます。

わたろー
わたろー

一度やってしまえば大したことない作業ですが、最初は分かりづらい部分がありました・・・

Quickstart: Install the Google Cloud CLI  |  Google Cloud CLI Documentation

コメント

タイトルとURLをコピーしました