记一次K8S配置Ingress后访问504故障

  1. 故障现象
    正常配置Ingress后使用域名访问网站504
  2. 原因分析
    发现pod节点的docker和flanneld网段不在同一个网段
    如下图所示
    image
  3. 处理过程
    重启flanneld和docker后网段还不在同一个网段
    发现systemctl的docker配置文件恢复了初始配置
    原因是因为把docker从24升级为26后配置文件恢复到初始配置
  4. 解决办法
    把docker.service配置文件修改匹配flanneld配置文件
# cat /usr/lib/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
 
[Service]
Type=notify
EnvironmentFile=/run/flannel/subnet.env
ExecStart=/usr/bin/dockerd $DOCKER_NETWORK_OPTIONS
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
 
[Install]
WantedBy=multi-user.target

重启flanneld和docker
注意启动顺序先启动flanneld再启动docker

# systemctl restart flanneld
# systemctl restart docker

查看网段在一起即可
image

posted @ 2024-07-15 17:21  minseo  阅读(35)  评论(0编辑  收藏  举报