44 lines
1.2 KiB
Bash
Executable File
44 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# 测试 Consul APT 安装和配置
|
|
|
|
echo "🧪 测试 Consul APT 安装流程"
|
|
echo "================================"
|
|
|
|
# 测试目标节点
|
|
TEST_NODE="hcp1.tailnet-68f9.ts.net"
|
|
|
|
echo "1. 测试 HashiCorp 源配置..."
|
|
ssh $TEST_NODE "curl -s https://apt.releases.hashicorp.com/gpg | gpg --dearmor | sudo tee /usr/share/keyrings/hashicorp-archive-keyring.gpg > /dev/null"
|
|
|
|
echo "2. 添加 APT 源..."
|
|
ssh $TEST_NODE "echo 'deb [trusted=yes signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main' | sudo tee /etc/apt/sources.list.d/hashicorp.list"
|
|
|
|
echo "3. 更新包列表..."
|
|
ssh $TEST_NODE "apt update"
|
|
|
|
echo "4. 检查可用的 Consul 版本..."
|
|
ssh $TEST_NODE "apt-cache policy consul"
|
|
|
|
echo "5. 测试安装 Consul..."
|
|
ssh $TEST_NODE "apt install -y consul=1.21.5-*"
|
|
|
|
if [ $? -eq 0 ]; then
|
|
echo "✅ Consul 安装成功"
|
|
|
|
echo "6. 验证安装..."
|
|
ssh $TEST_NODE "consul version"
|
|
ssh $TEST_NODE "which consul"
|
|
|
|
echo "7. 检查服务状态..."
|
|
ssh $TEST_NODE "systemctl status consul --no-pager"
|
|
|
|
else
|
|
echo "❌ Consul 安装失败"
|
|
exit 1
|
|
fi
|
|
|
|
echo ""
|
|
echo "🎉 测试完成!"
|
|
echo "现在可以运行完整的 Ansible playbook"
|