Skip to content

GCP

Terraform で GCP 上に VPC / Subnet / Instance を作成する

Terraform の GCP 用 Provider を使って、VPC / Subnet / Compute Instance を作成する .tf ファイルをメモしておきます。

google_compute_instance にも Google recommends custom service accounts that have cloud-platform scope and permissions granted via IAM Roles. と書かれていますので、Service Account を紐付けています。

尚、検証用に作成している為、作成する Instance は preemptible にしています。 preemptible については プリエンプティブル VM インスタンス に詳しく、一部を抜粋すると下記のように書かれています。

プリエンプティブル VM は、通常のインスタンスよりはるかに低価格で作成、実行できるインスタンスです。ただし、他のタスクがリソースへのアクセスを必要とする場合、Compute Engine がこのインスタンスを停止(プリエンプト)する可能性があります。プリエンプティブル インスタンスは Compute Engine の余剰のキャパシティを利用する機能であり、使用できるかどうかは利用状況に応じて異なります。

Linux や macOS へ google-cloud-sdk をインストールする

Linux や macOS へ google-cloud-sdk をインストールするには以下のような選択肢があります。

  1. curl https://sdk.cloud.google.com | bash でインストールする
  2. Cloud SDK のインストーラ を使う
  3. Homebrew などのパッケージマネージャでインストールする

今回は各々のインストール方法についてメモしておきます。

GCP 上で Route53 DNS 認証を使い lego で Let's Encrypt のワイルドカード証明書を取得する

lego を利用して Let's Encrypt の証明書を取得する手順については以前に下記のメモを書きました。

今回は以下の環境で証明書を取得する手順をメモしておきます。 尚、今回は GCP 上の仮想マシンに CentOS8 を使いました。

  1. GCP と AWS を併用している
  2. GCP 上の仮想マシンで証明書を取得する
  3. 証明書はワイルドカード証明書を取得する
  4. 証明局は Let's Encrypt を利用する
  5. 証明書の取得には Route53 による DNS 認証を用いる
  6. 証明書の取得には lego を利用する