3

「カスタム」タイプのネットワークと「自動」タイプのネットワークのGKEクラスタを起動しようとしています。カスタムネットワークでGKE(Google Container Engine)クラスタを起動できません

私は、クラスタを起動するには、次のコマンドを使用します。私は次のエラーを取得する

$ gcloud container clusters create --cluster-ipv4-cidr=10.0.0.0/14 --network=ttest --subnetwork=ttest --num-nodes=1 jt 

Creating cluster jt...done. 
ERROR: (gcloud.container.clusters.create) Operation [<Operation 
name: u'operation-1467037655793-e319dc5e' 
operationType: OperationTypeValueValuesEnum(CREATE_CLUSTER, 1) 
selfLink: u'https://container.googleapis.com/v1/projects/TRUNCATED/zones/us-east1-b/operations/operation-1467037655793-e319dc5e' 
status: StatusValueValuesEnum(DONE, 3) 
statusMessage: u'Requested CIDR 10.0.0.0/14 is not available in network "ttest".' 
targetLink: u'https://container.googleapis.com/v1/projects/TRUNCATED/zones/us-east1-b/clusters/jt' 
zone: u'us-east1-b'>] finished with error: Requested CIDR 10.0.0.0/14 is not available in network "ttest". 

/14アドレス範囲を持つネットワークまたはサブネットワークをしたいように見えるので、コマンドが理想的に動作するはずですが、そうではありません。

ここに私のネットワークがどのように見えるかであるので、非常に奇妙です:

t検定ネットワーク:

$ gcloud compute networks describe ttest 

autoCreateSubnetworks: false 
creationTimestamp: '2016-06-27T07:25:03.691-07:00' 
id: '5404409453117999568' 
kind: compute#network 
name: ttest 
selfLink: https://www.googleapis.com/compute/v1/projects/myproject/global/networks/ttest 
subnetworks: 
- https://www.googleapis.com/compute/v1/projects/myproject/regions/us-east1/subnetworks/ttest 
x_gcloud_mode: custom 

t検定のサブネットワーク:

$ gcloud compute networks subnets describe ttest 

creationTimestamp: '2016-06-27T07:25:21.649-07:00' 
gatewayAddress: 10.0.0.1 
id: '6237639993374575038' 
ipCidrRange: 10.0.0.0/14 
kind: compute#subnetwork 
name: ttest 
network: https://www.googleapis.com/compute/v1/projects/myproject/global/networks/ttest 
region: https://www.googleapis.com/compute/v1/projects/myproject/regions/us-east1 
selfLink: https://www.googleapis.com/compute/v1/projects/myproject/regions/us-east1/subnetworks/ttest 

私は同じことを試してみました手動で作成した従来のネットワークで--range=10.0.0.0/8という名前のものを作成してから、そのネットワークでクラスタを作成しようとしましたが、どちらも機能していないようです。

/14ルールはどこかのGKE設定にハードコードされているようですが、カスタムネットワークでコンテナを起動するのが本当にわかりません。モード/ I型のドキュメントが私に関連するように見えたものは何でもの上に注い"auto".

ですが、多くの幸運なしでどこ

GKEコンテナの起動コマンドは、任意のネットワークで動作します。 this pageから次のスニペット突き出しのみ:

The following restrictions exist when using subnetworks with other products:

  • Google Managed VMs: Supported only on auto subnetwork networks. Cannot be deployed in a custom subnet networks.

はGKEの使用は、ボンネットの下にVMを管理していますか?それが問題の原因ですか?

答えて

4

GKEはカスタムサブネットネットワークをサポートしています。あなたが持っている問題は、パケットが内部ネットワーク上でどこにルーティングされるべきなのかのあいまいさを招くので、GKEはcluster-ipv4-cidrの範囲がVMがそれらのIPが割り当てられているすべてのサブネットワークから切り離されていることを強制するということです。

cluster-ipv4-cidrは、クラスタ内のコンテナにどのCIDR範囲を使用するかを決定し、使用されるサブネットは、そのネットワークで作成されたすべてのVMに使用されるIPアドレスを決定します。

問題を解決するには、gcloudコマンドで--cluster-ipv4-cidrフラグを指定しないでください。 GKEは安全なcluster-ipv4-cidrの範囲を選択します。

+0

こんにちはアレックス、これを試してみましたが、作成した新鮮なネットワークで動作しますが(上記のように)、別のネットワークでは動作しません。同じエラーが発生します(CIDR )、他の何が間違っているかもしれないか? – ffledgling

+1

他のネットワークに/ 14を割り当てるのに十分な空き領域がない可能性があります。これは、サブネットワークが10.0.0.0/8の領域を埋めるか、または全領域を使用する高度な経路が原因である可能性があります。表示される正確なエラーメッセージは何ですか? –

+0

@CJCullen私が見た正確なエラーメッセージは 'ネットワーク" mynetworkは10.0.0.0/8のプライベートIPスペースでこのクラスタの/ 14ブロックを予約できませんでした。 私は昨晩遅く答えを見つけました。このネットワークのVPNは、一度に '0.0.0.0/0'として' Remote IP Network Ranges'を設定し、別の場所で '10.0.0.0/8'を設定しました。おそらくこれを見て(私はどのように分かっているのかわかりません)、それが自分の空間を持たずに文句を言うことが分かります。意外なことに、私は計算エンジンのインスタンスをうまく計算できます。 – ffledgling

関連する問題