keepalived安装部署

keepalived安装

keepalived 是什么?

Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个
服务节点的状态,后来又加入了可以实现高可用的VRRP功能。因此,Keepalived除了能够管
理LVS软件外,还可以作为其他服务(例如:Nginx、Haproxy、MySQL等)的高可用解决方
案软件。
Keepalived软件主要是通过VRRP协议实现高可用功能的。VRRP是Virtual Router
RedundancyProtocoK虚拟路由器冗余协议)的缩写,VRRP出现的目的就是为了解决静态路
由单点故障问题的,它能够保证当个别节点宕机时,整个网络可以不间断地运行。
所以,Keepalived —方面具有配置管理LVS的功能,同时还具有对LVS下面节点进行健康检
查的功能,另一方面也可实现系统网络服务的高可用功能。
keepalived 官网
keepalived的重要功能

keepalived有三个重要的功能,分别是:

•管理LVS负载均衡软件
•实现LVS集群节点的健康检查中
•作为系统网络服务的高可用性(failover)

环境

设备 ip地址
centos7 192.168.89.130
centos7 192.168.89.129

1.两台设备都安装keepalived

[root@localhost ~]# yum install keepalived -y
[root@localhost ~]# rpm -ql keepalived
/etc/keepalived/keepalived.conf     keepalived服务主配置文件
/etc/rc.d/init.d/keepalived         服务启动脚本
/etc/sysconfig/keepalived
/usr/bin/genhash
/usr/lib/systemd/system/keepalived.service    服务控制文件
/usr/libexec/keepalived
/usr/sbin/keepalived

2.在两台设备都部署httpd

2.1 192.168.89.129部署

[root@localhost ~]# yum install -y httpd
[root@localhost ~]# systemctl start httpd
[root@localhost ~]# echo “129” >> /var/www/html/index.html
[root@localhost ~]# curl http://192.168.89.129    查看返回值
“129”

2.2 192.168.89.130部署

[root@localhost ~]# yum install -y httpd
[root@localhost ~]# systemctl start httpd
[root@localhost ~]# echo “130” >> /var/www/html/index.html
[root@localhost ~]# curl http://192.168.89.130     
“130”

3.配置keepalived

3.1 配置主keepalived(192.168.89.130)

[root@localhost ~]# vim /etc/keepalived/keepalived.conf
global_defs {
   router_id lb01     路由ID号,不能重复
}


vrrp_instance VI_1 {
    state MASTER      说明为主备
    interface ens33    虚拟IP防止网卡位置
    virtual_router_id 51    同一集群ID应该一致
    priority 100      优先级,数字越高优先级越高,决定主备
    advert_int 1      主备通讯时间间隔
    authentication {
        auth_type PASS
        auth_pass 1111       认证号,同一集群应该一致
    }   
    virtual_ipaddress {
        192.168.89.150     虚拟IP,与现有IP应不冲突
    }   
}
[root@localhost ~]# systemctl restart keepalived

3.2配置备keepalived(192.168.89.129)

[root@localhost ~]# vim /etc/keepalived/keepalived.conf
global_defs {
   router_id lb02   更改内容
}
vrrp_instance VI_1 {
    state BACKUP   谁被备份
    interface ens33
    virtual_router_id 51
    priority 90     降低数字
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.89.150
    }
}
[root@localhost ~]# systemctl restart keepalived

4.测试

4.1 查看master端

[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> 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: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:e1:46:7d brd ff:ff:ff:ff:ff:ff
    inet 192.168.89.130/24 brd 192.168.89.255 scope global noprefixroute dynamic ens33
       valid_lft 1747sec preferred_lft 1747sec
    inet 192.168.89.150/32 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::ed9:2153:d66f:1db9/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever


[root@localhost ~]# ping 192.168.89.129    测试是否能通
PING 192.168.89.129 (192.168.89.129) 56(84) bytes of data.
64 bytes from 192.168.89.129: icmp_seq=1 ttl=64 time=1.56 ms
64 bytes from 192.168.89.129: icmp_seq=2 ttl=64 time=0.479 ms
64 bytes from 192.168.89.129: icmp_seq=3 ttl=64 time=0.521 ms
64 bytes from 192.168.89.129: icmp_seq=4 ttl=64 time=0.865 ms
--- 192.168.89.129 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3006ms
rtt min/avg/max/mdev = 0.479/0.856/1.560/0.433 ms

4.2查看server端

[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> 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: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:47:80:d4 brd ff:ff:ff:ff:ff:ff
    inet 192.168.89.129/24 brd 192.168.89.255 scope global noprefixroute dynamic ens33
       valid_lft 1548sec preferred_lft 1548sec
    inet6 fe80::87d5:9fca:fb19:7de0/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

4.3网页查看

在这里插入图片描述
关闭主节点的keepalived

[root@localhost ~]# systemctl stop keepalived

查看备用段的设备情况

[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> 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: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:47:80:d4 brd ff:ff:ff:ff:ff:ff
    inet 192.168.89.129/24 brd 192.168.89.255 scope global noprefixroute dynamic ens33
       valid_lft 1240sec preferred_lft 1240sec
    inet 192.168.89.150/32 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::87d5:9fca:fb19:7de0/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

在这里插入图片描述

#5.错误
如果PING虚拟IP不通的话,可以选择将/etc/keepalived/keepalived.conf的vrrp_strict这一行注释掉或者删去即可

猜你喜欢

转载自blog.csdn.net/Empty_city_dreams/article/details/83576905