クラスタ内 Cloud Service Mesh の前提条件
このページでは、クラスタの要件、フリートの要件、一般的な要件など、 Google Cloud外の Kubernetes ワークロード用のクラスタ内 Cloud Service Mesh をインストールするための前提条件と要件について説明します。
Cloud プロジェクト
始める前に、次のことを行います。
一般的な要件
サービス メッシュに含めるには、サービスポートに名前を付ける必要があります。名前には、
name: protocol[-suffix]
の構文でポートのプロトコルを含める必要があります。角かっこは、ダッシュで始まるオプションの接尾辞です。詳細については、サービスポートの命名をご覧ください。組織にサービス境界を作成した場合は、Cloud Service Mesh 認証局サービスを境界に追加する必要があります。詳細については、サービス境界への Cloud Service Mesh 認証局の追加をご覧ください。
istio-proxy
サイドカー コンテナのデフォルトのリソース制限を変更する場合は、メモリ不足(OOM)イベントを回避するために、新しい値をデフォルト値より大きい値にする必要があります。Google Cloud プロジェクトに関連付けることができるメッシュは 1 つのみです。
クラスタ要件
Cloud Service Mesh をインストールするユーザー クラスタに、最低 4 つの vCPU、15 GB のメモリ、4 つのノードがあることを確認します。
クラスタ バージョンがサポートされるプラットフォームに含まれていることを確認します。
Cloud Service Mesh をインストールする元のクライアント マシンと API サーバーとのネットワーク接続を確認します。
CA サービス(
meshca.googleapis.com
やprivateca.googleapis.com
など)に直接接続できないアプリケーション Pod にサイドカーをデプロイする場合は、明示的なCONNECT
ベースの HTTPS プロキシを構成する必要があります。暗黙のルールをブロックしている下り(外向き)ファイアウォール ルールが設定されている一般公開クラスタの場合は、HTTP / HTTPS ルールと DNS ルールが公開 Google API に到達するように構成されていることを確認します。
フリートの要件
すべてのクラスタをフリートに登録し、フリートの Workload Identity を有効にする必要があります。ご自身でクラスタを設定することも、次の要件を満たす限り、asmcli
でクラスタを登録することもできます。
- Google Cloud外の GKE クラスタ: (クラスタ内 Cloud Service Mesh に適用)VMware 用の Google Distributed Cloud(ソフトウェアのみ)、ベアメタル用の Google Distributed Cloud(ソフトウェアのみ)、GKE on AWS(非推奨)、GKE on Azure(非推奨)は、クラスタの作成時にプロジェクト フリートに自動的に登録されます。GKE Enterprise 1.8 以降では、これらのすべてのクラスタタイプを登録すると、Workload Identity が自動的に有効になります。既存の登録済みクラスタは、GKE Enterprise 1.8 へのアップグレード時にフリートの Workload Identity を使用するように更新されます。
- Amazon EKS クラスタ(非推奨): (クラスタ内 Cloud Service Mesh に適用)クラスタにパブリック IAM OIDC ID プロバイダが必要です。クラスタの IAM OIDC プロバイダを作成するの手順に沿って、プロバイダが存在するかどうかを確認し、必要に応じてプロバイダを作成します。
asmcli install
を実行するときは、フリート ホスト プロジェクトのプロジェクト ID を指定します。クラスタがまだ登録されていない場合は、asmcli
によって登録されます。