多语言展示
当前在线:1667今日阅读:176今日分享:34

Consul学习之Consul集群_04

我们已经启动了第一个代理,并且注册和查询到了那个代理。这展示了使用代理是多么的简单,但是没有展示其可扩展及生产级服务架构的特性。这一步,我们将创建第一个真正的拥有多个成员的集群。当一个Consul代理运行后,他不知道其他的节点,他是一个孤立的集群。想知道其他的集群成员,代理必须加入到存在的集群中。想加入一个存在的集群,只需要知道一个存在的节点。当他加入后,他就和这个成员有了联系,然后很快的就会发现集群中的其他节点。一个Consul代理可以加入任何其他的代理,不仅仅是以服务器方式运行的代理。但是在开始本节之前,请确认配置了vagrant。请仔细参考如下链接:只有配置了vagrant才可以(注意需要在每台虚拟机上n1和n2安装consul)1Windows vagrant环境搭建详解
工具/原料
1

consul

2

vagrant

方法/步骤
1

Starting the Agents启动代理,将通过vagrant启动两个节点。Vagrantfile 请参考“Windows vagrant环境搭建详解”中的再一个网站上拷贝的文件。请仔细阅读这篇文章。win+R打开中断,输入命令:vagrant up   启动两个节点n1和n2

2

确认系统已经启动,可以使用ssh命令进入系统配置我们的集群信息。首先配置n1的节点信息。命令:ssh n1

3

把第三节“注册服务_03”的web.json,拷贝到vagrant目录下,然后放到/etc/consul.d/目录下。(此时web.json没用到,只是注意一下,共享目录vagrant)安装console(每台虚拟机都需要安装),请参考“Windows vagrant环境搭建详解”和“Consul简介及Windows和Linux consul安装_01“

4

之前是用-dev以代理的方式启动的Consul,今天使用命令以服务器模式启动n1,命令只能手敲,不支持粘贴复制。命令:consul agent -server -bootstrap-expect=1 \    -data-dir=/tmp/consul -node=agent-one -bind=172.20.20.10 \    -enable-script-checks=true -config-dir=/etc/consul.d解释:-node,指定唯一的名称; -bootstrap,告知Consul服务器会有其他的成员加入; -enable-script-checks=true开启健康检查; config-dir,指定服务和检查定义的位置。-data-dir(这个没解释应该是日志存放目录)

5

同样的道理,重新打开一个终端,进入n2,配置web.json和consul安装,然后启动n2命令:consul agent -data-dir=/tmp/consul -node=agent-two \    -bind=172.20.20.11 -enable-script-checks=true -config-dir=/etc/consul.d

6

Joining a Cluster加入集群打开一个新的终端,进入n1,ssh n1,然后使用命令让n1加入n2命令:consul join 172.20.20.11使用命令查看members会发现两个成员了,命令:consul members

7

进入n1(ssh n1)查询节点的DNS命令:dig @127.0.0.1 -p 8600 agent-two.node.consulCtrl+C优雅的关闭

推荐信息