GKE私有集群中--master-ipv4-cidr的CIDR范围

时间:2019-03-28 14:20:13

标签: google-cloud-platform google-kubernetes-engine

注意: 有一个现有的stackoverflow post在讨论--master-ipv4-cidr,但没有在讨论我在问题中询问的主题。 请不要将此标记为重复。

问题描述 我正在GKE中创建私有集群,并与--master-ipv4-cidr范围相混淆。 link提到--master-ipv4-cidr需要RFC 1918范围内的CIDR。

"--master-ipv4-cidr 172.16.0.0/28 specifies an RFC 1918 range for the master. This setting is permanent for this cluster."

因为有效的RFC 1918范围是

 10.0.0.0        -   10.255.255.255  (10/8 prefix)
 172.16.0.0      -   172.31.255.255  (172.16/12 prefix)
 192.168.0.0     -   192.168.255.255 (192.168/16 prefix)

所以我试图用以下值创建私有集群:

  --master-ipv4-cidr "172.17.0.0/28" 
  --cluster-ipv4-cidr "172.16.128.0/17" 
  --services-ipv4-cidr "192.168.1.0/24" 

由于172.17.0.0/28也来自RFC 1918范围,所以我认为群集将会出现。但这导致了如下所述的错误

172.17.0.0/16是保留的GKE IP范围,不能用于'master-ipv4-cidr'。

然后,我将--master-ipv4-cidr更改为link中给出的示例,并成功创建了集群。以下是成功的案例值。

  --master-ipv4-cidr "172.16.0.16/28" 
  --cluster-ipv4-cidr "172.16.128.0/17" 
  --services-ipv4-cidr "192.168.1.0/24" 

现在我的问题是

  1. -master-ipv4-cidr是否只希望在172.16.0.0/28中使用CIDR,并且不能接受10/8或192.168 / 16中的任何其他范围,或者我以前提供的任何其他范围,例如172.17.0.0/28 ?
  2. 对于现有集群172.16.0.0/28的--master-ipv4-cidr,如果我在同一VPC中创建另一个集群,则--master-ipv4-cidr值应该是多少? 因为使用相同的--master-ipv4-cidr 172.16.0.0/28创建另一个集群失败,并且出现以下错误,这是我们所期望的。

Google Compute Engine:对等网络(172.16.0.16/28)的IP范围与活动对等体(gke-c2a126697c6fee94c2b8-1e18-f2ff-peer的IP范围(172.16.0.16/28)重叠)。   那是可以预期的,因为172.16.0.16/28已存在于与之建立对等关系的同一vpc中的现有群集中。

  1. 我正在考虑管理172.16.0.0范围内的群集Pod和RFC 1918的192.168.0.0范围内的服务,并且不使用10/8网络以避免与现有办公网络冲突。 由于172.16 / 12是172.16.0.0/28的超集。您如何确保它们彼此分开?

很抱歉在这里提出很多问题,但我只是想将整个上下文放在同一位置。

1 个答案:

答案 0 :(得分:3)

我将回答您的问题,如下所示:

1)172.17.0.0无法使用,因为这是针对Docker的。

2)您可以使用以下任何CIDR 10.0.0.0 – 10.255.255.255 172.16.0.0 – 172.31.255.255 192.168.0.0 – 192.168.255.255 ,但 172.16 172.17 除外。另外,该值必须为 / 28

3)无法使用超集或子网,因此您将不得不选择其他CIDR范围

您可以在以下Google Public doc

中阅读有关限制和限制的信息