【SpringCloud】2019-01-13 Linux系统下安装consul
【SpringCloud】2019-01-13 Linux系统下安装consul
文章目录
1. 下载consul安装包:选择与自己系统匹配的安装包
我选择的是:Linux-arm64
consul_1.4.0_linux_arm64.zip
2. 解压 consul_1.4.0_linux_arm64.zip
# cd /home/consul
consul_1.4.0_linux_arm64.zip
# unzip consul_1.4.0_linux_arm64.zip
# cp consul /usr/local/bin
3. 校验consul是否安装成功
#consul --verison
4. 绑定linux ip地址启动
#consul agent -dev -ui -node=consul-dev -client=192.168.0.102
- 验证 consul 是否启动成功
注意:启动consul命令中必须加 -ui 才能验证,
10.39.45.56
是linuxIP地址
- 关闭 consul 服务
#consul leave -rpc-addr=192.168.0.102:8500
5. Consul命令拓展:
consul agent
命令的常用选项,如下:
-
-data-dir
- 作用:指定agent储存状态的数据目录这是所有agent都必须的,对于server尤其重要,因为他们必须持久化集群的状态
-
-config-dir
- 作用:指定service的配置文件和检查定义所在的位置,通常会指定为”某一个路径/consul.d”(通常情况下,.d表示一系列配置文件存放的目录)
-
-config-file
-作用:指定一个要装载的配置文件
该选项可以配置多次,进而配置多个配置文件(后边的会合并前边的,相同的值覆盖) -
-dev
-作用:创建一个开发环境下的server节点
该参数配置下,不会有任何持久化操作,即不会有任何数据写入到磁盘
这种模式不能用于生产环境(因为第二条) -
-bootstrap-expect
-作用:该命令通知consul server我们现在准备加入的server节点个数,该参数是为了延迟日志复制的启动直到我们指定数量的server节点成功的加入后启动。 -
-node
-作用:指定节点在集群中的名称该名称在集群中必须是唯一的(默认采用机器的host)推荐:直接采用机器的IP -
-bind
- 作用:指明节点的IP地址有时候不指定绑定IP,会报Failed to get advertise address: Multiple private IPs found. Please configure one. 的异常
-
-server
- 作用:指定节点为server,每个数据中心(DC)的server数推荐至少为1,至多为5
所有的server都采用raft一致性算法来确保事务的一致性和线性化,事务修改了集群的状态,且集群的状态保存在每一台server上保证可用性
server也是与其他DC交互的门面(gateway)
- 作用:指定节点为server,每个数据中心(DC)的server数推荐至少为1,至多为5
-
-client
- 作用:指定节点为client,指定客户端接口的绑定地址,包括:HTTP、DNS、RPC,默认是127.0.0.1,只允许回环接口访问,若不指定为-server,其实就是-client
-
-join
- 作用:将节点加入到集群
-
-datacenter(老版本叫-dc,-dc已经失效)
- 作用:指定机器加入到哪一个数据中心中
使用-client 参数可指定允许客户端使用什么ip去访问。
例如-client 192.168.11.143 表示可以使用http://192.168.11.143:8500/ui 去访问。
- 作用:指定机器加入到哪一个数据中心中
6. consul 集群搭建(未尝试过,至少需要三台Linux系统)
- 192.168.1.155 (启动的是consul和consul_ui)
注意: 启动命令后面的 $,这是后台运行
#consul agent -ui-dir /usr/local/consul_ui/ -server -bootstrap-expect 3 -data-dir /usr/local/consul/ -bind=192.168.1.155 -node=server01 -client 0.0.0.0 &
- 192.168.1.156 (启动的是consul)
#consul agent -server -bootstrap-expect 3 -data-dir /usr/local/consul/ -bind=192.168.1.156 -node=server02 &
- 192.168.1.157 (启动的是consul)
#consul agent -server -bootstrap-expect 3 -data-dir /usr/local/consul/ -bind=192.168.1.157 -node=server03 &
- 加入集群
在 192.168.1.157 中 :
#consul join 192.168.1.155 192.168.1.156
- 验证:http://192.168.1.155:8500/ui/ 可以看到集群的状态
参考博客:
consul 集群搭建
consul 简介、安装、常用命令的使用
linux consul部署安装(一)
如果觉得对你有用,帮忙点个赞呗!!!