报错:
"ERROR:K8SInternalError Service \"ipaa-app\" is invalid: spec.ports[0].nodePort: Invalid value: 8777: provided port is not in the valid range. The range of valid ports is 30000-32768"
这个错误提示是在 Kubernetes(K8s)中部署服务时遇到的问题。具体错误是:Service "ipaa-app" 是无效的,因为 spec.ports[0].nodePort 的值不在有效的范围内;NodePort默认的有效端口范围是 30000-32768。
如对于独立部署集群,我们可以登录master节点,找到/etc/kubernetes/manifests/kube-apiserver.yaml 文件修改NodePort端口范围;
需要注意,所有master节点都需要进行修改。
[root@wzx ~]# vim /etc/kubernetes/manifests/kube-apiserver.yaml
修改了 NodePort 端口范围后,Kubernetes APIServer 会自动感知到这个变化,并在下一次服务部署时开始使用新的范围。
请注意,对于已经创建的 Service,修改 NodePort 端口范围后,并不会自动将现有的 Service 的端口迁移到新范围内。
这意味着如果您修改了NodePort端口范围,并且已经创建了使用旧范围端口的 Service,那么这些 Service 仍然会使用旧的端口。
因此,对于已经创建的 Service,如果您希望将其端口迁移到新的范围内,您需要手动更新这些 Service 的配置,并重新部署它们,以使它们使用新的 NodePort 端口范围。
总结起来,修改 NodePort 端口范围后,Kubernetes APIServer 会自动适应新的范围,但对于已经创建的 Service,您需要手动更新它们的配置并重新部署,不需要重启 APIServer。