请问下Nacos。在 k8s 部署的 nacos statefulset 集群,如果想加就绪探针,是要在 headless service 中加上 publishNotReadyAddresses: true 参数吗?
如果你要在 k8s 部署的 nacos statefulset 集群中加入就绪探针,可以通过在 headless service 中添加 publishNotReadyAddresses: true 参数来实现。
publishNotReadyAddresses 参数可以让 Kubernetes 将未就绪的 Pod 的 IP 地址也发布到服务的 DNS 记录中,这样服务就可以在初始化或重启期间自动发现新的 Pod。
具体方法是,在 headless service 的 YAML 配置文件中添加以下参数:
apiVersion: v1 kind: Service metadata: name: nacos spec: clusterIP: None ports: - name: http port: 8848 protocol: TCP targetPort: 8848 publishNotReadyAddresses: true selector: app: nacos type: ClusterIP 这样,当有新的 Pod 创建时,服务就会自动更新 DNS 记录,以便其他服务能够找到新的 Pod。
需要注意的是,如果你使用了 readinessProbe,在未就绪的 Pod 上也会执行探针,如果探针失败,就会将该 Pod 标记为未就绪,并将其从 DNS 记录中删除。如果你要在 nacos statefulset 集群中使用 readinessProbe,建议配置合适的探针参数,以确保集群中的所有 Pod 都处于就绪状态。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。