25.8. 转换为 IPv4/IPv6 双栈网络
作为集群管理员,您可以将 IPv4 单栈集群转换为支持 IPv4 和 IPv6 地址系列的双网络集群网络。转换为双栈后,所有新创建的 pod 都启用了双栈。
在裸机、VMware vSphere、IBM Power、IBM Z 基础架构和单一节点 OpenShift 集群上置备的集群上支持双栈网络。
在使用双栈网络时,您无法使用 IPv4 映射 IPv6 地址,如 ::FFFF:198.51.100.1
,其中需要 IPv6。
25.8.1. 转换为双栈集群网络 复制链接链接已复制到粘贴板!
作为集群管理员,您可以将单堆栈集群网络转换为双栈集群网络。
转换为双栈网络后,只有新创建的 pod 会被分配 IPv6 地址。必须重新创建在转换前创建的所有 pod,才能接收 IPv6 地址。
先决条件
-
已安装 OpenShift CLI(
oc
)。 -
使用具有
cluster-admin
权限的用户登陆到集群。 - 集群使用 OVN-Kubernetes 网络插件。
- 集群节点具有 IPv6 地址。
- 您已根据基础架构配置了启用了 IPv6 的路由器。
流程
要为集群和服务网络指定 IPv6 地址块,请创建一个包含以下 YAML 的文件:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要修补集群网络配置,请输入以下命令:
oc patch network.config.openshift.io cluster \ --type='json' --patch-file <file>.yaml
$ oc patch network.config.openshift.io cluster \ --type='json' --patch-file <file>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 其中:
file
指定您在上一步中创建的文件的名称。
输出示例
network.config.openshift.io/cluster patched
network.config.openshift.io/cluster patched
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
完成以下步骤以验证,集群网络是否可以识别您在上一步中指定的 IPv6 地址块。
显示网络配置:
oc describe network
$ oc describe network
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
25.8.2. 转换为单堆栈集群网络 复制链接链接已复制到粘贴板!
作为集群管理员,您可以将双栈集群网络转换为单堆栈集群网络。
如果您最初将 IPv4 单堆栈集群网络转换为双栈集群,则只能转换回 IPv4 单堆栈集群,而不是 IPv6 单堆栈集群网络。相同限制适用于对 IPv6 单堆栈集群网络的转换(只能转换回 IPv6)。
先决条件
-
已安装 OpenShift CLI(
oc
)。 -
使用具有
cluster-admin
权限的用户登陆到集群。 - 集群使用 OVN-Kubernetes 网络插件。
- 集群节点具有 IPv6 地址。
- 您已启用了双栈网络。
流程
运行以下命令来编辑
networks.config.openshift.io
自定义资源 (CR):oc edit networks.config.openshift.io
$ oc edit networks.config.openshift.io
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
删除在 "Converting to a dual-stack cluster network " 步骤中添加到
cidr
和hostPrefix
参数中的 IPv4 或 IPv6 配置。