在 Kubernetes 集群中,NodePort 默认范围是 30000-32767,某些情况下,因为您所在公司的网络策略限制,您可能需要修改 NodePort 的端口范围,本文描述了具体的操作方法。
使用 kubeadm 安装 K8S 集群的情况下,您的 Master 节点上会有一个文件
/etc/kubernetes/manifests/kube-apiserver.yaml,修改此文件,向其中添加 --service-node-port-range=20000-22767 (请使用您自己需要的端口范围),如下所示:执行以下命令,重启 apiserver
执行以下命令,验证修改是否生效:
输出结果如下所示:(此时,我们可以看到,apiserver 已经使用新的命令行参数启动)
注意
- 对于已经创建的NodePort类型的Service,您需要删除重新创建
- 如果您的集群有多个 Master 节点,您需要逐个修改每个节点上的
/etc/kubernetes/manifests/kube-apiserver.yaml文件,但重启 apiserver只需在一台master节点上操作即可.
- Author:Hang Ke
- URL:https://hang.ke/article/k8s-nodeport-range
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!
Relate Posts
