第 12 章 配置节点端口服务范围
在集群安装过程中,您可以配置节点端口范围来满足集群的要求。在集群安装后,只有集群管理员可以将范围扩展为安装后任务。如果您的集群使用大量节点端口,请考虑根据集群的要求增加可用端口范围。
如果您没有在集群安装过程中设置节点端口范围,则默认范围 30000-32768
应用到您的集群。在这种情况下,您可以在任一端扩展范围,但您必须在新端口范围中保留 30000-32768
。
红帽没有在默认的端口范围 30000-32768
之外执行测试。对于默认端口范围以外的范围,请确保测试以验证扩展节点端口范围不会影响您的集群。特别是,请确保存在:
- 不与主机进程已经使用的任何端口重叠
- 没有与已经由使用主机网络配置的 pod 使用的端口重叠
如果您扩展范围和端口分配问题,请创建新集群并为其设置所需的范围。
如果扩展节点端口范围和 OpenShift CLI (oc
)会停止工作,因为端口与 OpenShift Container Platform API 服务器冲突,您必须创建新集群。
12.1. 扩展节点端口范围 复制链接链接已复制到粘贴板!
您可以扩展集群的节点端口范围。安装 OpenShift Container Platform 集群后,您无法在当前配置的范围内缩小节点端口范围。
红帽没有在默认的端口范围 30000-32768
之外执行测试。对于默认端口范围以外的范围,请确保测试以验证扩展节点端口范围是否不会影响您的集群。如果您扩展范围和端口分配问题,请创建新集群并为其设置所需的范围。
先决条件
-
已安装 OpenShift CLI (
oc
)。 -
以具有
cluster-admin
权限的用户身份登录集群。 -
您确保集群基础架构允许访问扩展范围中存在的端口。例如,如果您将节点端口范围扩展到
30000-32900
,您的防火墙或数据包过滤配置必须允许包含端口范围30000-32900
。
流程
要扩展集群用来管理 pod 流量的
network.config.openshift.io
对象中的serviceNodePortRange
参数的范围,请输入以下命令:oc patch network.config.openshift.io cluster --type=merge -p \ '{
$ oc patch network.config.openshift.io cluster --type=merge -p \ '{ "spec": { "serviceNodePortRange": "<port_range>" } }'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 其中:
<port_range>
-
指定您扩展的范围,如
30000-32900
。
提示您还可以应用以下 YAML 来更新节点端口范围:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
network.config.openshift.io/cluster patched
network.config.openshift.io/cluster patched
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
要确认更新的配置处于活跃状态,请输入以下命令。应用更新可能需要几分钟时间。
oc get configmaps -n openshift-kube-apiserver config \ -o jsonpath="{.data['config\.yaml']}" | \ grep -Eo '"service-node-port-range":["[[:digit:]]+-[[:digit:]]+"]'
$ oc get configmaps -n openshift-kube-apiserver config \ -o jsonpath="{.data['config\.yaml']}" | \ grep -Eo '"service-node-port-range":["[[:digit:]]+-[[:digit:]]+"]'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
"service-node-port-range":["30000-32900"]
"service-node-port-range":["30000-32900"]
Copy to Clipboard Copied! Toggle word wrap Toggle overflow