ラベルに関するベスト プラクティス

このドキュメントでは、組織の効果的なラベル戦略を設計する方法について説明します。ラベルの作成を開始する前に、ラベルを使用してリソースを整理する際に使用できる 一般的な原則をいくつかご紹介します。 Google Cloud

ラベルの一般的な原則

常にラベルを使用する

ラベルは必須ではありませんが、リソースの整理と管理に役立ちます。 Google Cloud ラベルを使用して、費用の追跡やリソースの特定を行うことができます。リソースにラベルを使用する場合は、厳格なラベル付けガイドラインに従ってください。組織の主要な関係者と一致する正式なラベル付けポリシーを作成することをおすすめします。組織全体のラベル付けポリシーの例を次の表 に示します。

整合性を保つためにプログラムでラベルを適用する

可能な場合は、プログラムでラベルを適用します。Script や Terraform などのツールを使用すると、ラベル作成プロセスを自動化し、ラベル付けポリシーを適用できます。これらのツールを使用すると、すべてのリソースにラベルが一貫して適用されます。ラベル付けには大文字と小文字を区別する形式を使用し、すべてのリソースに一貫して適用します。

ラベルを標準化する

すべてのリソースに一貫した標準のラベルセットを使用します。これにより、リソースの検索、フィルタリング、管理が容易になります。ラベル戦略を簡素化するには、10 個以下のラベルを使用します。費用のレポート方法に基づいてラベルを調整します。組織に最適なラベルキーと値の標準セットの使用を検討してください。ラベルは、環境、データ分類、コストセンター、チーム、コンポーネント、アプリケーション、コンプライアンスなどのビジネス ユース ケースをカバーできます。

ラベル付けポリシーを標準化して遵守することは、集中管理されたラベルにとって非常に重要であることに注意してください。プロダクト チームや部門は、リソースにカスタムラベルを追加して、チーム固有の情報を共有することもできます。詳細については、 標準以外のラベルを適用するをご覧ください。

各キーの値の標準セットを定義する方法の例を次に示します。

  • 環境: prod/dev/staging
  • データ分類: public/internal-only/confidential/restricted/na
  • コストセンター: c23543
  • チーム: shopping-cart
  • コンポーネント: frontend/cache/backend/database
  • アプリケーション: shopping-cart-payments
  • コンプライアンス: pci-hipaa

機密情報を避ける

セキュリティには、個人を特定できる情報(PII)を保護することが不可欠です。ラベルに PII やその他の機密情報を保存しないでください。

標準以外のラベルを適用する

ラベルポリシーを遵守することは重要ですが、ラベルを使用して、プロダクト チームや部門に固有の情報を共有することもできます。 このようなシナリオでは、 個々のチームのリソース所有者がリソースごとに標準以外のラベル を適用できるようにすることで、リソースに関するコンテキストをより多く提供できます。これにより、これらのプロダクト チームや部門に固有の情報を簡単に検索、フィルタリング、共有することができます。たとえば、1 つのリソースには、environment:proddata-classification:restrictedcost-center:c23543team:shopping-cartapp:shopping-cart-paymentscomponent:databasecompliance: pci といったラベルを指定できます。リソース所有者は、`version:5.0.1` や `replica:primary` などの標準以外の ラベルを追加して、データベース クラスタのバージョン とノードのレプリケーション ステータスを示すことができます。

変更の影響を考慮する

ビジネス要件の進化に伴い、ラベル付け戦略は変化する可能性があります。 これらの変更がもたらす影響に注意してください。たとえば、新しいコストセンター、マイクロサービス、新しいツールの追加は、ラベル付け戦略に影響を与える可能性があります。

ラベルの命名スキームとパターン

組織にはそれぞれ独自のリソース整理方法があります。ラベルを使用すると、階層内のリソースをさまざまな方法で分類できるため、ユーザーは必要なリソースをフィルタできます。ラベルの命名スキームを定義する際は、次の点を考慮してください。

  • リソースに関連する環境、コストセンター、チーム、コンポーネント、アプリケーション、コンプライアンス、所有権。
  • システムに保存されているデータのデータ分類。これはステートフル システムにのみ適用されます。
  • Compute Engine、Cloud Storage バケット、プロジェクトなど、特定のリソースレベルで適用する必要があるラベル。
  • 必要に応じてオプションのラベルを使用して、リソースに関する詳細情報を提供できる柔軟性。

ラベルのエンコードとサポートされている文字

キーと値の文字はすべて UTF-8 エンコードを使用する必要があります。国際文字も使用できます。キーは、小文字または国際文字で始める必要があります。 キーと値には、小文字、数字、アンダースコア、ダッシュのみを使用できます。

ラベルの定義例

ラベルを定義する際は、次の属性に注意してください。

フィールド 説明
ラベルキー ラベルキーは、ラベルの一意の識別子です。1 文字以上 63 文字以下の文字列にする必要があります。キーは空白にできません。environmentdata-classificationcost-centerteamcomponentapplicationcompliance などのビジネス ユース ケースをカバーする、組織に最適なラベル キーの標準セットを使用できます。
ラベルの値 ラベルの値は、キーに関連付けられたデータです。文字列、数値、ブール値にできます。効果的な手法として、ラベルキーごとに値のセットを定義することを検討してください。これにより、チームは各キーに適切な値を選択して割り当てることができます。たとえば、environment キーには、prodstagingdevtools などの値を指定できます。
関係者 リソースのフィルタリングやレポートの作成にラベルキーが必要な部門を特定します。たとえば、組織の財務部門は、prod 環境の実行費用を知りたいと考えています。この場合、ラベル key:value のペア environment:prod を使用します。
ターゲット リソース ラベルごとに、ラベル key:value のペアを適用する対象の リソースを定義することを検討してください。 Google Cloud たとえば、ラベルキー environment は、組織の本番環境の各 Google Cloud リソースに必要です。
例外 すべてのリソースに必須のラベルキーと、適用するオプションとしてのキーを定義することを検討してください。表の例には、ラベル key:value に対する environment:tools などのオプションのペアがあります。ラベル altostrat-environment のラベル値が tools に設定されている場合、ラベルキー altostrat-team は省略可能と見なされます。

次のラベルの例では、altostrat は企業の名前に対応しています。

ラベルキー ラベルの値 関係者 ターゲット リソース 例外
Altostrat の環境 製品、sb1、ステージング、開発、ツール 金融 Google Cloud リソース いいえ
altostrat のデータ分類 一般公開、内部のみ、社外秘、制限付き、該当なし セキュリティ バケット、データベース、Compute Engine を使用した永続ディスク ×
Altostrat のコストセンター fin-us、mkt-eu、it-jp 金融 Google Cloud リソース sandbox-folder
Altostrat チーム ショッピング カート チームリーダー Google Cloud リソース 非本番環境、重要度の低いコンポーネント
Altostrat コンポーネント フロントエンド、キャッシュ、アプリケーション、データベース 金融 Google Cloud リソース 省略可
Altostrat アプリ ショッピング カートの支払い 金融 Google Cloud リソース いいえ。アプリケーションとの 1 対 1 のマッピングがないマルチテナント リソースには例外があります。
Altostrat のコンプライアンス PCI、HIPAA セキュリティ Google Cloud リソース 省略可