GKE Enterprise リファレンス アーキテクチャ: Google Distributed Cloud Virtual for Bare Metal

Last reviewed 2023-08-15 UTC

このガイドでは、GDCV for Bare Metal のデプロイに使用するリファレンス アーキテクチャについて説明します。このガイドは、可用性の高い地理的冗長構成でベアメタル プラットフォームに GKE Enterprise をデプロイするプラットフォーム管理者を対象としています。このガイドを適切に理解するには、GKE Enterprise の技術概要で説明されている GKE Enterprise の基本的なコンセプトを理解している必要があります。また、Kubernetes の基礎を学習するGKE のドキュメントで説明されている Kubernetes のコンセプトと Google Kubernetes Engine(GKE)に関する基本的な知識も必要です。

このガイドには、前述のアーキテクチャのデプロイに使用できるスクリプトを含む GitHub ソース リポジトリが含まれています。また、このガイドでは、それらのコンポーネントの作成に使用されるスクリプトとモジュールに付属するアーキテクチャ コンポーネントについても説明します。これらのファイルをテンプレートとして使用し、組織のベスト プラクティスとポリシーを使用するモジュールを作成することをおすすめします。

GDCV for Bare Metal のアーキテクチャ モデル

GKE Enterprise アーキテクチャ基盤ガイドでは、プラットフォーム アーキテクチャがレイヤで説明されています。各レイヤのリソースには、特定の関数セットが用意されています。これらのリソースは、1 つ以上のペルソナによって所有、管理されます。次の図に示すように、ベアメタル用の GKE Enterprise プラットフォーム アーキテクチャは、次のレイヤとリソースで構成されています。

ドキュメントで説明するレイヤを示す、GDCV for Bare Metal メンタルモデル。

  1. インフラストラクチャ: このレイヤには、ストレージ、コンピューティング、ネットワークが含まれ、オンプレミスの構成体で扱われます。
  2. データ管理: このガイドの目的では、データ管理レイヤには、デプロイされる Kubernetes クラスタの外部で管理される SQL データベースが必要です。
  3. コンテナ管理レイヤ: このレイヤでは GKE クラスタを使用します。
  4. サービス管理レイヤ: このレイヤでは、Anthos Service Mesh を使用します。
  5. ポリシー管理レイヤ: このレイヤでは、Config SyncPolicy Controller を使用します。
  6. アプリケーション管理レイヤ: このレイヤでは、Cloud BuildCloud Source Repositories を使用します。
  7. オブザーバビリティ レイヤ: このレイヤでは、Google Cloud ObservabilityAnthos Service Mesh ダッシュボードを使用します。

これらの各レイヤは、開発、ステージング、本番環境など、さまざまなライフサイクル環境でスタック全体にわたり繰り返されます。

以降のセクションでは、GDCV for Bare Metal に固有の追加情報のみ説明します。これらは、GKE Enterprise アーキテクチャ基盤ガイドのそれぞれのセクションに基づいています。この記事を読みながら、同ガイドを確認することをおすすめします。

ネットワーキング

ネットワーク要件の詳細については、ネットワークの要件をご覧ください。

GDCV for Bare Metal ロードバランサには、バンドルと手動の 2 つのオプションがあります。

バンドルモードでは、クラスタの作成時に L4 ロード バランシング ソフトウェアがデプロイされます。ロードバランサ プロセスは、ワーカーノードの専用プールまたはコントロール プレーンと同じノードで実行できます。仮想 IP アドレス(VIP)をアドバタイズするために、このロードバランサには次の 2 つのオプションがあります。

手動モードでは、コントロール プレーンとデータプレーンのトラフィック用に独自のロード バランシング ソリューションを構成します。外部ロードバランサで使用できるハードウェアとソフトウェアのオプションは多数あります。ベアメタル クラスタを作成する前に、コントロール プレーン用に外部ロードバランサを設定する必要があります。コントロール プレーンの外部ロードバランサはデータプレーンのトラフィックにも使用できます。また、データプレーン用に別のロードバランサを設定することもできます。可用性を確認するには、構成可能な準備状況チェックに基づいて、ロードバランサがノードプールにトラフィックを分散できなければなりません。

GDCV for Bare Metal のロードバランサの詳細については、ロードバランサの概要をご覧ください。

クラスタのアーキテクチャ

GDCV for Bare Metal は、さまざまな可用性、分離、リソース フットプリントのニーズに合わせて複数のデプロイモデルをサポートします。これらのデプロイモデルについては、デプロイモードの選択をご覧ください。

ID 管理

GDCV for Bare Metal は、GKE Identity Service を使用して ID プロバイダと統合します。OpenID Connect(OIDC)Lightweight Directory Access Protocol(LDAP)をサポートしています。アプリケーションとサービスで、Anthos Service Mesh をさまざまな ID ソリューションで使用できます。

ID 管理の詳細については、GDCV for Bare Metal での OIDC による ID 管理OIDC による認証または LDAP で Anthos Identity Service を設定するをご覧ください。

セキュリティとポリシーの管理

GDCV for Bare Metal のセキュリティとポリシー管理には、Config Sync と Policy Controller を使用することをおすすめします。Policy Controller を使用すると、クラスタ全体にポリシーを作成して適用できます。Config Sync は、変更を評価してすべてのクラスタにそれを適用し、適切な状態を実現します。

Service

ロード バランシングに GDCV for Bare Metal のバンドルモードを使用すると、LoadBalancer タイプの Serivice を作成できます。これらの Service を作成すると、GDCV for Bare Metal では、構成したロードバランサの IP アドレスプールから IP アドレスを Service に割り当てます。LoadBalancer Service タイプは、North-South トラフィック用のクラスタ外に Kubernetes Service を公開するために使用されます。GDCV for Bare Metal を使用する場合は、デフォルトでクラスタに IngressGateway も作成されます。手動モードでは、GDCV for Bare Metal 用の LoadBalancer タイプの Service を作成できません。代わりに、IngressGateway を使用する Ingress オブジェクトを作成するか、NodePort タイプの Service を作成して、Kubernetes Service をバックエンドとして使用するように外部ロードバランサを手動で構成します。

Service Management(East-West トラフィックとも呼ばれます)については、Anthos Service Mesh を使用することをおすすめします。Anthos Service Mesh は Istio オープン API を基盤としており、均一なオブザーバビリティ、認証、暗号化、きめ細かいトラフィック制御、その他の特徴と機能を提供します。Service Management の詳細については、Anthos Service Mesh をご覧ください。

永続性と状態の管理

GDCV for Bare Metal は、エフェメラル ストレージ、ボリューム ストレージ、PersistentVolume ストレージについて、既存のインフラストラクチャに大きく依存しています。エフェメラル データは、Kubernetes Pod がスケジュールされているノード上のローカル ディスク リソースを使用します。永続データの場合、GKE Enterprise は Container Storage Interface(CSI)と互換性があります。CSI は、多くのストレージ ベンダーがサポートするオープン標準 API です。本番環境のストレージについては、GKE Enterprise Ready ストレージ パートナーから CSI ドライバをインストールすることをおすすめします。GKE Enterprise Ready ストレージ パートナーの全一覧については、GKE Enterprise Ready ストレージ パートナーをご覧ください。

ストレージの詳細については、ストレージの構成をご覧ください。

データベース

GDCV for Bare Metal では、GKE Enterprise プラットフォームの標準機能以外に追加のデータベース固有の機能はありません。ほとんどのデータベースは、外部のデータ管理システムで実行されます。GKE Enterprise プラットフォームのワークロードは、アクセス可能な外部データベースに接続するように構成することもできます。

オブザーバビリティ

Google Cloud Observability は、GKE クラスタの収集とモニタリングのポリシーと同様の方法で、GDCV for Bare Metal クラスタのログとモニタリング指標を収集します。デフォルトでは、クラスタ