このページでは、Google Kubernetes Engine(GKE)でのクラスタの作成に関する問題を解決する方法について説明します。
Kubernetes クラスタに関する一般的な問題については、Kubernetes ドキュメントのクラスタのトラブルシューティングをご覧ください。
エラー: Constraint constraints/compute.vmExternalIpAccess 違反
公開 GKE クラスタを作成しようとすると、次のようなエラーが発生することがあります。
Constraint constraints/compute.vmExternalIpAccess violated for project
これは、GKE Autopilot クラスタを含む GKE 一般公開クラスタにのみ影響します。
GKE 一般公開クラスタを作成すると、このクラスタのワーカーノードの基盤となる Compute Engine VM に外部 IP アドレスが割り当てられます。組織のポリシーの制約 constraints/compute.vmExternalIpAccess
を Deny All
に構成する場合、または外部 IP アドレスを組織、フォルダ、プロジェクト レベルの特定の VM インスタンスに制限する場合は、このポリシーによって GKE ワーカーノードが外部 IP アドレスを取得できなくなるため、クラスタ作成エラーが発生します。
クラスタ作成オペレーションのログを見つけるには、ログ エクスプローラで次のような検索クエリを使用し、GKE クラスタ オペレーションの監査ログを確認します。
resource.type="gke_cluster"
logName="projects/test-last-gke-sa/logs/cloudaudit.googleapis.com%2Factivity"
protoPayload.methodName="google.container.v1beta1.ClusterManager.CreateCluster"
resource.labels.cluster_name="CLUSTER_NAME"
resource.labels.project_id="PROJECT_ID"
次のように置き換えます。
CLUSTER_NAME
: 作成されなかったクラスタの名前。PROJECT_ID
: プロジェクト ID。
この問題を解決するには、GKE 一般公開クラスタを作成するプロジェクトで、制約 constraints/compute.vmExternalIpAccess
の有効なポリシーが Allow All
であることを確認します。この制約の使用方法については、外部 IP アドレスを特定の VM インスタンスに制限するをご覧ください。
制約を Allow All
に設定した後、障害が発生したクラスタを削除して新しいクラスタを作成します。障害が発生したクラスタを修復できないため、この操作が必要になります。
次のステップ
さらにサポートが必要な場合は、Cloud カスタマーケアにお問い合わせください。