操作系统信息
虚拟机,Centos7.9,16C/32G 3master,3node
Kubernetes版本信息
Client Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.10", GitCommit:"eae22ba6238096f5dec1ceb62766e97783f0ba2f", GitTreeState:"clean", BuildDate:"2022-05-24T12:56:35Z", GoVersion:"go1.16.15", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.5", GitCommit:"aea7bbadd2fc0cd689de94a54e5b7b758869d691", GitTreeState:"clean", BuildDate:"2021-09-15T21:04:16Z", GoVersion:"go1.16.8", Compiler:"gc", Platform:"linux/amd64"}
容器运行时
Client: Version: 20.10.8
Server: Docker Engine - Community Engine: Version: 20.10.8 API version: 1.41 (minimum version 1.12) Go version: go1.16.6 Git commit: 75249d8 Built: Fri Jul 30 19:55:09 2021 OS/Arch: linux/amd64 Experimental: false containerd: Version: v1.4.9 GitCommit: e25210fe30a0a703442421b0f60afac609f950a3 runc: Version: 1.0.1 GitCommit: v1.0.1-0-g4144b638 docker-init: Version: 0.19.0 GitCommit: de40ad0
KubeSphere版本信息
v3.2.0。在线升级。使用kk在线升级。
问题是什么
现象:
使用kk,从k8s v1.21.5
和kubesphere v3.2.0
升级到v1.22.10
和v3.3.0
的过程中,kubesphere成功升级到v3.3.0,但是k8s在升级过程中,报错找不到kube-dns
服务。终止后,查看pods状态,kubesphere-system中一些依赖dns解析的服务无法启动,如redis-ha等,错误信息显示无法正常解析内部服务的dns。
查看coredns显示服务和pods都正常运行。
跟随k8s的文档进行排查:https://kubernetes.io/zh-cn/docs/tasks/administer-cluster/dns-debugging-resolution/
注意到文档中说明,应该存在kube-dns服务

把coredns的服务删除,并给予coredns服务的yaml创建名为kube-dns的服务,然后集群恢复正常。
查看测试版正常升级的kubesphere集群,也是coredns服务,没有kube-dns。
问题:
- 我们的集群初始是使用kk在线安装的,为什么不像官方文档所说的存在kube-dns服务,且有的集群能正常升级,有的不能?
- 我删除的coredns服务,创建了kube-dns服务,是否会造成潜在影响?