Docker中运行consul集群
来源:互联网 发布:腾讯体育软件 编辑:程序博客网 时间:2024/06/10 18:29
前言
这篇博客主要依赖上一篇文章,在阿里云ECS中已经构建了consul镜像,同样的步骤,可以在腾讯云中构建consul镜像,用阿里云和腾讯云的主要原因就是新注册用户可以免费用一段时间的服务器。
DNS设置
修改Docker守护进程的DNS查找设置为:
- 本地docker的IP地址,这样可以使用consul来解析DNS
- Google的DNS服务器
- 指定Consul的查询指定搜索域
首先,先找到docker接口docker0的IP地址,如下:
ip addr show docker0
输出内容如下:
docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default link/ether 02:42:79:f7:f6:36 brd ff:ff:ff:ff:ff:ff inet 172.17.0.1/16 scope global docker0 valid_lft forever preferred_lft forever
这个接口地址就是172.17.0.1,使用这个地址,我们把/etc/default/docker文件中的docker启动项DOCKER_POTS修改为:
DOCKER_OPTS="--dns 8.8.8.8 --dns 8.8.4.4"
我把阿里云的服务器叫做larry,腾讯云的服务器叫做curely。
在larry和curely中进行同样的设置,如下:
DOCKER_OPTS="--dns 172.17.0.1 --dns 8.8.8.8 --dns-search service .consul"
然后重启larry服务器
service docker restart
同样,重启curely服务器。
启动自启动consul节点
consul镜像已经存在larry和curely服务器中了,把larry服务器做为自启动的节点,执行以下命令:
docker run -d -h larry -p 8300:8300 -p 8301:8301 -p 8301:8301/udp -p 8302:8302 -p 8302:8302/udp -p 8400:8400 -p 8500:8500 -p 53:53/udp --name larry_agent chenpeihai/consul -server -advertise 101.132.146.94 -bootstrap-expect 2
-server告诉代理运行在服务器模式,-advertise 告诉代理通过101.132.146.94广播自己,-bootstrap-expect告诉consul集群中有多少代理。
larry需要在阿里云的安全组中开启对应的端口
启动curely节点
sudo docker run -d -h curly -p 8300:8300 -p 8301:8301 -p 8301:8301/udp -p 8302:8302 -p 8302:8302/udp -p 8400:8400 -p 8500:8500 -p 53:53/udp --name curly_agent chenpeihai/consul -server -advertise 122.152.199.200 -join 101.132.146.94
-join 告诉consul连接101.132.146.94指定的larry主机的IP所在的集群。
查看consul节点日志
docker logs larry_agent
可以看到日志如下:
sudo docker logs curely_agent
可以看到选举了larry为leader。
查看consul控制台
分别查看larry和consul控制,可以看到集群已经成功运行。
这样就运行成功了。
阅读全文
0 0
- Docker中运行consul集群
- docker 搭建 consul 集群
- 基于Docker运行consul
- Docker 容器部署 Consul 集群
- 基于Docker的Consul集群部署方案
- 在Docker中运行Hadoop+Spark集群
- 使用Docker搭建consul集群+registrator实现服务自动注册。
- consul部署 docker篇
- consul 集群搭建
- consul集群架构
- 搭建consul 集群
- 搭建consul集群
- consul 集群配置
- Consul安装集群搭建
- 使用Docker镜像搭建consul和swarm集群基础环境及overlay网络
- 搭建Docker Swarm集群实战(一)(服务发现使用consul)
- 搭建Docker Swarm集群实战(二)(服务发现使用consul)
- Consul入门04 - Consul集群
- Idea快捷键
- Python2.7+PyQt4 QtDesigner学习笔记系列——3:QtDesigner第一个小程序
- 小米XiaoMi MIUI 7/8/9开发版怎么设置锁屏QQ来消息时弹出消息框?
- VirtualBox 复制虚拟机网络连接失败
- 25、C#里面TextBox编辑框的使用
- Docker中运行consul集群
- java创建文件和目录
- LVS原理
- 进程间通讯---信号量练习(二)
- 流程控制和函数
- Android调用不符合JNI命名规范的so库
- C/C++中的整数和浮点数在计算机中是如何表示的?
- 171012_学习Jeebase笔记
- void和void *