Google Kubernetes私有集群:Google Compute Engine:每个子网超出最大的辅助范围支持数量

时间:2018-06-21 21:39:46

标签: kubernetes google-kubernetes-engine vpc

我们正在尝试建立几个私有Kubernetes集群。我们可以找到有关私有集群特定设置的有限文档,因此我们遇到了与子网IP范围有关的问题。

假设我们有3个簇:我们将“主地址范围”分别设置为172.16.0.0/28、172.16.0.16/28和172.16.0.32/28。

我们将“网络和子网”设置为“默认”。我们可以通过这种方式创建2个群集,但是,在第3个群集启动后,会收到错误消息“ Google Compute Engine:超出每个子网最大支持的辅助范围数量:5”。我们怀疑我们设置的子网IP范围不正确,但是我们不确定自己做错了什么,或者不确定为什么每个子网有一个以上的二级范围。

这是其中一个集群的配置的屏幕截图: kubernetes configuration screenshot

我们正在通过用户界面设置这些集群。

5 个答案:

答案 0 :(得分:2)

此群集启用了VPC原生(别名IP),每个群集使用2个辅助范围。

请参见https://cloud.google.com/kubernetes-engine/docs/how-to/alias-ips#secondary_ranges

根据

Google Compute Engine: Exceeded maximum supported number of secondary ranges per subnetwork: 5.

最大为5。这就是第三个创建失败的原因。

答案 1 :(得分:1)

最好的方法是为每个群集创建一个新的子网。这样,每个子网仅需要2个辅助范围,您就不会达到5个限制。

答案 2 :(得分:1)

  

对于那些从Google登陆到这里并想知道如何列出/查看使用GKE创建的子网名称的人,如OP的问题所述:

要列出区域的子网(并可能会修改或删除子网,因为您不知道其名称),请使用beta gcloud命令:

gcloud beta container subnets list-usable

我在寻找答案时登陆这里,发现其他试图确定构造其子网/范围的最佳方法的人可能能够使用上述命令(这使我永远无法追踪)。

答案 3 :(得分:1)

(由于声誉低下,无法评论Alan的答案)

您可以创建一个新的子网:

  1. 转到“ VPC网络”
  2. 单击“默认”(在名称下)
  3. 点击“添加子网”
  4. 定义子网范围/区域

然后在GKE上创建新群集时,选择新的子网。 这应该使您可以创建更多集群,而不会遇到错误Sub WhatEver() Dim finRow As Long, myRange As Range, I As Long Dim LastString As String, tString As String, mT As String Dim myCell As Range, v As Variant finRow = Cells(Rows.Count, "AK").End(xlUp).Row Set myRange = ActiveSheet.Range("AK2:AK" & finRow) For Each myCell In myRange v = myCell.Value If v <> "" Then LastString = "" For I = 1 To Len(v) mT = Mid(v, I, 1) If mT Like "[0-9]" Then tString = mT Else tString = "" End If LastString = LastString & tString Next I End If myCell.Value = LastString Next myCell End Sub

答案 4 :(得分:0)

您可以通过gcloud创建集群并添加--create-subnetwork ""

请参阅:https://cloud.google.com/sdk/gcloud/reference/container/clusters/create#--create-subnetwork

这将为每个新群集创建一个新子网,因此不会达到“ 5 Secondary IP ranges per subnet”的配额。