linux配置虚拟ip实现主备双击高可用
linux配置虚拟ip实现主备双击高可用
背景:设置了虚拟ip指向两台服务器,但是没有配置虚拟网卡,虚拟ip10.249.134.227 分别指向 10.249.134.193,10.249.134.194,
使用HaVip结合keepalived实现主备双机高可用
转自HaVip结合keepalived实现主备双机高可用 (aliyun.com)
1.执行以下命令,主从服务器分别安装keepalived。
yum install keepalived
2、分别编辑keepalived配置文件 /etc/keepalived/keepalived.conf
编辑完成了分别执行systemctl start keepalived启动keepalived
主服务器
! Configuration File for keepalived
global_defs {
notification_email {
acassen@firewall.loc
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server 192.168.200.1
smtp_connect_timeout 30
router_id LVS_DEVEL
vrrp_skip_check_adv_addr
vrrp_garp_interval 0
vrrp_gna_interval 0
}
#vrrp_script checkhaproxy
#{
# script "/etc/keepalived/do_sth.sh"
# interval 5
#}
vrrp_instance VI_1 {
state MASTER #设置ECS1实例为主实例
interface eth0 #设置网卡名,本示例配置为eth0
virtual_router_id 51
nopreempt
# preempt_delay 10
priority 100 #设置优先级,数字越大,优先级越高,本示例配置主用实例优先级为100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
unicast_src_ip 10.249.134.193 #设置ECS实例的私网IP地址,本示例配置为192.168.0.209
unicast_peer {
10.249.134.194 #对端ECS实例的私网IP地址,本示例配置为192.168.0.210
}
virtual_ipaddress {
10.249.134.227 #设置HaVip的IP地址,本示例配置为192.168.0.88
}
notify_master "/etc/keepalived/notify_action.sh MASTER"
notify_backup "/etc/keepalived/notify_action.sh BACKUP"
notify_fault "/etc/keepalived/notify_action.sh FAULT"
notify_stop "/etc/keepalived/notify_action.sh STOP"
garp_master_delay 1
garp_master_refresh 5
track_interface {
eth0 #设置ECS实例网卡名,本示例配置为eth0
}
# track_script {
# checkhaproxy
# }
}
从服务器
! Configuration File for keepalived
global_defs {
notification_email {
acassen@firewall.loc
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server 192.168.200.1
smtp_connect_timeout 30
router_id LVS_DEVEL
vrrp_skip_check_adv_addr
vrrp_garp_interval 0
vrrp_gna_interval 0
}
#vrrp_script checkhaproxy
#{
# script "/etc/keepalived/do_sth.sh"
# interval 5
#}
vrrp_instance VI_1 {
state BACKUP #设置ECS2实例为备用实例
interface eth0 #设置网卡名,本示例配置为eth0
virtual_router_id 51
nopreempt
# preempt_delay 10
priority 10 #设置优先级,数字越大,优先级越高,本示例配置备用实例优先级为10
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
unicast_src_ip 10.249.134.194 #设置ECS实例的私网IP地址,本示例配置为192.168.0.210
unicast_peer {
10.249.134.193 #对端ECS实例的私网IP地址,本示例配置为192.168.0.209
}
virtual_ipaddress {
10.249.134.227 #设置HaVip的IP地址,本示例配置为192.168.0.88
}
notify_master "/etc/keepalived/notify_action.sh MASTER"
notify_backup "/etc/keepalived/notify_action.sh BACKUP"
notify_fault "/etc/keepalived/notify_action.sh FAULT"
notify_stop "/etc/keepalived/notify_action.sh STOP"
garp_master_delay 1
garp_master_refresh 5
track_interface {
eth0 #设置ECS实例网卡名,本示例配置为eth0
}
# track_script {
# checkhaproxy
# }
}
注意点:eth0为本地网卡名称,可通过ifconfig查看
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
2021-06-08 static 、Throwable、自定义异常记录