本文源自官方部署文档和其他网友的一些资料,有不对之处请帮助改正。
以下是单数据中心的部署架构图
所有的要部署consul的host都必须包含如下几部(systemd的配置是可选的)
下载Consul
如果是linux主机,可是使用curl工具在官网https://releases.hashicorp.com/consul/下载consul的release zip包,版本先去官网查一下选择最新的即可。
CONSUL_VERSION="1.5.1"
curl --silent --remote-name https://releases.hashicorp.com/consul/${CONSUL_VERSION}/consul_${CONSUL_VERSION}_linux_amd64.zip
安装Consul
解压缩下载的包。改变consul的拥有者为root组root用户。将consul可执行文件移动到/ usr / local / bin /。 检查consul是否可用。
unzip consul_${CONSUL_VERSION}_linux_amd64.zip
sudo chown root:root consul
sudo mv consul /usr/local/bin/
consul --version
启用consul命令的自动补全功能
consul -autocomplete-install
complete -C /usr/local/bin/consul consul
创建一个唯一的非特权系统用户来运行Consul并创建其数据目录。(可选)
sudo useradd consul
sudo mkdir --parents /opt/consul
sudo chown --recursive consul:consul /opt/consul
配置Systemd (可选)
Systemd使用默认使用documented sane ,所以只有非默认值需要在配置文件中配置。
在/etc/systemd/system/ 路径下创建 consul.service文件
sudo touch /etc/systemd/system/consul.service
将如下配置添加到consul.service文件:
[Unit]
Description="HashiCorp Consul - A service mesh solution"
Documentation=https://www.consul.io/
Requires=network-online