K8S故障排除方法 - 笃行之 - 博客园

标签: | 发表时间:2020-07-05 19:54 | 作者:
出处:https://www.cnblogs.com


1.查看pods哪些是有问题的,Runningg正常,其他异常;
/opt/kubernetes/bin/kubectl get pods --all-namespaces -owide
NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE
default nginx-dbddb74b8-d78cd 1/1 Running 0 17m 172.17.90.3 192.168.18.148 <none>

2.查看异常pod的详情
/opt/kubernetes/bin/kubectl describe pods nginx-dbddb74b8-2hthr
我这边异常信息如下:
Warning FailedScheduling 32m (x2 over 32m) default-scheduler 0/2 nodes are available: 2 node(s) had taints that the pod didn't tolerate.
解决办法:参考:https://github.com/kubernetes-sigs/kubespray/issues/2798

3.查看异常服务的详情
/opt/kubernetes/bin/kubectl describe services nginx

4.查看集群node的状态
/opt/kubernetes/bin/kubectl get nodes -o wide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
192.168.18.147 NotReady <none> 62m v1.12.1 192.168.18.147 <none> CentOS Linux 7 (Core) 3.10.0-862.el7.x86_64 docker://18.9.5

我这边是NotReady状态,经排查发现, node18.147上面的kubelet kube-proxy挂掉了,服务启来后就可以了


5.查看node的详情
/opt/kubernetes/bin/kubectl describe node 192.168.18.147

 

Warning FailedScheduling 32m (x2 over 32m) default-scheduler 0/2 nodes are available: 2 node(s) had taints that the pod didn't tolerate.
这个的具体解决方法:
我这边查看pod详情,Taints显示如下:
Taints: node.kubernetes.io/unreachable:NoSchedule

执下如下命令后即可
[[email protected] tmp]# /opt/kubernetes/bin/kubectl taint nodes --all node.kubernetes.io/unreachable-
node/192.168.18.147 untainted
node/192.168.18.148 untainted

 

 

6.查看集群组件状态
/opt/kubernetes/bin/kubectl get cs
NAME STATUS MESSAGE ERROR
scheduler Healthy ok
controller-manager Healthy ok
etcd-1 Healthy {"health":"true"}
etcd-2 Healthy {"health":"true"}
etcd-0 Healthy {"health":"true"}


7.查看服务集群IP、端口、运行时长
/opt/kubernetes/bin/kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.0.0.1 <none> 443/TCP 4h51m
nginx NodePort 10.0.0.215 <none> 88:40675/TCP 92m

 

相关 [k8s 方法 博客] 推荐:

K8S故障排除方法 - 笃行之 - 博客园

- -
1.查看pods哪些是有问题的,Runningg正常,其他异常;. 解决办法:参考:https://github.com/kubernetes-sigs/kubespray/issues/2798. 我这边是NotReady状态,经排查发现, node18.147上面的kubelet kube-proxy挂掉了,服务启来后就可以了.

k8s docker集群搭建 - CSDN博客

- -
一、Kubernetes系列之介绍篇.     - 一次构建,到处运行. 2.什么是kubernetes.   首先,他是一个全新的基于容器技术的分布式架构领先方案. Kubernetes(k8s)是Google开源的容器集群管理系统(谷歌内部:Borg). 在Docker技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规模容器集群管理的便捷性.

深入掌握K8S Pod - Yabea - 博客园

- -
K8S configmap介绍. Pod是k8s中最小的调度单元,包含了一个“根容器”和其它用户业务容器. 如果你使用过k8s的话,当然会了解pod的基本使用,但是为了更好的应用,你需要深入了解pod的配置、调度、升级和扩缩容等. pod包含一个或多个相对紧密耦合的容器,处于同一个pod中的容器共享同样的存储空间、IP地址和Port端口.

K8S部署SpringBoot应用_都超的博客-CSDN博客_k8s springboot

- -
K8S环境机器做部署用,推荐一主双从. Docker Harbor私有仓库,准备完成后在需要使用仓库的机器docker login. 开发机器需要Docker环境,build及push使用. 一、构建基本Springboot工程,本例所用版本及结构如下图. 创建测试代码,简单打印几行log. .

k8s部署springcloud架构的一些心得体会_浅抒流年的博客-CSDN博客

- -
最近在研究k8s,顺便将公司springcloud架构改造了一下,以更好适应用k8s来部署. 期间遇到了一些问题,自己想办法解决了. 提供者和消费者向eureka注册时的问题. 大家都知道,springcloud架构是有一个注册中心的,无论是服务提供者还是服务消费者都要注册到该注册中心上. 在上一篇博文中,已经介绍过如何把eureka部署到k8s上.

CentOS7 安装 K8S

- - 企业架构 - ITeye博客
前提:VirtualBox CentOS7. 物理机IP   192.168.18.8. 虚拟机1IP:192.168.18.100(VMaster master). 虚拟机2IP:192.168.18.101(VServer1 node1). 虚拟机3IP:192.168.18.102(VServer2 node2).

容器平台选型的十大模式:Docker、DC/OS、K8S 谁与当先?(上)-社区博客-网易云

- -
无论是在社区,还是在同客户交流的过程中,总会被问到到底什么时候该用 Docker. 如果使用容器,应该使用哪个容器平台. 显而易见,我不会直接给大家一个答案,而是希望从技术角度进行分析具体的场景. 例如客户是大公司还是小公司,将部署小集群还是大集群,倾向于私有云还是公有云,已经采购了 IaaS 还是没有 IaaS,IT 运维能力强还是弱,是否需要物理机、虚拟机、容器的混合部署,是一般的并发系统还是高并发,这里面所应该做的技术选型都不一样.

为什么 K8s 在阿里能成功?| 问底中国 IT 技术演进 - 阿里巴巴云原生 - 博客园

- -
曾凡松 阿里云云原生应用平台高级技术专家. 张振 阿里云云原生应用平台高级技术专家. 导读:本文描述了阿里巴巴在容器管理领域的技术演进历程,解读了为什么 K8s 最终能够大获成功的原因,以及到今年 双11 阿里巴巴内部的 K8s 应用情况. 内容着重描述了阿里巴巴基于 K8s 的云原生改造实践过程的三大能力升级,在对应能力升级过程中沉淀的技术解决方案,以及通过这些能力升级所取得的业务价值.

浅谈 k8s ingress controller 选型 - 知乎

- -
大家好,先简单自我介绍下,我叫厉辉,来自腾讯云. 业余时间比较喜欢开源,现在是Apache APISIX PPMC. 今天我来简单给大家介绍下 K8S Ingress 控制器的选型经验,今天我讲的这些内容需要大家对 K8S 有一定的了解,下面是我的分享. 阅读本文需要熟悉以下基本概念:. 集群:是指容器运行所需云资源的集合,包含了若干台云服务器、负载均衡器等云资源.

使用kube-proxy让外部网络访问K8S service的ClusterIP

- - zzm
kubernetes版本大于或者等于1.2时,外部网络(即非K8S集群内的网络)访问cluster IP的办法是:. 修改master的/etc/kubernetes/proxy,把KUBE_PROXY_ARGS=”“改为KUBE_PROXY_ARGS=”–proxy-mode=userspace”.