51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

k8s修改service 的NodePort类型的端口范围

修改svc的NodePort类型的端口范围

如果不修改: 默认的端口范围是 30000- 32767

那怎么修改这个端口范围呢?

步骤如下:

(1)修改API-Server静态Pod的资源清单

vim  /etc/kubernetes/manifests/kube-apiserver.yaml

...
spec:
containers:
- command:
- kube-apiserver
- --service-node-port-range=3000-50000  # 进行添加这一行即可
...

(2)移动资源清单

mv /etc/kubernetes/manifests/kube-apiserver.yaml  /tmp/
mv /tmp/kube-apiserver.yaml /etc/kubernetes/manifests/

只有这样才生效

(3)创建SVC的NodePort类型,验证端口是否可以设置为8080

[root@master231 manifests]# cat /manifests/services/02-svc-NodePort.yaml

apiVersion: v1
kind: Service
metadata:
  name: myweb-nodeport
spec:
  # 指定svc的类型为NodePort,也就是在默认的ClusterIP基础之上多监听所有worker节点的端口而已。
  type: NodePort
  # 基于标签选择器关联Pod
  selector:
    apps: web
  # 配置端口映射
  ports:
    # 指定Service服务本身的端口号
  - port: 8888
    # 后端Pod提供服务的端口号
    targetPort: 80
    # 如果是NodePort类型,可以指定NodePort监听的端口号,若不指定,则随机生成。
    # nodePort: 30080
    # 默认端口范围是"30000-32767",官方规则,如果想要修改该范围,需要修改api-server启动时的参数.
    nodePort: 50000

kubectl get svc 

赞(4)
未经允许不得转载:工具盒子 » k8s修改service 的NodePort类型的端口范围