server2网络互通,配置文件所在目录

–net=host:运行consul的docker镜像必须含有的参数,因为consul的consensus和gossip协议对于网络的延迟和丢包很灵活,所以引入额外的别样网络项目标层是不可取并且不必要的。

Server1(Server) 192.168.81.58 |内核版本 3.10.0-123.el7.x86_64
|Docker版本 1.12.6

/consul/data:数据存储目录

Server2(Agent)  192.168.81.59                  3.10.0-123.el7.x86_64  
                  1.12.6

/consul/config:配置文件所在目录,配置也可以由此环境变量名为CONSUL_LOCAL_CONFIG(其值为json串)来指定

对象:实现多少个CentOS7容器server1,server2网络互通

一、下载docker镜像

上传docker_consul包consul_0.7.2_linux_amd64.zip

  • docker pull consul:0.7.1
  • docker tag xxx
    10.211.55.4:5000/consul:0.7.1
  • docker push 10.211.55.4:5000/consul:0.7.1

解压consul并活动到$PATH中

二、10.211.55.6

unzip consul_0.7.2_linux_amd64.zip -d /usr/local/bin

  • docker pull 10.211.55.4:5000/consul:0.7.1
  • docker run -d –net=host
    10.211.55.4:5000/consul:0.7.1 agent -server -bind=10.211.55.6
    -node=server1 -bootstrap-expect 1 -client 0.0.0.0 -ui

    • –net=host:使用宿主机网络,这是运行consul的docker镜像必须含有的参数,因为consul的consensus和gossip协议对于网络的延迟和丢包很机智,所以引入额外的别样网络项目标层是不可取并且不必要的。这样未来,外界得以由此宿主机ip来访问该consul
      server。
  • consul ps获取containerID后,consul logs containerId来查阅日志

Server1:

三、10.211.55.7

mkdir /opt/d_c

  • 公海赌船网址,docker pull 10.211.55.4:5000/consul:0.7.1
  • docker run -d –net=host
    10.211.55.4:5000/consul:0.7.1 agent -bind=10.211.55.7 -node=client1
    -retry-join=10.211.55.6
  • docker exec -t containerID consul members
    • 跻身其中查看consul

nohup consul agent -server -bootstrap -data-dir /opt/d_c
-bind=192.168.81.58 &

四、在本机浏览器输入10.211.55.6:8500/ui,查看consulUI

来得结果:nohup: ignoring input and appending output to ‘nohup.out’

公海赌船网址 1

Server2:

 

mkdir /opt/d_c

nohup consul agent -data-dir /opt/d_c -bind=192.168.81.59 &

展现结果:nohup: ignoring input and appending output to ‘nohup.out’

让agent加入到server中

consul join 192.168.81.58

来得结果:Successfully joined cluster by contacting 1 nodes.

vim /etc/sysconfig/docker-network

DOCKER_NETWORK_OPTIONS=”-H tcp://0.0.0.0:2375 -H
unix:///var/run/docker.sock –cluster-store consul://localhost:8500
–cluster-advertise eno16777736:2375″

service docker restart

docker network ls

显示结果包含:multihost overlay global

查看Docker网络内的积极分子

consul members list

Server1:

docker run -d –net=multihost –name=web1 nginx

docker exec -it web1 /bin/bash

Server2:

docker run -d –net=multihost –name=web2 nginx

docker exec -it web2 /bin/bash

ping web1

ping web2

创造指定静态IP的network

docker network create -d overlay –ip-range=192.168.2.0/24
–gateway=192.168.2.1 –subnet=192.168.2.0/24 multihost2

相关文章