前言:
Consul 是 HashiCorp 公司推出的开源工具,用于实现分布式系统的服务发现与配置。与其他分布式服务注册与发现的方案,比如 Airbnb 的 SmartStack 等相比,Consul 的方案更“一站式”,内置了服务注册与发现框 架、分布一致性协议实现、健康检查、Key/Value 存储、多数据中心方案,不再需要依赖其他工具(比如 ZooKeeper 等)。使用起来也较 为简单。Consul 用 Golang 实现,因此具有天然可移植性(支持 Linux、windows 和 Mac OS X);安装包仅包含一个可执行文件,方便部署,与 Docker 等轻量级容器可无缝配合。
1:下载安装
#下载consul包
wget https://releases.hashicorp.com/consul/0.7.2/consul_0.7.2_linux_amd64.zip
#解压
unzip consul_0.7.2_linux_amd64.zip
#复制到/usr/local/bin下
sudo mv consul /usr/local/bin/consul
2:验证安装是否成功
consul
3:配置
#快捷模式
consul agent -dev
#Sever 模式
consul agent -server -bootstrap-expect 1 -data-dir /tmp/consul -ui -config-dir /etc/consul.d -bind=192.168.1.100
配置参数说明
- -server:- Serve 模式(不配置为 Client 模式),数量一般为 3-5 个
- -bootstrap-expect: - Server 数量
- -data-dir: - 数据目录
- -ui-dir: - UI目录
- -node: - Node名称
- -bind: - 集群通讯地址
- Server 模式后台访问地址:http://localhost:8500
-
ctrl + c:停止服务
#Client 模式
consul agent -data-dir /tmp/consul -node=ubuntu64 -bind=10.9.10.176
#查看集群
consul members
#查看当前服务器状况
consul info
#退出服务器集群
consul leave