当前位置:首页 > Ubuntu > 正文

Ubuntu集群测试验证指南(从零开始搭建并验证高可用分布式集群)

在现代IT基础设施中,Ubuntu集群测试是确保系统高可用性、容错性和性能的关键步骤。无论你是系统管理员、DevOps工程师,还是刚入门的初学者,本教程将手把手教你如何搭建一个简单的Ubuntu集群,并完成基本的验证测试。整个过程无需复杂背景知识,小白也能轻松上手!

Ubuntu集群测试验证指南(从零开始搭建并验证高可用分布式集群) Ubuntu集群测试  集群验证教程 Ubuntu高可用性测试 分布式系统验证 第1张

一、什么是Ubuntu集群?

Ubuntu集群是指由多台运行Ubuntu操作系统的服务器(节点)组成的一个协同工作系统。通过集群技术,可以实现负载均衡、故障转移、并行计算等功能,从而提升整体系统的高可用性可扩展性

二、准备工作

在开始之前,请确保你有以下资源:

  • 至少2台安装了Ubuntu 20.04或22.04的虚拟机或物理机
  • 每台机器拥有静态IP地址(例如:192.168.1.10 和 192.168.1.11)
  • 各节点之间网络互通(可通过ping测试)
  • 具有sudo权限的用户账户

三、配置主机名与SSH免密登录

为了让节点之间能高效通信,我们需要设置主机名并配置SSH免密登录。

1. 设置主机名(在每台机器上执行):

# 在 node1 上执行sudo hostnamectl set-hostname node1# 在 node2 上执行sudo hostnamectl set-hostname node2  

2. 修改 /etc/hosts 文件(所有节点一致):

192.168.1.10 node1192.168.1.11 node2  

3. 配置SSH免密登录(以node1为主控节点):

# 在 node1 上生成密钥ssh-keygen -t rsa -b 4096# 将公钥复制到 node2ssh-copy-id user@192.168.1.11# 测试免密登录ssh node2 "echo 'Success!'"  

四、安装并配置Corosync + Pacemaker(高可用集群核心)

我们将使用开源的Corosync(消息层)和Pacemaker(资源管理器)来构建高可用集群。这是实现Ubuntu高可用性测试的标准方案。

在所有节点上安装软件包:

sudo apt updatesudo apt install -y corosync pacemaker pcs  

启动并启用 pcsd 服务:

sudo systemctl start pcsdsudo systemctl enable pcsd  

设置 hacluster 用户密码(所有节点相同):

sudo passwd hacluster  

在 node1 上认证节点:

sudo pcs cluster auth node1 node2 -u hacluster -p your_password --force  

创建集群(仅在 node1 执行):

sudo pcs cluster setup my_cluster node1 node2 --force  

启动集群:

sudo pcs cluster start --allsudo pcs cluster enable --all  

五、验证集群状态

现在我们来验证集群是否正常运行。这是分布式系统验证的核心环节。

查看集群状态:

sudo pcs status  

如果看到两个节点都在线(Online),并且没有错误信息,说明集群已成功搭建!

你还可以添加一个虚拟IP资源进行功能测试:

sudo pcs resource create virtual_ip ocf:heartbeat:IPaddr2 \  ip=192.168.1.100 cidr_netmask=24 op monitor interval=30s  

然后从外部 ping 192.168.1.100,再手动关闭当前持有该IP的节点,观察IP是否自动漂移到另一节点——这就是高可用性的体现!

六、常见问题与排查

  • 节点无法通信:检查防火墙(ufw 或 iptables)是否放行 corosync 端口(默认 5403-5405)
  • pcs status 显示 Stopped:确认 corosync 和 pacemaker 服务是否启动
  • SSH 免密失败:确保 ~/.ssh/authorized_keys 包含正确的公钥

七、总结

通过本教程,你已经完成了基础的Ubuntu集群测试环境搭建,并学会了如何验证集群的高可用性。掌握这些技能后,你可以进一步探索负载均衡、数据库集群、Kubernetes等高级主题。

记住,真正的集群验证教程不仅在于搭建,更在于持续监控和故障模拟。建议定期进行断电、断网等压力测试,确保生产环境万无一失。

希望这篇指南对你有所帮助!如果你有任何疑问,欢迎在评论区留言交流。