第 14 章 配置集群网络范围
作为集群管理员,您可以在集群安装后扩展集群网络范围。如果额外的节点需要更多 IP 地址,您可能需要扩展集群网络范围。
例如,如果您部署了集群,并将 10.128.0.0/19
指定为集群网络范围,主机前缀为 23
,则限制为 16 个节点。您可以通过将集群中的 CIDR 掩码更改为 /14
来扩展到 510 个节点。
在扩展集群网络地址范围时,您的集群必须使用 OVN-Kubernetes 网络插件。不支持其他网络插件。
修改集群网络 IP 地址范围时会有以下限制:
- 指定的 CIDR 掩码大小必须总是小于当前配置的 CIDR 掩码大小,因为您只能向已安装的集群添加更多节点来增加 IP 空间
- 无法修改主机前缀
- 使用覆盖默认网关配置的 Pod 必须在集群网络扩展后重新创建
14.1. 扩展集群网络 IP 地址范围
您可以扩展集群网络的 IP 地址范围。由于这个更改需要在集群中推出新的 Operator 配置,所以最多可能需要 30 分钟才能生效。
先决条件
-
安装 OpenShift CLI(
oc
)。 -
使用具有
cluster-admin
权限的用户登陆到集群。 - 确保集群使用 OVN-Kubernetes 网络插件。
流程
要获取集群的集群网络范围和主机前缀,请输入以下命令:
$ oc get network.operator.openshift.io \ -o jsonpath="{.items[0].spec.clusterNetwork}"
输出示例
[{"cidr":"10.217.0.0/22","hostPrefix":23}]
要扩展集群网络 IP 地址范围,请输入以下命令。使用上一命令输出返回的 CIDR IP 地址范围和主机前缀。
$ oc patch Network.config.openshift.io cluster --type='merge' --patch \ '{ "spec":{ "clusterNetwork": [ {"cidr":"<network>/<cidr>","hostPrefix":<prefix>} ], "networkType": "OVNKubernetes" } }'
其中:
<network>
-
指定您在上一步中获取的
cidr
字段的网络部分。您无法更改这个值。 <cidr>
-
指定网络前缀长度。例如,
14
。将此值更改为比上一步中的输出值小的值,以扩展集群网络范围。 <prefix>
-
指定集群的当前主机前缀。这个值必须与您在上一步中获取的
hostPrefix
字段的值相同。
示例命令
$ oc patch Network.config.openshift.io cluster --type='merge' --patch \ '{ "spec":{ "clusterNetwork": [ {"cidr":"10.217.0.0/14","hostPrefix": 23} ], "networkType": "OVNKubernetes" } }'
输出示例
network.config.openshift.io/cluster patched
要确认配置是活跃的,请输入以下命令。可能需要 30 分钟才能使此更改生效。
$ oc get network.operator.openshift.io \ -o jsonpath="{.items[0].spec.clusterNetwork}"
输出示例
[{"cidr":"10.217.0.0/14","hostPrefix":23}]