k8s-trouble-es: failed to validate incoming join request from node ... time out waiting for task
报错如下问题处理首先定位一下 es节点的资源(CPU、内存)是不是待耗尽如果资源消耗的比较严重,使用 jstat -gcutil查看一下gc情况如果gc次数比较频繁,请把jvm 的内存加大一点如果没有出现以上情况,那就需要配置一下如下参数:# 容器环境可以加大一点discovery.zen.ping_timeout: 600s# 这个避免脑裂 n/2 + 1discovery.zen.minimu
·
报错如下
问题处理
- 首先定位一下 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吗?为啥不能通信呢
渴望大神降临 (*^▽^*)
更多推荐
已为社区贡献17条内容
所有评论(0)