《Kubernetes故障篇:had untolerated taint node.kubernetes.io/not-ready》

一、环境信息

操作系统 K8S版本 containerd版本
Centos7.6 v1.24.17 v1.6.12

二、背景信息

部署完K8S集群后,使用如下命令测试集群,进入pod中发现无法解析k8s默认域名和无法ping通外网,宿主机主机是可以ping通外网的

bash 复制代码
root@k8s-master-63:~#  kubectl run busybox --image busybox:1.28 --restart=Never --rm -it busybox -- sh
If you don't see a command prompt, try pressing enter.
/ # nslookup kubernetes.default

通过以下命令检查网络插件coredns的状态,发现coredns报错had untolerated taint {node.kubernetes.io/not-ready

bash 复制代码
root@k8s-master-63:~# kubectl describe pods -n kube-system calico-kube-controllers-55fc758c88-s9dtz
Events:
  Type     Reason            Age   From               Message
  ----     ------            ----  ----               -------
  Warning  FailedScheduling  23m   default-scheduler  0/4 nodes are available: 4 node(s) had untolerated taint {node.kubernetes.io/not-ready: }. preemption: 0/4 nodes are available: 4 Preemption is not helpful for scheduling.
  Normal   Scheduled         20m   default-scheduler  Successfully assigned kube-system/coredns-7f74c56694-q8dz6 to k8s-master-63
  Normal   Pulled            20m   kubelet            Container image "registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:v1.8.6" already present on machine
  Normal   Created           20m   kubelet            Created container coredns
  Normal   Started           20m   kubelet            Started container coredns

三、解决方法

报错原因:k8s节点不可调度。

bash 复制代码
# 1、解除调度
kubectl uncordon k8s-master-63
kubectl uncordon k8s-master-64
kubectl uncordon k8s-master-65
kubectl uncordon k8s-worker-66

# 2、删除coredns
kubectl delete pod -n kube-system coredns-7f74c56694-24wql
kubectl delete pod -n kube-system coredns-7f74c56694-hsvpk

如下所示,则表示正常

bash 复制代码
root@k8s-master-63:~# kubectl run busybox --image busybox:1.28 --restart=Never --rm -it busybox -- sh
If you don't see a command prompt, try pressing enter.
/ # nslookup kubernetes.default
Server:    10.96.0.10
Address 1: 10.96.0.10 kube-dns.kube-system.svc.cluster.local

Name:      kubernetes.default
Address 1: 10.96.0.1 kubernetes.default.svc.cluster.local
/ # 
/ # ping www.baidu.com
PING www.baidu.com (14.119.104.189): 56 data bytes
64 bytes from 14.119.104.189: seq=0 ttl=56 time=18.861 ms
64 bytes from 14.119.104.189: seq=1 ttl=56 time=9.493 ms
64 bytes from 14.119.104.189: seq=2 ttl=56 time=26.687 ms
64 bytes from 14.119.104.189: seq=3 ttl=56 time=25.154 ms

总结:整理不易,如果对你有帮助,可否点赞关注一下?

更多详细内容请参考:企业级K8s集群运维实战

相关推荐
MaCa .BaKa9 分钟前
35-疫苗预约管理系统(微服务)
spring boot·redis·微服务·云原生·架构·springcloud
竹木一5402 小时前
Docker拉取镜像代理配置实践与经验分享
经验分享·docker·容器
破 风3 小时前
Docker启动mysql容器时找不到 mysqlx.sock 和 mysqld.sock
mysql·docker·容器
阿里云云原生3 小时前
SAE 实现应用发布全过程可观测
云原生
鱼饼6号4 小时前
Jenkins Pipeline 构建 CI/CD 流程
linux·运维·服务器·ci/cd·容器·jenkins
Ares-Wang5 小时前
kubernetes》》k8s》》Heml
云原生·容器·kubernetes
阿里云大数据AI技术5 小时前
千万级数据秒级响应!碧桂园基于 EMR Serverless StarRocks 升级存算分离架构实践
大数据·云原生·serverless
容器魔方6 小时前
Bilibili、中电信人工智能科技、商汤科技、联通云等正式加入Volcano社区用户组
云原生·容器·云计算
努力的IT小胖子7 小时前
Docker 镜像下载太慢?手把手教你修改镜像源,速度起飞!
后端·docker·容器
阿里云云原生7 小时前
MCP云托管最优解,揭秘国内最大MCP中文社区背后的运行时
云原生