你是不是也遇到过这种情况:服务器突然宕机,网站打不开、业务停摆,急得满头大汗?要是数据丢了,那损失可就大了。这时候啊,双机热备就能派上大用场 —— 简单说就是两台服务器互相盯着,一台出问题,另一台立马顶上,几乎不耽误事儿。但新手总觉得这东西太高深,不敢下手弄。其实真不难,今天小编就给你带来 2025 年最新的搭建步骤,保证新手一看就会,一起往下看吧!
先明白:双机热备到底是啥?用在哪?
简单说,双机热备就是两台服务器(咱们叫主机 A 和主机 B),跑一样的业务,共享一份数据。平时主机 A 干活,主机 B 盯着;A 出问题了,B 自动接手,用户几乎感觉不到中断。
适合啥场景呢?像公司的 OA 系统、电商网站后台、数据库服务器这些,不能停的业务,都能用。小编之前在小公司,就因为没做热备,一次服务器硬盘坏了,停了 3 小时,被老板骂惨了,后来赶紧弄了双机热备,踏实多了。
准备工作:这些东西得提前弄好,别临时抓瞎
- 两台服务器:配置差不多就行,不用非得一模一样,操作系统最好一样(比如都用 CentOS 7),不然容易出兼容问题。
- 相同的软件环境:比如都装了 Nginx、MySQL,版本也得一致,不然切换过去业务跑不起来。
- 一块共享存储(可选):如果数据量大,比如数据库文件,最好弄个共享硬盘或 NAS,两台服务器都能访问,省得数据不同步。
- 网线和交换机:两台服务器用网线连到同一个交换机,保证能互相通信,IP 地址设在同一个网段(比如 A 是 192.168.1.10,B 是 192.168.1.11)。
新手常犯的错:两台服务器系统版本不一样,一个 CentOS 7 一个 CentOS 8,结果软件装不上,白忙活半天。
详细步骤:用 Keepalived 搭建,新手首选
现在最常用的是 Keepalived 软件,配置简单,适合新手,咱们就以它为例。
第一步:两台服务器都装 Keepalived
在主机 A 和主机 B 上,都打开终端,输入命令:
yum install keepalived -y
等它装完,用systemctl start keepalived启动,再用systemctl enable keepalived设成开机启动,这样服务器重启后它自己会跑。
小编第一次装的时候,输错命令写成了 “yum install keepalived”,忘了加 “-y”,结果每一步都要手动输 “y”,你说多麻烦,新手记得加上 “-y” 啊。
第二步:配置主机 A(主服务器)
- 打开配置文件:vi /etc/keepalived/keepalived.conf(不会用 vi 的话,用 nano 也行,命令是 nano /etc/keepalived/keepalived.conf)。
- 主要改这几处:
- state MASTER(表示这是主服务器)
- interface eth0(改成你的网卡名,用 ifconfig 命令能看到)
- virtual_ipaddress {192.168.1.100}(虚拟 IP,用户访问用这个,别和现有 IP 冲突)
- priority 100(优先级,主服务器设高一点,比如 100,备用设 80)
- 改完保存退出(vi 里按 ESC,输入:wq 回车),重启 Keepalived:systemctl restart keepalived。
第三步:配置主机 B(备用服务器)
和主机 A 差不多,就是配置文件里这两处不一样:
- state BACKUP
- priority 80
其他的,尤其是虚拟 IP,得和主机 A 一样,不然切换不过去。改完也重启 Keepalived。
第四步:测试一下,看看能不能切换
- 先在主机 A 上用ip addr命令,看看虚拟 IP(192.168.1.100)是不是在它身上。
- 然后把主机 A 关掉(或者用systemctl stop keepalived停掉服务),再去主机 B 上用ip addr看,虚拟 IP 应该跑到 B 上了,这就说明成了。
小编第一次测试的时候,紧张得手心冒汗,生怕不成功,结果一次就成了,你看其实没那么难吧。
自问自答:新手可能会遇到的问题
- 问:两台服务器之间 ping 不通,咋办啊?
答:先看网线插紧没,再看 IP 是不是同一个网段,子网掩码对不对。要是还不行,可能是防火墙挡住了,把两台服务器的防火墙关了试试(systemctl stop firewalld),测试通了再配置防火墙规则放通必要端口。 - 问:数据怎么同步啊?总不能手动拷吧?
答:可以用 rsync 工具,配置定时同步,或者用共享存储。数据库的话,MySQL 本身就有主从复制,和双机热备配合着用,效果更好。
小编的一点心得
双机热备看着复杂,其实核心就是 “让两台服务器知道对方的存在,能互相接管”。新手别被 “热备”“集群” 这些词吓住,跟着步骤一步步来,多试几次就熟了。
小编建议刚开始用虚拟机练手,两台虚拟机配置热备,随便折腾,弄坏了也不怕。等熟练了,再用到正式环境。记住啊,配置完一定要测试,别等真出问题了才发现没配置好,那时候就晚了。希望这篇教程能帮到你,赶紧试试吧!