报错如下

在这里插入图片描述
在这里插入图片描述

问题处理
  • 首先定位一下 es节点的资源(CPU、内存)是不是待耗尽
  • 如果资源消耗的比较严重,使用 jstat -gcutil查看一下gc情况
  • 如果gc次数比较频繁,请把jvm 的内存加大一点

如果没有出现以上情况,那就需要配置一下如下参数:

# 容器环境可以加大一点
discovery.zen.ping_timeout: 600s
# 这个避免脑裂 n/2 + 1
discovery.zen.minimum_master_nodes: 2

如果发现还是不行,请关注一下集群的网络状况

# MTU
查看一下网卡、docker0、caclio的mtu是否能匹配上
网卡的mtu=docker0=caclio - 20(ip in ip) = caclio - 50 (vxlan)
# 配置步骤
1、
   在docker的配置文件中添加:
    {
     "mtu": 1400
   }
   重启
   ifconfig  docker0 mtu 1400
2、
  参考下文配置caclio
  https://docs.projectcalico.org/networking/mtu
3、
  ip linke show  查看
# 遗留问题 
这个我没想明白,还需后续继续研究:
1、mtu如果超了会分片呀,为啥不能通信呢
2、就算不允许分片,主机不是会主动探测适合的MTU吗?为啥不能通信呢
渴望大神降临 (*^^*)
Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐