最近由于master整个挂掉,导致相关一些基础服务瘫掉,修复中测试有些节点网络又出现不通的情况
正常的启动相关一些服务后,测试一些节点,比较费劲,还有进入pod,以及还有可能涉及命名空间操作
这里可以这样,当然前提你的coredns是正常的,而且我用的版本是

版本信息
Calico Version v3.1.3
calico/node:v3.1.3
calico/cni:v3.1.3
calico/kube-controllers:v3.1.3

hyperkube(KUBE_VERSION="1.10.1")
caliconode.v3.1.0.tar
cni.v3.1.3.tar
kube-controllers.v3.1.3.tar
nginx.1.13.12-alpine.tar
node-problem-detector_v0.4.1.tar
pause3.0.tar
docker 18.03.0-ce
系统是centos7.2或7.9
内核为3.10

//查看coredns pod

[root@etcd2 system]# kubectl get pod -n kube-system | grep core
coredns-5847d5f4b5-lnlld 1/1 Running 0 2d
coredns-5847d5f4b5-x4rqm 1/1 Running 0 1d

coredns的集群访问地址

[root@etcd2 system]# kubectl get svc -o wide -n kube-system | grep dns
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR
kube-dns ClusterIP 172.17.0.2 <none> 53/UDP,53/TCP 3y k8s-app=kube-dns

我这里用三个pod分散在三个节点上

[root@etcd2 system]# kubectl get pod -o wide
NAME READY STATUS RESTARTS AGE IP NODE
a-node-0 1/1 Running 0 22h 172.17.31.39 ht21.node
b-node-0 1/1 Running 54 1d 172.17.31.54 ht22.node
c-node-1 1/1 Running 109 1d 172.17.246.232 ht23.node

进入coredns pod里面进行,相当于反方向操作,而不是进入某个pod去ping 比如:eureka服务,config服务或其他的pod ip

[root@etcd2 system]# kubectl exec -it coredns-5847d5f4b5-x4rqm -n kube-system -- /bin/sh
/ # ping 172.17.31.39 //检查和其他pod是否正常联通
PING 172.17.31.39 (172.17.31.39): 56 data bytes
64 bytes from 172.17.31.39: seq=0 ttl=62 time=0.506 ms
64 bytes from 172.17.31.39: seq=1 ttl=62 time=0.451 ms

[root@etcd2 system]# kubectl exec -it coredns-5847d5f4b5-x4rqm -n kube-system -- /bin/sh
/ # ping 172.17.31.54
PING 172.17.31.54 (172.17.31.54): 56 data bytes
64 bytes from 172.17.31.54: seq=0 ttl=62 time=0.409 ms
64 bytes from 172.17.31.54: seq=1 ttl=62 time=0.406 ms

/ # ping 172.17.246.232
PING 172.17.246.232 (172.17.246.232): 56 data bytes
64 bytes from 172.17.246.232: seq=0 ttl=62 time=0.331 ms
64 bytes from 172.17.246.232: seq=1 ttl=62 time=0.237 ms

/etc # cat resolv.conf
nameserver 10.11.12.1
nameserver 10.11.12.2

/ # ping www.baidu.com  //检查解析是否正常
PING www.baidu.com (180.101.49.12): 56 data bytes
64 bytes from 180.101.49.12: seq=0 ttl=51 time=27.266 ms

^C

//看ping的情况,很省力的就可以断定某个节点有问题,我们只要ping pod ip即可,如果不通,基本该节点的calico是有问题的
   有时候你用 calicoctl也发现不了异常情况。而且有些节点可能就是好的,如果你的机器多的情况下,反而比较奏效这种方法
   否则你进入某个pod里面去ping 可能就是目的地达到不的提示。

k8s,coredns内部测试node节点上的pod的calico是否正常的一个小技巧的更多相关文章

  1. 输出redis cluster 主从的对应关系,如果同一个主从关系的master和slave在同一个node节点上,在输出的对应关系末尾输出提示

    需求:输出redis cluster 主从的对应关系,如果同一个主从关系的master和slave在同一个node节点上,在输出的对应关系末尾输出提示. 为什么会有这样的需求呢?在重新搭建redis ...

  2. NodePort 只能在node节点上访问,外部无法访问

    创建了一个NodePort类型的jenkins service,node port 30000,node节点ip为192.168.56.101, 在node节点上通过浏览器能正常访问http://19 ...

  3. 创建node节点上kubeconfig文件

    #!/bin/bash#by love19791126 107420988@qq.com# 创建node节点上kubeconfig文件 在master节点部署#kubeconfig是用于Node节点上 ...

  4. k8s集群添加node节点(使用kubeadm搭建的集群)

    1.安装docker.kubelet.kubectl.kubeadm.socat # cat kubernets.repo[kubernetes]name=Kubernetesbaseurl=http ...

  5. 记录一个奇葩的问题:k8s集群中master节点上部署一个单节点的nacos,导致master节点状态不在线

    情况详细描述; k8s集群,一台master,两台worker 在master节点上部署一个单节点的nacos,导致master节点状态不在线(不论是否修改nacos的默认端口号都会导致master节 ...

  6. Kubernetes调整Node节点快速驱逐pod的时间

    在高可用的k8s集群中,当Node节点挂掉,kubelet无法提供工作的时候,pod将会自动调度到其他的节点上去,而调度到节点上的时间需要我们慎重考量,因为它决定了生产的稳定性.可靠性,更快的迁移可以 ...

  7. 关于node中的global,箭头函数的this的一个小问题

    this一直是一个JS中的困扰问题,这次在跑JS精粹的代码的时候顺带发现了Node里面全局变量的问题 var x = 1; var myObj = { x: 2 }; myObj.func = fun ...

  8. 【转】对于移动APP测试的一个小技巧

    目标:目前越来越多的应用要支持移动设备,html5的推出,方便了页面对移动app的支持,那么我们该如何有效的去测试同时支持app和web的代码?web的测试可以使用浏览器的一些工具来辅助测试,比如ff ...

  9. 开发使用Node.js的一个小技巧

    Node.js作为可以在服务器端运行的一门语言,其处理长连接.多请求的优势受到各大编程爱好者的追捧. 但是在开发调试方面却极为不方便,因为每次改动代码后,都需要终止当前进程,重启服务器.supervi ...

随机推荐

  1. lgP6232题解

    评蓝过分了吧,这题最多黄( 首先我们从挂钩的最上层向下走,假设这个挂杆的左边和右边一共有 \(k\) 件衣服. 若 \(k\) 是 \(2\) 的倍数,那么我们只能向左走(左边和右边的衣服一样多).反 ...

  2. CF1476D题解

    场上 \(O(n)\) 切掉的一道挺水的题. 首先向左走和向右走,一个很明显的结论是,如果向左走了一段距离又回到原点,那么方向是不会变的,所以只需要求出能够向左走的最远距离和向右走的最远距离,加起来即 ...

  3. 【面经】MyBatis常见面试问题

    1.什么是 MyBatis? 答:MyBatis 是一个可以自定义 SQL.存储过程和高级映射的持久层框架. 2.讲下 MyBatis 的缓存 答:MyBatis 的缓存分为一级缓存和二级缓存,一级缓 ...

  4. Docker——概述

    出现原因:开发接替运维的工作,将jar包连同(mysql,jdk)等环境上线 实现:java -> jar(环境) -> 打包项目带上环境(镜像) -> (Docker仓库:商店) ...

  5. [邮件服务]Foxmail安装及配置指引(Windows)

    操作指引: Step1:访问Foxmail邮箱官网:https://www.foxmail.com/,选择"Windows"版,点击"立即下载". Step2: ...

  6. 为什么Java中不支持多重继承?

    我发现这个 Java 核心问题很难回答,因为你的答案可能不会让面试官满意,在大多数情况下,面试官正在寻找答案中的关键点,如果你提到这些关键点,面试官会很高兴.在 Java 中回答这种棘手问题的关键是准 ...

  7. nginx简介&nginx基本配置和优化

    一.nginx简介 1.nginx的发展 Nginx是俄罗斯人编写的一款高性能HTTP和反向代理服务器.Nginx能够选择高效的epoll(Linux2.6内核).kqueue(FreeBSD).ev ...

  8. Java 语言如何进行异常处理,关键字:throws、throw、 try、catch、finally 分别如何使用?

    Java 通过面向对象的方法进行异常处理,把各种不同的异常进行分类,并提供了良好的接口.在 Java 中,每个异常都是一个对象,它是 Throwable 类或其子类的实例.当一个方法出现异常后便抛出一 ...

  9. Replicated State Machine和WAL

    在阅读raft论文的时候,考虑两个问题: 为什么要用Replicated State Machine?没有其他方式吗 为什么要先写日志再应用到Replicated State Machine,直接应用 ...

  10. mysqlbench无法启动

    mysqlbean双击没有反应,应用无法启动,缺少3要素 都缺什么呢?看这个MySQL官方链接:https://dev.mysql.com/doc/workbench/en/wb-installing ...