运维良药,K8S日常故障处理集锦

这篇具有很好参考价值的文章主要介绍了运维良药,K8S日常故障处理集锦。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题1:K8S集群服务访问失败?

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

原因分析:证书不能被识别,其原因为:自定义证书,过期等。

解决方法:更新证书即可。

问题2:K8S集群服务访问失败?

curl: (7) Failed connect to 10.103.22.158:3000; Connection refused

原因分析:端口映射错误,服务正常工作,但不能提供服务。

解决方法:删除svc,重新映射端口即可。

kubectl delete svc nginx-deployment

问题3:K8S集群服务暴露失败?

Error from server (AlreadyExists): services "nginx-deployment" already exists

原因分析:该容器已暴露服务了。

解决方法:删除svc,重新映射端口即可。

问题4:外网无法访问K8S集群提供的服务?**

原因分析:K8S集群的type为ClusterIP,未将服务暴露至外网。

解决方法:修改K8S集群的type为NodePort即可,于是可通过所有K8S集群节点访问服务。

kubectl edit svc nginx-deployment

问题5:pod状态为ErrImagePull?

readiness-httpget-pod 0/1 ErrImagePull 0 10s

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

原因分析:image无法拉取;

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

解决方法:更换镜像即可。

问题6:创建init C容器后,其状态不正常?

NAME READY STATUS RESTARTS AGEmyapp-pod 0/1 Init:0/2 0 20s

原因分析:查看日志发现,pod一直出于初始化中;然后查看pod详细信息,定位pod创建失败的原因为:初始化容器未执行完毕。

Error from server (BadRequest): container "myapp-container" in pod "myapp-pod" is waiting to start: PodInitializing

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

waiting for myservice
Server: 10.96.0.10Address: 10.96.0.10:53
** server can't find myservice.default.svc.cluster.local: NXDOMAIN
*** Can't find myservice.svc.cluster.local: No answer*** Can't find myservice.cluster.local: No answer*** Can't find myservice.default.svc.cluster.local: No answer*** Can't find myservice.svc.cluster.local: No answer*** Can't find myservice.cluster.local: No answer

解决方法:创建相关service,将SVC的name写入K8S集群的coreDNS服务器中,于是coreDNS就能对POD的initC容器执行过程中的域名解析了。

kubectl apply -f myservice.yaml

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

NAME READY STATUS RESTARTS AGE
myapp-pod 0/1 Init:1/2 0 27mmyapp-pod 0/1 PodInitializing 0 28mmyapp-pod 1/1 Running 0 28m

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

问题7:探测存活pod状态为CrashLoopBackOff?

原因分析:镜像问题,导致容器重启失败。

解决方法:更换镜像即可。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

问题8:POD创建失败?

readiness-httpget-pod 0/1 Pending 0 0s
readiness-httpget-pod 0/1 Pending 0 0s
readiness-httpget-pod 0/1 ContainerCreating 0 0s
readiness-httpget-pod 0/1 Error 0 2s
readiness-httpget-pod 0/1 Error 1 3s
readiness-httpget-pod 0/1 CrashLoopBackOff 1 4s
readiness-httpget-pod 0/1 Error 2 15s
readiness-httpget-pod 0/1 CrashLoopBackOff 2 26s
readiness-httpget-pod 0/1 Error 3 37s
readiness-httpget-pod 0/1 CrashLoopBackOff 3 52s
readiness-httpget-pod 0/1 Error 4 82s
原因分析:镜像问题导致容器无法启动。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

解决方法:更换镜像。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

问题9:POD的ready状态未进入?

readiness-httpget-pod 0/1 Running 0 116s

原因分析:POD的执行命令失败,无法获取资源。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

解决方法:进入容器内部,创建yaml定义的资源

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

问题10:pod创建失败?

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

原因分析:yml文件内容出错—-使用中文字符;

解决方法:修改myregistrykey内容即可。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

11、kube-flannel-ds-amd64-ndsf7插件pod的status为Init:0/1?

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

排查思路:kubectl -n kube-system describe pod kube-flannel-ds-amd64-ndsf7 #查询pod描述信息;

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

原因分析:k8s-slave1节点拉取镜像失败。

解决方法:登录k8s-slave1,重启docker服务,手动拉取镜像。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s-master节点,重新安装插件即可。

kubectl create -f kube-flannel.yml;kubectl get nodes

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

12、K8S创建服务status为ErrImagePull?

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

排查思路:

kubectl describe pod test-nginx

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

原因分析:拉取镜像名称问题。

解决方法:删除错误pod;重新拉取镜像;

kubectl delete pod test-nginx;kubectl run test-nginx --image=10.0.0.81:5000/nginx:alpine

13、不能进入指定容器内部?

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

原因分析:yml文件comtainers字段重复,导致该pod没有该容器。

解决方法:去掉yml文件中多余的containers字段,重新生成pod。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

14、创建PV失败?

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

原因分析:pv的name字段重复。

解决方法:修改pv的name字段即可。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

15、pod无法挂载PVC?

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

原因分析:pod无法挂载PVC。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

accessModes与可使用的PV不一致,导致无法挂载PVC,由于只能挂载大于1G且accessModes为RWO的PV,故只能成功创建1个pod,第2个pod一致pending,按序创建时则第3个pod一直未被创建;解决方法:修改yml文件中accessModes或PV的accessModes即可。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

16、问题:pod使用PV后,无法访问其内容?

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

原因分析:nfs卷中没有文件或权限不对。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

解决方法:在nfs卷中创建文件并授予权限。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

17、查看节点状态失败?

Error from server (NotFound): the server could not find the requested resource (get services http:heapster:)

原因分析:没有heapster服务。

解决方法:安装promethus监控组件即可。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

18、pod一直处于pending’状态?

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

原因分析:由于已使用同样镜像发布了pod,导致无节点可调度。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

解决方法:删除所有pod后部署pod即可。

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

19、helm安装组件失败?

[root@k8s-master01 hello-world]# helm install
Error: This command needs 1 argument: chart nam
[root@k8s-master01 hello-world]# helm install ./Error: no Chart.yaml exists in directory "/root/hello-world"

原因分析:文件名格式不对。

解决方法:mv chart.yaml Chart.yaml

k8s运维常见故障,kubernetes,docker,运维,容器,云原生

end文章来源地址https://www.toymoban.com/news/detail-797303.html

到了这里,关于运维良药,K8S日常故障处理集锦的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • K8S故障排查

    故障现象:部署pod时,报错没发调度到节点。 排查步骤: 1、查看集群的状态 2、查看k8s组件的状态-kubelet,kube-apiservice 3、查看docker的Cgroup driver和k8s的Cgroup driver类型,发现docker是cgroup,k8s是systemd,问题点找到了。

    2024年02月15日
    浏览(38)
  • K8S:K8S自动化运维容器Docker集群

    (1)K8S全程为Kubernetes,由于K到S直接有8个字母简称为K8S。 (2)版本:目前一般是1.18~1.2.0,后续可能会到1.24-1.26,1.24版本后丢弃了docker(如需要使用需要第三方插件配合),目前最新版本是1.27 (3)官网:https://kubernetes.io GitHub:GitHub - kubernetes/kubernetes: Production-Grade Container S

    2024年02月10日
    浏览(57)
  • K8S - 架构、常用K8S命令、yaml资源清单部署、Ingress、故障排查、存储卷

    K8S官网文档:https://kubernetes.io/zh/docs/home/ 学习东西还是要从官方文档入手; 用于管理、扩展、自动部署容器; 其实就是 对多个跨机器的Docker集群; 服务发现和负载均衡 Kubernetes 可以使用 DNS 名称或自己的 IP 地址来暴露容器。 如果进入容器的流量很大, Kubernetes 可以负载均

    2024年02月09日
    浏览(48)
  • K8S容器的一则故障记录

       kubelet 、pod持久化 metrics/vlalphal容器 kube-controller、apiserver     XXX反馈说某某业务服务异常,无法启动,需要进行协助排查。经常会接到这样一个需求,一开始无法清楚知道具体什么问题,需要跟一线运维人员详细做沟通,了解故障问题的细节。     根据一线运维人

    2024年02月02日
    浏览(33)
  • K8S:K8S自动化运维容器化(Docker)集群程序

    目录 一、K8S概述 1、什么是K8S 2、为什么要用K8S 3、作用及功能 二、K8S的特性 1、弹性伸缩 2、自我修复 3、服务发现和复制均衡 5、自动发布和回滚 6、集中化配置管理和秘钥管理 7、存储编排 8、任务批量处理运行 三、K8S的集群架构 四、K8S的核心组件 1、Master组件 ①Kube-apis

    2024年02月12日
    浏览(41)
  • K8s Error: ImagePullBackOff 故障排除

    起因是要在一组k8s环境下做个Prometheus的测试,当时虚拟机用完直接暂停了. 启动完master和node节点后重启了这些节点. 当检查dashboard时候发现Pod处于ImagePullBackOff状态,使用命令查看详细情况 发现镜像拉取失败 这个故障明显是由于node节点拉取harbor中镜像失败造成.那么可能的原因就

    2024年01月25日
    浏览(31)
  • k8s运维操作分享

    K8s运维日常操作 使用K8s部署项目的优点 使用K8s部署项目的优点包括: 1.可扩展性高:K8s可以自动管理容器的扩展和缩容,使得项目能够应对高流量的压力。 2.高可用性:K8s可以自动保证容器的高可用性,在容器故障时自动重启容器。 3.资源管理:K8s可以自动管理容器的资源

    2024年02月12日
    浏览(27)
  • k8s发生故障,可以从哪些方面排查

    目录 第一方面:审视集群状态 第二方面:追踪事件日志 第三方面:聚焦Pod状态 第四方面:检查网络连通性 第五方面:审视存储配置 第六方面:研究容器日志 K8S的集群状态是排查故障的关键起点。使用kubectl get nodes命令来检查节点状态。如果有节点未能就绪或出现异常状态

    2024年02月13日
    浏览(36)
  • K8s:Kubernetes 故障排除方法论

    博文内容为节译整理 文中提到的工具大部分是商业软件,不是开源的,作为了解 理解不足小伙伴帮忙指正 对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的,是人的逃避方式,是对大众理想的懦弱回

    2024年02月15日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包