keepalived高可用服务部署以及配置文件讲解

Efia ·
更新时间:2024-09-20
· 660 次阅读

高可用服务介绍
解决问题:解决架构单点故障
解决方式:
负载均衡服务器解决单点故障 keepalived
数据库服务解决单点故障: MHA
存储服务解决单点故障 : 利用分布式存储(复制卷)
keepalived软件介绍:
1)解决负载均衡单点问题,可以有主服务和备份服务器,主服务器出现问题,由备份服务器进行替代
2)可以有效管理配置LVS负载均衡服务
3)可以结合LVS对后端节点进行健康检查

keepalive高可用服务工作原理
lb01 : 部署高可用服务
第一个历程: 安装keepalived软件 (优化epel base 源)

yum install -y keepalived

第二个里程: 编写配置文件信息:

vi /etc/keepalived/keepalived.conf

keepalived配置文件由三个部分组成:
1) 配置文件核心区域配置
2) 配置文件vrrp协议信息配置
3) 配置文件LVS管理信息配置 临时删除

global_defs { --- 实现监控报警功能 主(问题)备切换 notification_email { --- 监控报警邮件发送通知人信息 acassen@firewall.loc failover@firewall.loc sysadmin@firewall.loc } notification_email_from 177780xxx@163.com --- 定义报警服务器信息 smtp_server smtp.163.com smtp_connect_timeout 30 router_id lb01 --- 表示主机身份信息 lb01 } vrrp_instance VI_1 { state MASTER --- 定义主机身份信息(MASTER BACKUP); 描述信息 interface eth0 --- 在接口上生成VIP(虚拟地址)地址信息 出现在外网网卡 virtual_router_id 51 --- 标记集群编号信息 priority 150 --- 优先级决定主或者备身份 优先级越高越有可能成为主 advert_int 1 --- 设置组播包发送间隔 3s authentication { --- 集群成员口令验证信息, 保证集群通讯安全性 auth_type PASS auth_pass 1111 } virtual_ipaddress { 10.0.0.3 --- 定义虚拟IP地址信息 } }

lb02 : 部署高可用服务
第一个里程: 安装keepalived软件 (优化epel base 源)
yum install -y keepalived

第二个历程: 编写配置文件信息:

global_defs { notification_email { acassen@firewall.loc failover@firewall.loc sysadmin@firewall.loc } notification_email_from 177780xxx@163.com smtp_server smtp.163.com smtp_connect_timeout 30 router_id lb02 --- 不一样 } vrrp_instance VI_1 { state BACKUP --- 不一样 interface eth0 virtual_router_id 51 priority 100 --- 不一样 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 10.0.0.3 } }

第三个历程: 启动程序服务

systemctl start keepalived

第四个历程:

[root@lb01 conf.d]# ip a 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:36:6b:fb brd ff:ff:ff:ff:ff:ff inet 10.0.0.31/24 brd 10.0.0.255 scope global noprefixroute eth0 valid_lft forever preferred_lft forever inet 10.0.0.3/32 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::fb9:288a:5511:3d31/64 scope link noprefixroute valid_lft forever preferred_lft forever 3: eth1: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:36:6b:05 brd ff:ff:ff:ff:ff:ff inet 172.16.1.31/16 brd 172.16.255.255 scope global noprefixroute eth1 valid_lft forever preferred_lft forever inet6 fe80::e3f5:3ab4:9d4b:c313/64 scope link noprefixroute valid_lft forever preferred_lft forever

主服务器lb01上有10.0.0.3,说明成功

补充:主服务的配置文件:

[root@lb01 conf.d]# 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 smtp.162.com smtp_connect_timeout 30 router_id lb01 } vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 150 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 10.0.0.3 } }

备份服务的配置文件:

[root@lb02 ~]# 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 smtp.162.com smtp_connect_timeout 30 router_id lb02 } vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 10.0.0.3 } }

当主服务器down掉后,备份服务器上自动为主服务。
出现IP地址10.0.0.3
lb02

[root@lb02 ~]# ip a 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:42:4b:89 brd ff:ff:ff:ff:ff:ff inet 10.0.0.61/24 brd 10.0.0.255 scope global noprefixroute eth0 valid_lft forever preferred_lft forever inet 10.0.0.3/32 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::7e0e:3213:5eff:ca05/64 scope link noprefixroute valid_lft forever preferred_lft forever 3: eth1: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:42:4b:93 brd ff:ff:ff:ff:ff:ff inet 172.16.1.61/16 brd 172.16.255.255 scope global noprefixroute eth1 valid_lft forever preferred_lft forever inet6 fe80::fe6b:e540:43ef:d1b5/64 scope link noprefixroute valid_lft forever preferred_lft forever 4: docker0: mtu 1500 qdisc noqueue state DOWN group default link/ether 02:42:f3:bc:fe:8f brd ff:ff:ff:ff:ff:ff inet 172.17.0.1/16 scope global docker0 valid_lft forever preferred_lft forever [root@lb02 ~]#
作者:半夜西风半身影



配置文件 keepalived

需要 登录 后方可回复, 如果你还没有账号请 注册新账号
相关文章