实战案例:实现master/master的Keepalivde 双主架构
2023-06-13 09:15:42 时间
实现master/master的Keepalivde 双主架构
master/slave的单主架构,同一时间只有一个Keepalived对外提供服务,此主机繁忙,而另一台主机却很空闲,利用率低下,可以使用master/master的双主架构,解决此问题。
master/master的双主架构:
即将两个或以上VIP分别运行在不同的keepalived服务器,以实现服务器并行提供web访问的目的,提高服务器资源利用率
#ha1主机配置 [root@ka1-centos8 ~]#vim /etc/keepalived/keepalived.conf ! Configuration File for keepalived global_defs { notification_email { root@wangxiaochun.com notification_email_from keepalived@localhost smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id ka1.magedu.org vrrp_mcast_group4 224.0.100.100 vrrp_instance VI_1 { state MASTER #在另一个主机上为BACKUP interface eth0 virtual_router_id 66 #每个vrrp_instance唯一 priority 100 #在另一个主机上为80 advert_int 1 authentication { auth_type PASS auth_pass 12345678 virtual_ipaddress { 10.0.0.10/24 dev eth0 label eth0:1 #指定vrrp_instance各自的VIP vrrp_instance VI_2 { #添加 VI_2 实例 state BACKUP #在另一个主机上为MASTER interface eth0 virtual_router_id 88 #每个vrrp_instance唯一 priority 80 #在另一个主机上为100 advert_int 1 authentication { auth_type PASS auth_pass 12345678 virtual_ipaddress { 10.0.0.20/24 dev eth0 label eth0:1 #指定vrrp_instance各自的VIP #ka2主机配置,和ka1配置只需五行不同 [root@ka2-centos8 ~]#vim /etc/keepalived/keepalived.conf ! Configuration File for keepalived global_defs { notification_email { root@wangxiaochun.com notification_email_from keepalived@localhost smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id ka2.magedu.org #修改此行 vrrp_mcast_group4 224.0.100.100 vrrp_instance VI_1 { state BACKUP #此修改行为BACKUP interface eth0 virtual_router_id 66 priority 80 #此修改行为80 advert_int 1 authentication { auth_type PASS auth_pass 12345678 virtual_ipaddress { 10.0.0.10/24 dev eth0 label eth0:1 vrrp_instance VI_2 { state MASTER #修改此行为MASTER interface eth0 virtual_router_id 88 priority 100 #修改此行为100 advert_int 1 authentication { auth_type PASS auth_pass 12345678 virtual_ipaddress { 10.0.0.20/24 dev eth0 label eth0:1 }
实战案例:利用子配置文件实现master/master的Keepalived双主架构
[root@ka1-centos8 ~]#cat /etc/keepalived/keepalived.conf ! 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 ha1.magedu.org vrrp_skip_check_adv_addr #vrrp_strict vrrp_garp_interval 0 vrrp_gna_interval 0 include /etc/keepalived/conf.d/*.conf [root@ka1-centos8 ~]#mkdir /etc/keepalived/conf.d/ [root@ka1-centos8 ~]#cat /etc/keepalived/conf.d/cluster1.conf vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 66 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 123456 virtual_ipaddress { 10.0.0.10/24 dev eth0 label eth0:1 unicast_src_ip 10.0.0.8 unicast_peer{ 10.0.0.18 notify_master /etc/keepalived/notify.sh master notify_backup /etc/keepalived/notify.sh backup notify_fault /etc/keepalived/notify.sh fault [root@ka1-centos8 ~]#cat /etc/keepalived/conf.d/cluster2.conf vrrp_instance VI_2 { state BACKUP interface eth0 virtual_router_id 88 priority 80 advert_int 1 authentication { auth_type PASS auth_pass 123456 virtual_ipaddress { 10.0.0.20/24 dev eth0 label eth0:1 unicast_src_ip 10.0.0.8 unicast_peer{ 10.0.0.18 notify_master /etc/keepalived/notify.sh master notify_backup /etc/keepalived/notify.sh backup notify_fault /etc/keepalived/notify.sh fault [root@ka1-centos8 ~]#tree /etc/keepalived/ /etc/keepalived/ ├── conf.d │ ├── cluster1.conf │ └── cluster2.conf ├── keepalived.conf ├── keepalived.conf.bak └── notify.sh 1 directory, 5 files [root@ka1-centos8 ~]# #ka2主机的配置 [root@ka2-centos8 ~]#cat /etc/keepalived/keepalived.conf ! 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 ha2.magedu.org vrrp_skip_check_adv_addr #vrrp_strict vrrp_garp_interval 0 vrrp_gna_interval 0 include /etc/keepalived/conf.d/*.conf [root@ka2-centos8 ~]#cat /etc/keepalived/conf.d/cluster1.conf vrrp_instance VI_1 { state BACKUP interface eth0 virtual_router_id 66 priority 80 advert_int 1 authentication { auth_type PASS auth_pass 123456 virtual_ipaddress { 10.0.0.10/24 dev eth0 label eth0:1 unicast_src_ip 10.0.0.18 unicast_peer { 10.0.0.8 notify_master /etc/keepalived/notify.sh master notify_backup /etc/keepalived/notify.sh backup notify_fault /etc/keepalived/notify.sh fault [root@ka2-centos8 ~]#cat /etc/keepalived/conf.d/cluster2.conf vrrp_instance VI_2 { state MASTER interface eth0 virtual_router_id 88 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 123456 virtual_ipaddress { 10.0.0.20/24 dev eth0 label eth0:1 unicast_src_ip 10.0.0.18 unicast_peer{ 10.0.0.8 notify_master /etc/keepalived/notify.sh master notify_backup /etc/keepalived/notify.sh backup notify_fault /etc/keepalived/notify.sh fault [root@ka2-centos8 ~]# #查看IP [root@ka1-centos8 ~]#hostname -I 10.0.0.8 10.0.0.10 [root@ka2-centos8 ~]#hostname -I 10.0.0.18 10.0.0.20 #ka1主机故障,测试VIP漂移至ka2主机 [root@ka1-centos8 ~]#killall keepalived [root@ka1-centos8 ~]#hostname -I 10.0.0.8 [root@ka2-centos8 ~]#hostname -I 10.0.0.18 10.0.0.20 10.0.0.10 #恢复ka1主机 [root@ka1-centos8 ~]#systemctl start keepalived.service [root@ka1-centos8 ~]#hostname -I 10.0.0.8 10.0.0.10 [root@ka2-centos8 ~]#hostname -I 10.0.0.18 10.0.0.20
实战案例:三个节点的多主架构实现
第一个节点ka1配置: Vrrp instance 1:MASTER,优先级100 Vrrp instance 2:BACKUP,优先级80 Vrrp instance 3:BACKUP,优先级60 第二个节点ka2配置: Vrrp instance 1:BACKUP,优先级60 Vrrp instance 2:MASTER,优先级100 Vrrp instance 3:BACKUP,优先级80 第三个节点ka3配置: Vrrp instance 1:BACKUP,优先级80 Vrrp instance 2:BACKUP,优先级60 Vrrp instance 3:MASTER,优先级100
本文链接:http://www.yunweipai.com/35376.html
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/52717.html
centosKeepalived相关文章
- 康明斯Cummins EDI项目案例
- 逻辑卷实战案例-逻辑卷裁剪
- shell脚本案例-监控网卡流量
- JavaScript案例:获取鼠标在盒子内的坐标
- 教育行业案例:如何分析复购用户?
- 智能合约DAPP系统,智能合约DAPP系统开发功能,智能合约DAPP流动性质押挖矿分红系统开发应用案例及源码
- Spring5 入门案例
- 【小程序】案例 - 本地生活(首页)
- 【CSS】浮动 ④ ( 浮动布局案例 - 电商布局模块 | 案例分析 | 布局测量摆放 | 浮动布局代码示例 )
- 如何在面试中巧妙展现架构能力?附200道面试真题+100例经典架构案例拆解 | 极客时间
- Wiztalk | 100期 陶阳宇《机器学习平台如何兼顾工业界的高可用性和学术界的创新性-Angel详解及产业应用案例-2》
- 从0到1构建,一个SpringBoot对接支付宝沙箱环境案例
- [javaEE] 三层架构案例-用户模块(一)详解编程语言
- Oracle项目案例:实践为证(oracle项目实例)
- 实战案例:实现CentOS 7 编译安装基于 fastcgi 模式的多虚拟主机的wordpress和discuz的LAMP架构
- 实用Linux系统案例:从入门到精通(linux系统案例)
- Linux系统实战:一步步掌握其真谛(linux系统案例精解)
- MSSQL数据库中SQLSRV应用案例分享(sqlsrv mssql)
- 实用案例展示:如何利用c语言实现Redis应用(credis应用实例)
- OraclePL/SQL入门案例实践