GCP のプロジェクト命名規則を考える


この記事の流れ

  1. GCP プロジェクトについて
  2. GCP のリソース階層について
  3. おすすめの命名規則
  4. 実際にやってみる

事前準備

この記事は GCP についての記事になります。

まだ、GCP を未開設の方は下記を参考に開設してみて下さい :)

GCP を開設し、初回無料枠に登録するまでの流れ

GCP プロジェクトについて

プロジェクトの識別子は以下の3つがあります。

  • Project name
  • Project ID
  • Project number

上記の識別子は以下の制約があります

種類 後から変更 重複
Project name 可能 可能
Project ID 不可 不可

Project ID は自分の GCP プロジェクト内外問わず、世界中でユニークである必要があります。

また、GCP のリソースを表す際は大抵は Project ID が、リソースを一意に指定する ID として使用されます。

したがって、 Project ID を決めた上で GCP プロジェクトを作成する際に Project name = Project ID のが望ましいと考えます。

既に削除された Project ID であれば再度作成が可能ですが、 GCP プロジェクトはシャットダウンを実行した後も30日は保持されるので、その間は重複作成の扱いとなり同じ Project ID では作成出来ません。

GCP のリソース階層について

WIP

Resource hierarchy | Google Cloud resource hierarchy in complete

おすすめの命名規則

個人的におすすめだと思う Project ID (と Project name)の命名規則を紹介します :)

{企業識別子}-{サービス識別子}-{環境識別子(3 文字 OR 4 文字)}
  • 例1 状態が異なる 3 つの環境が必要な場合
    • example.com 社の hogehoge とサービス
    • 本番環境, ステージング環境, 開発環境 はアプリケーションが実際に実行されている GCP プロジェクト
## 本番環境
example-hogehoge-prd

## ステージング環境
example-hogehoge-stg

## 開発環境
example-hogehoge-dev
  • 例2 状態が異なる 2 つの環境と、2 つの環境で共通のデータを取り扱う環境が必要な場合
    • example.com 社の hogehoge というサービス
    • 本番環境開発環境 はアプリケーションが実際に実行されている GCP プロジェクト
    • 共通環境本番環境開発環境 の両方から参照したいデータを置いていく GCP プロジェクト
      • 例えば、ログ基盤や(共通で管理しておいて良い)データ、CI/CD 実行環境、モニタリング基盤など。
## 本番環境
example-hogehoge-prd

## 開発環境
example-hogehoge-dev

## 共通環境
example-hogehoge-cmn

実際にやってみる

※ 簡易のため日本語表記でスクリーンショットを取っていますので言語設定によっては表示されている文言が変わります。

  • 自分の GCP プロジェクトにアクセスします

https://console.cloud.google.com/

  • 赤枠の My First Project をクリックします

  • 表示された画面の右上に 新しいプロジェクト があるのでクリックします

  • 赤枠がついている 編集 をクリックします

  • Project ID を入力する項目が出現します

  • Project nameProject ID に同じ値を入力します
    • 例として、Yahoo という会社の PayPay というサービスの開発環境(dev)の GCP Project を作ります
      • あくまで例です(^^:

  • Project nameProject ID が正しく入力し終わったら、作成をクリックします

  • GCP Project 作成のページが無くなるので、再び赤枠の My First Project をクリックします

  • 先程作成した GCP Project が表示されていることを確認出来ました :)
    • 名前の欄からその GCP Project をクリックします

  • 先程、 My First Project と表示されていた箇所が自分の作成した GCP Project と同じ(ここの表示は Project name)になっていることが確認出来ます
    • また、 URL にも Project ID が入っていることが確認出来ます

参考 URL

まとめ

GCP Project の命名ルールをまとめました。

これがすべてのケースで正しいとは限りませんが、多くの場合で参考に出来る命名ルールだと思っています。

Have fun !! :)