环境准备与基础配置
在阿里云ECS中部署Keepalived前需完成以下准备:
- 创建至少2台同地域/可用区的ECS实例,建议部署在同一个虚拟私有云(VPC)
- 确保ECS实例间内网互通,安全组放行VRRP协议(协议号112)
- 关闭系统防火墙或配置允许VRRP协议通信
申请高可用虚拟IP(HaVip)
通过阿里云控制台创建HaVip:
- 登录VPC控制台,在目标子网的”虚拟IP”页签申请HaVip
- 记录分配的HaVip地址(如10.0.0.100),需与ECS实例同子网
- 将HaVip绑定到主备ECS实例的弹性网卡
Keepalived安装与主备配置
在两台ECS实例上执行以下操作:
# 安装keepalived
yum install -y keepalived
# 编辑配置文件
vi /etc/keepalived/keepalived.conf
主节点配置示例:
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 123456
virtual_ipaddress {
10.0.0.100/24 dev eth0
高可用性验证与维护
完成部署后需进行验证:
- 在主节点执行
systemctl restart keepalived
观察IP漂移 - 使用
arping -I eth0 10.0.0.100
检测ARP宣告 - 配置监控脚本检测服务状态,实现自动故障切换
注意事项
阿里云环境需特别注意:
- 必须使用HaVip而非传统虚拟IP实现IP漂移
- VRRP组播地址需配置安全组入方向放行
- 建议配置unicast模式避免组播限制