此贴旨在分享使用ansible快速部署一个consul集群,不探讨架构及技术细节。
仓库地址:https://github.com/dhwark/consul_cluster
-
在hosts文件中按照格式填入ip地址
-
修改roles\consul_cluster\files\consul_*\consul_config.json中的配置项:
此为示例,注意不要在json中添加任何注释。
{ "datacenter": "internal",# dc标识名 "data_dir": "/usr/local/consul/data", "log_file": "/usr/local/consul/log/consul.log", "log_level": "INFO", "log_rotate_duration": "24h", "node_name": "master", # 节点角色名 "server": true, "bootstrap_expect": 3, "bind_addr": "0.0.0.0", "client_addr": "0.0.0.0", "advertise_addr": "192.168.6.41", # 这里修改为节点ip "start_join": ["192.168.6.41"],# 这里修改为master节点的ip "ui": true, "telemetry": { "prometheus_retention_time": "60s" } }
-
主程序部署主要是依赖files下的脚本,如果需要其他版本的consul请自行修改