基于flannel网络搭建的docker,flannel连接不上2379端口,etcd集群出现异常

基于flannel网络搭建的docker,flannel连接不上2379端口,etcd集群出现异常

异常现象

  • 生产环境
    三台服务器安装服务如下:
主机 服务
node01 docker、etcd、flannel
node02 docker、etcd、flannel
node03 docker、etcd、flannel

三台服务器是一个etcd集群,然后基于flannel网络搭建的docker;
部署的服务node01上分别由config配置中心、discovery注册中心、gateway网关,剩下的服务都是基于前三个状态正常的情况下下才可以!
gateway在启动的时候,一会的down了,查看日志报错,大概是连接不到config配置中心读取不到配置!

  • 查看容器日志命令
docker logs -f 容器ID

第一反应我也是查看项目所需要的hosts文件在容器内是否做了更改,是不是找不到主机解析的域名,连接不到!
排除镜像的原因以后!
尝试做过reboot重启服务器,在机器启动后关闭过防火墙和沙盒,依旧无果!

systemctl stop firewalld && setenforce 0

flannel通过systemctl方式是可以正常启动,但是通过查看状态可以看到报错

systemctl status flanneld
报错内容大概:连接不到X.X.X.X:2379那就是flannel连接不到etcd 连接出现异常

etcd是开机自启动的,然后需要启动flannel,接着启动docker但是没有效果!查看gateway启动日志还是报错!
我再次尝试重启三台服务器查看究竟

  • node01、node02、node03进行重启
  • reboot
  • 然后查看etcd集群是否异常,虽说都是开机自启!
  • 尝试systemctl start etcd竟然卡住了,然后通过查看etcd服务状态的时候
  • systemctl status etcd发现etcd报错
    大概报错内容:
 health check for peer 3de62d4888b330ab could not connect: dial tcp X.X.X.X:2380: connect: no route to host (prober "ROUND_TRIPPER_SNAPSHOT")
 health check for peer 3d3sfag888b330ab could not connect: dial tcp X.X.X.X:2380: connect: no route to host (prober "ROUND_TRIPPER_SNAPSHOT")
 health check for peer 3de6asdf88b330ab could not connect: dial tcp X.X.X.X:2380: connect: no route to host (prober "ROUND_TRIPPER_SNAPSHOT") 

这个时候我也知道是通讯出现了问题,但是我重启之后都关闭了防火墙并且关闭了沙盒,还会出现问题!
令我费解,通过我把etcd的报错查询一通,说是一定要关闭防火墙、iptables、沙盒,三者都要进行关闭才可以!

解决

  • 关闭防火墙
  • systemctl stop firewalld
  • 关闭沙盒
  • setenforce 0
  • 关闭iptables
  • iptables -F
    经过关闭之后,我在依次进行启动
systemctl start etcd && systemctl start flanneld && systemctl start docker  
#然后启动容器内的服务
启动顺序
docker start config
docker start discovery
docker start gateway
启动正常
查看日志gateway服务运行没问题
docker logs -f gateway

问题解决!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/101841.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • docker 各种参数配置

    docker 各种参数配置

  • linuxdocker常用命令_查看docker

    linuxdocker常用命令_查看docker1、docker服务相关命令启动docker服务:systemctlstartdocker停止docker服务:systemctlstopdocker重启docker服务:systemctlrestartdocker查看docker服务状态:systemctlstatusdocker设置开机启动docker服务:systemctlenabledocker2、docker镜像相关命令查看镜像:dockerimages查看所有镜像:dockerimages-a从网络中

  • docker_docker一键部署

    docker_docker一键部署1、安装mysql自行安装2、安装Gogs自行安装3、安装drone/dronedockerrun-d\–volume=/var/lib/drone:/data\–env=DRONE_DEBUG=true\–env=DRONE_LOGS_TRACE=true\–env=DRONE_LOGS_DEBUG=true\–env=DRONE_LOGS_PRETTY=true\–env=DRONE_AGENTS_ENABLED=true\–env=

  • docker启动MySQL报错

    docker启动MySQL报错一.问题描述今天用docker拉取了MySQL镜像,但是启动的时候遇到了问题。error:databaseisuninitializedandpasswordoptionisnotspecifiedYouneedtospecifyoneofMYSQL_ROOT_PASSWORD,MYSQL_ALLOW_EMPTY_PASSWORDandMYSQL_RANDOM_ROOT_PASSWORD二.解决由于没有找到其他帖子上在图形化界面上操作的修改,因此我们选

  • docker安装与启动

    docker安装与启动docker安装与启动

  • docker下载安装教程_mac docker 性能

    docker下载安装教程_mac docker 性能前言Docker提供轻量的虚拟化,你能够从Docker获得一个额外抽象层,你能够在单台机器上运行多个Docker微容器,而每个微容器里都有一个微服务或独立应用,例如你可以将Tomcat运行在一个D

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号