consul1.21安装

1
2
3
4
5
6
7
8
# Consul 1.21.0 单节点安装笔记

## 一、环境准备
- **操作系统**:CentOS 7/8 或 Ubuntu 20.04 LTS
- **依赖项**:
```bash
sudo yum install -y wget unzip curl # CentOS
sudo apt install -y wget unzip curl # Ubuntu

二、安装步骤

1. 下载并安装二进制文件

1
2
3
4
wget https://releases.hashicorp.com/consul/1.21.0/consul_1.21.0_linux_amd64.zip
unzip consul_1.21.0_linux_amd64.zip
sudo mv consul /usr/local/bin/
sudo chmod +x /usr/local/bin/consul

2. 创建系统用户和目录

1
2
3
4
sudo useradd --system --home /etc/consul.d --shell /bin/false consul
sudo mkdir -p /etc/consul.d /var/lib/consul
sudo chown -R consul:consul /etc/consul.d /var/lib/consul
sudo chmod -R 750 /etc/consul.d /var/lib/consul

3. 配置文件 (/etc/consul.d/consul.hcl)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
datacenter = "dc1"
data_dir = "/var/lib/consul"
node_name = "consul-server-1"
log_level = "INFO"

server = true
bootstrap_expect = 1

ui_config {
enabled = true
}

bind_addr = "0.0.0.0"
client_addr = "0.0.0.0"

ports {
http = 8500
grpc = 8502
}

enable_local_script_checks = true

4. Systemd 服务配置 (/etc/systemd/system/consul.service)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[Unit]
Description="HashiCorp Consul 1.21 Service Mesh"
Documentation=https://www.consul.io/docs/1.21
After=network-online.target

[Service]
User=consul
Group=consul
ExecStart=/usr/local/bin/consul agent -config-dir=/etc/consul.d/
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=5s
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target

5. 启动服务

1
2
3
sudo systemctl daemon-reload
sudo systemctl enable consul
sudo systemctl start consul

三、验证安装

1
2
3
4
5
6
7
8
9
10
11
# 检查服务状态
sudo systemctl status consul

# 检查成员列表
consul members

# 验证HTTP API
curl http://localhost:8500/v1/agent/self | jq

# 访问Web UI
http://<SERVER_IP>:8500/ui

四、防火墙配置

1
2
3
4
5
6
7
8
9
# CentOS
sudo firewall-cmd --permanent --add-port={8300,8301,8302,8500,8600}/tcp
sudo firewall-cmd --permanent --add-port={8301,8302,8600}/udp
sudo firewall-cmd --reload

# Ubuntu
sudo ufw allow 8300,8301,8302,8500,8600/tcp
sudo ufw allow 8301,8302,8600/udp
sudo ufw reload

五、常见问题解决

1. 启动失败检查

1
2
3
4
5
# 查看详细日志
sudo journalctl -u consul -f

# 验证配置文件
consul validate /etc/consul.d/

2. 端口冲突处理

1
2
sudo netstat -tulnp | grep -E '8500|8300'
# 如果冲突,修改consul.hcl中的ports配置

3. 数据重置

1
2
3
sudo systemctl stop consul
sudo rm -rf /var/lib/consul/*
sudo systemctl start consul

六、备份建议

  1. 定期备份 /etc/consul.d/ 目录
  2. 重要数据目录 /var/lib/consul/ 建议做快照

注意:单节点部署仅适用于开发和测试环境,生产环境建议至少3个节点组成集群


consul1.21安装
https://blog.t-ao.cn/2025/05/14/consul-1-21单节点安装/
作者
TAO
发布于
2025年5月14日
许可协议