keepliaved双机热备

keepalived双机热备

Keepalived 的热备方式
Keepalived采用VRRP(Virtual Router Redundancy Protocol,虚拟路由冗余协议)热备份协议,以
软件的方式实现Linux服务器的多机热备功能。VRRP是针对路由器的一种备份解决方案——由多台
路由器组成一个热备组,通过共用的虚拟Р地址对外提供服务,每个热备组内同一时刻只有一台主
路由器提供服务,其他路由器处于冗余状态,若当前在线的路由器失效,则其他路由器会自动接替
(优先级决定接替顺序)虚拟IP地址,以继续提供服务。
热备组内的每台路由器都可能成为主路由器,虚拟路由器的P地址(VIP)可以在热备组内的路由器之间进行转移,所以也称为漂移Р地址。使用Keepalived 时,漂移地址的实现不需要手动建立虚接口配置文件(如ens33:0),而是由Keepalived根据配置文件自动管理。

1、准备工作

6台Linux虚拟机

​ centos01 centos02 WEB服务器

​ centos03 centos04 主备调度器

​ centos05 共享服务器

​ centos06 网关服务器

1台windows 用于测试访问WEB

2、安装httpd服务

1、centos01安装httpd

[root@centos01 ~]# yum -y install httpd

在这里插入图片描述
在这里插入图片描述

修改centos01访问内容 启动服务设置开机自启

[root@centos01 ~]# echo “www.benet.com” > /var/www/html/index.html
[root@centos01 ~]# systemctl start httpd
[root@centos01 ~]# systemctl enable httpd

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7dFQprQm-1606218572516)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1606205824901.png)]

2、centos02安装httpd

[root@centos02 ~]# yum -y install httpd

在这里插入图片描述

修改centos02访问内容 启动服务设置开机自启

[root@centos02 ~]# echo “www.accp.com” > /var/www/html/index.html
[root@centos02 ~]# systemctl start httpd
[root@centos02 ~]# systemctl enable httpd

在这里插入图片描述

3、配置主备调度器

1、配置主调度器

[root@centos03 ~]# yum -y install ipvsadm keepalived

[root@centos03 ~]# vim /etc/keepalived/keepalived.conf

主配置文件内容

! Configuration File for keepalived
global_defs {
	router_id LVS_HA_MASTER
}

vrrp_instance VI_1 {
    state MASTER
    interface ens32
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.100.254
    }
}

virtual_server 192.168.100.254 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    persistence_timeout 50
    protocol TCP
real_server 192.168.100.10 80 {
    weight 1
    TCP_CHECK {
    connect_port 80
        connect_timeout 3
        nb_get_retry 3
        delay_before_retry 3
    	}
	}
}

virtual_server 192.168.100.254 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    persistence_timeout 50
    protocol TCP
    real_server 192.168.100.20 80 {
    weight 1
    TCP_CHECK {
    connect_port 80
        connect_timeout 3
        nb_get_retry 3
        delay_before_retry 3
    	}
	}
}
2、配置备用调度器

[root@centos04 ~]# yum -y install ipvsadm keepalived

[root@centos04 ~]# scp root@192.168.100.30:/etc/keepalived/keepalived.conf /etc/keepalived/

备用配置文件内容

! Configuration File for keepalived
global_defs {
	router_id LVS_HA_BACKUP
}

vrrp_instance VI_1 {
    state BACKUP
    interface ens32
    virtual_router_id 51
    priority 99
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.100.254
    }
}

virtual_server 192.168.100.254 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    persistence_timeout 50
    protocol TCP
real_server 192.168.100.10 80 {
    weight 1
    TCP_CHECK {
    connect_port 80
        connect_timeout 3
        nb_get_retry 3
        delay_before_retry 3
 		}
	}
}

virtual_server 192.168.100.254 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    persistence_timeout 50
    protocol TCP
    real_server 192.168.100.20 80 {
    weight 1
    TCP_CHECK {
    connect_port 80
        connect_timeout 3
        nb_get_retry 3
        delay_before_retry 3
    	}
	}
}

在这里插入图片描述

3、启动主备调度器

[root@centos03 ~]# systemctl start keepalived

[root@centos04 ~]# systemctl start keepalived

在这里插入图片描述

4、修改LVS服务器内核参数

net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens32.send_redirects = 0

[root@centos03 ~]# vim /etc/sysctl.conf

在这里插入图片描述

[root@centos04 ~]# scp root@192.168.100.30:/etc/sysctl.conf /etc/
在这里插入图片描述

5、配置WEB内核参数

net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.default.arp_ignore = 1
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2

[root@centos01 ~]# vim /etc/sysctl.conf

在这里插入图片描述

[root@centos02 ~]# scp root@192.168.100.10:/etc/sysctl.conf /etc/

在这里插入图片描述

6、配置虚拟VIP

1、配置centos01

[root@centos01 ~]# cp /etc/sysconfig/network-scripts/ifcfg-lo /etc/sysconfig/network-scripts/ifcfg-lo:0

[root@centos01 ~]# vim /etc/sysconfig/network-scripts/ifcfg-lo:0

在这里插入图片描述

2、配置centos02

[root@centos02 ~]# cp /etc/sysconfig/network-scripts/ifcfg-lo /etc/sysconfig/network-scripts/ifcfg-lo:0

[root@centos02 ~]# vim /etc/sysconfig/network-scripts/ifcfg-lo:0
在这里插入图片描述

记得重启网卡

7、测试内网访问

更换ip即可更换访问的WEB

在这里插入图片描述
在这里插入图片描述

8、配置网关服务器

1、添加网卡

在这里插入图片描述

2、修改网卡内容

[root@centos06 ~]# cp /etc/sysconfig/network-scripts/ifcfg-ens32 /etc/sysconfig/network-scripts/ifcfg-ens34

[root@centos06 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens34

在这里插入图片描述

重启网卡服务

[root@centos06 ~]# systemctl restart network

3、安装DNS

[root@centos06 ~]# mount /dev/sr0 /mnt/

[root@centos06 ~]# yum -y install bind bind-utils bind-chroot

[root@centos06 ~]# vim /etc/named.conf

在这里插入图片描述

[root@centos06 ~]# vim /var/named/benet.com.zone

在这里插入图片描述

4、配置firewalld防火墙
[root@centos06 ~]# firewall-cmd --add-interface=ens32 --zone=trusted
[root@centos06 ~]# firewall-cmd --add-interface=ens34 --zone=external
[root@centos06 ~]# firewall-cmd --set-default-zone=trusted 
[root@centos06 ~]# firewall-cmd --zone=external --add-service=http
[root@centos06 ~]# firewall-cmd --zone=external --add-service=dns
[root@centos06 ~]# firewall-cmd --zone=external --add-port=80/tcp
[root@centos06 ~]# firewall-cmd --zone=external --remove-masquerade 
[root@centos06 ~]# firewall-cmd --zone=external --add-rich-rule='rule family=ipv4 source address=192.168.100.0/24 masquerade'
[root@centos06 ~]# firewall-cmd --zone=external --add-rich-rule='rule family=ipv4 destination address=192.168.200.10/32 forward-port port=80 protocol=tcp to-addr=192.168.100.254'

在这里插入图片描述

9、为cenos01到centos05添加网卡

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

10、测试外网访问

先清除浏览器缓存

更换ip访问测试能否切换WEB

在这里插入图片描述
在这里插入图片描述

11、配置存储服务器

1、安装服务器

[root@centos05 ~]# yum -y install nfs-utils rpcbind

2、配置服务器存储目录

[root@centos05 ~]# mkdir /www
[root@centos05 ~]# echo “www.nfs.com” > /www/index.html

3、修改存储目录配置

[root@centos05 ~]# vim /etc/exports

在这里插入图片描述

4、启动服务

[root@centos05 ~]# systemctl start nfs
[root@centos05 ~]# systemctl start rpcbind

5、查看共享存储

[root@centos05 ~]# showmount -e 192.168.100.50

在这里插入图片描述

6、为WEB服务器挂载共享存储

[root@centos01 ~]# mount 192.168.100.50:/www /var/www/html/

[root@centos02 ~]# mount 192.168.100.50:/www /var/www/html/

在这里插入图片描述

在这里插入图片描述

12、测试访问

更换ip测试,查看内容是否改变

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值