consul+gRPC,解决阿里云/腾讯云/百度云/京东云/各种XX云无法注册consul集群的问题 Golang

Cool.Cat 2020-02-29 2536

1、consul官网下载:

wget https://releases.hashicorp.com/consul/1.7.1/consul_1.7.1_linux_amd64.zip


2、启动Consul

./consul agent -server -bootstrap-expect 3 -data-dir=/opt/consul/data -node=sz01 -advertise=x.x.x.x -bind=0.0.0.0 -client 0.0.0.0 -ui -datacenter WTF


server:以server身份启动
bootstrap-expect:集群要求的最少server数量,当低于这个数量,集群无效;达到才会推举leader
data-dir:data存放的目录,更多信息请参阅consul数据同步机制
node:节点名称,在同一集群不能重复
advertise:本机公网IP,阿里云/腾讯云/百度云/XX云的服务器公网IP。
bind:监听的本机ip地址,默认0.0.0.0或本机内网IP,阿里云/腾讯云/百度云/XX云都是内网网卡,所以直接用默认的0.0.0.0即可。
client:允许访问该节点的ip地址,默认0.0.0.0


常用命令,如果使用非默认端口必须要挂

 -http-addr=http://127.0.0.1:port
查看选举
./consul operator raft list-peers

查看节点
./consul members

自身节点退出
./consul leave

强制其他节点退出
./consul force-leave


3、注册服务

[Unit]
Description=consul
[Service]
TimeoutStartSec=0
ExecStart=/opt/consul/consul agent -server -bootstrap-expect 3 -data-dir=/opt/consul/data -node=sz01 -advertise=x.x.x.x -bind=0.0.0.0 -client 0.0.0.0 -ui -datacenter=WTF
[Install]
WantedBy=multi-user.target


systemctl enable consul
systemctl start consul


4、gRPC


最新回复 (0)
返回
发新帖
X