このページでは、Anthos Service Mesh をインストールするための前提条件と要件について説明します。
Cloud プロジェクト
始める前に:
GKE Enterprise ライセンス
GKE
Anthos Service Mesh は、GKE Enterprise で、もしくはスタンドアロン サービスとして利用できます。Google API は、請求方法を決定するために使用されます。Anthos Service Mesh をスタンドアロン サービスとして使用する場合、プロジェクトで GKE Enterprise API を有効にしないでください。asmcli
により、他のすべての必要な Google API が有効になります。Anthos Service Mesh の料金については、料金をご覧ください。
- GKE Enterprise サブスクライバーの場合は、GKE Enterprise API を必ず有効にしてください。
GKE Enterprise のサブスクライバーでない場合でも Anthos Service Mesh をインストールできますが、Google Cloud コンソールの一部の UI 要素と機能は GKE Enterprise のサブスクライバーのみが使用できます。サブスクライバーと非サブスクライバーが使用できる機能については、GKE Enterprise と Anthos Service Mesh の UI の違いをご覧ください。
GKE Enterprise API を有効にしていて、Anthos Service Mesh をスタンドアロン サービスとして使用する場合は、GKE Enterprise API を無効にします。
オンプレミス
GKE Enterprise をご利用のお客様は、GKE Enterprise の料金に Anthos Service Mesh が含まれているため、別途請求は行われません。詳細については、GKE Enterprise 料金ガイドをご覧ください。
一般的な要件
サービス メッシュに含めるには、サービスポートに名前を付ける必要があります。名前には、
name: protocol[-suffix]
の構文でポートのプロトコルを含める必要があります。角かっこは、ダッシュで始まるオプションの接尾辞です。詳細については、サービスポートの命名をご覧ください。組織にサービス境界を作成した場合は、Mesh CA サービスを境界に追加する必要があります。詳細については、サービス境界へのメッシュ CA の追加をご覧ください。
istio-proxy
サイドカー コンテナのデフォルトのリソース制限を変更する場合は、メモリ不足(OOM)イベントを回避するために、新しい値はデフォルト値より大きい値にする必要があります。1 つの Google Cloud プロジェクトに関連付けることができるメッシュは 1 つのみです。
クラスタ要件
GKE
クラスタ バージョンがサポートされる環境に含まれていることを確認します。
GKE クラスタは次の要件を満たす必要があります。
Autopilot クラスタには
istio-sidecar-injector
のMutatingWebhookConfiguration
を許可しない Webhook の制限があるため、GKE クラスタは Standard でなければなりません。4 つ以上の vCPU を備えたマシンタイプ(
e2-standard-4
など)。クラスタのマシンタイプに 4 つ以上の vCPU がない場合は、異なるマシンタイプへのワークロードの移行の説明に従ってマシンタイプを変更します。ノードの最小数は、マシンタイプによって異なります。Anthos Service Mesh には、8 つ以上の vCPU が必要です。4 つの vCPU を持つマシンタイプの場合、クラスタには少なくとも 2 つのノードが必要です。8 つの vCPU を持つマシンタイプの場合、クラスタには 1 ノードだけが必要です。ノードを追加する必要がある場合は、クラスタのサイズ変更をご覧ください。
Workload Identity が必要です。クラスタで Workload Identity がまだ有効になっていない場合は、手動で有効にする(「クラスタを設定する」のステップ 3 を参照)か、
asmcli install
の実行時に--enable_all
または--enable_gcp_components
を含めます。Workload Identity は、Google API を呼び出すためのおすすめの方法です。Workload Identity を有効にすると、Workload Identity の制限事項で説明されているように、ワークロードから Google API への呼び出し方法が変わります。
Workload Identity プールは、Google Cloud プロジェクト
PROJECT_ID.svc.id.goog
ごとに 1 つだけです。クラスタがフリートに登録されている場合、Workload Identity プールのPROJECT_ID
はフリート ホスト プロジェクトです。クラスタがフリートに登録されていない場合、Workload Identity プールのPROJECT_ID
は、クラスタが作成されたプロジェクトです。詳しくは、フリートの Workload Identity をご覧ください。クラスタをリリース チャンネルに登録します。この操作は省略できますが、行うことをおすすめします。Regular リリース チャンネルに登録することをおすすめします。他のチャネルは Anthos Service Mesh 1.10.6 でサポートされていない GKE バージョンをベースにしていることがあります。詳細については、サポートされている環境をご覧ください。静的 GKE バージョンがある場合は、既存のクラスタをリリース チャンネルに登録するの手順を行ってください。
限定公開クラスタに Anthos Service Mesh をインストールする場合は、ファイアウォールでポート 15017 を開き、自動サイドカー インジェクションと構成検証で使用する Webhook が適切に機能する必要があります。詳細については、限定公開クラスタのポートを開くをご覧ください。
Windows Server ワークロードの場合、Istio はサポートされません。クラスタに Linux と Windows Server の両方のノードプールがある場合でも、Anthos Service Mesh をインストールして Linux ワークロードで使用できます。
オンプレミス
クラスタ バージョンがサポートされる環境に含まれていることを確認します。
VMware
クラスタのバージョンを確認するには、
gkectl
コマンドライン ツールを使用します。gkectl
が未インストールの場合は、GKE on VMware のダウンロードをご覧ください。gkectl version
ベアメタル
クラスタのバージョンを確認するには、
bmctl
コマンドライン ツールを使用します。bmctl
が未インストールの場合は、BD Metal の GDCV クイックスタートをご覧ください。bmctl version
Anthos Service Mesh をインストールするユーザー クラスタには、少なくとも vCPU が 4 つ、メモリが 15 GB、ノードが 4 つあることを確認します。
フリートの Workload Identity が必要です。GKE on VMware とベアメタル版 GKE は、クラスタの作成時にプロジェクト フリートに自動的に登録されます。GKE Enterprise 1.8 以降では、これらのクラスタタイプを登録すると、Workload Identity が自動的に有効になります。既存の登録済みクラスタでは、GKE Enterprise 1.8 にアップグレードするとき、フリートの Workload Identity を使用するように更新されます。クラスタのステータスを確認するには、登録済みクラスタの表示をご覧ください。
ユーザー クラスタ ノードで Anthos Service Mesh のインストールを正常に完了させるには、インターネットが必要です。HTTP プロキシ経由でのインターネット アクセスは行えません。