小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)

目录

一、keepalived+lvs作用

二、调度器配置

部署LVS主备调度器

调整master和backup的ARP参数(一致)全都安装一遍

启动master和backup的keepalived与ipvsadm

三、web节点配置

1、调整ARP参数

2、 配置虚拟IP地址

3、添加回环路由

 一、keepalived双机热备

二、概述

1、  Keepalived 是一个基于 VRRP 协议来实现的 LVS 服务高可用方案,可以解决静态路由出现的单点故障问题。

2、  原理

3、解决单点故障问题

三、安装

1、配置文件

2、配置项

四、功能模块

1、core

2、vrrp

3、check

五、配置双机热备

六、配置共享文件

七、双机热备的脑裂现象

1、Keepalived配置里同一 VRRP实例

2、vrrp实例名字不一致、优先级一致

3、防火墙打开,导致心跳无法正常通信

4、网卡故障       网卡进行多路复用

八、VIP无法通信


一、keepalived+lvs作用

使用keepalived解决lvs的单点故障

高可用集群

二、调度器配置

lvs的配置是一主一从和两台WEB服务器分别IP为

mgt192.168.28.3

master 192.168.28.4

slave1 192.168.28.5

slave2 192.168.28.6

部署LVS主备调度器

调整master和backup的ARP参数(一致)全都安装一遍

 vim /etc/sysctl.conf 

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

sysctl -p

小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第1张图片

小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第2张图片

安装keepalived

安装ipvsadm

yum install -y keepalived

yum install -y ipvsadm

modprobe ip_vs 

配置keepalived

主配置完毕直接传送给从

 scp keepalived.conf 192.168.28.4:/etc/keepalived/keepalived.conf

global_defs {
   router_id NGINX1
}

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

virtual_server 192.168.28.200 80 {
    delay_loop 6
    lb_algo rr
global_defs {
   router_id NGINX1
}

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

virtual_server 192.168.28.200 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    #persistence_timeout 50
    protocol TCP

    real_server 192.168.28.5 80 {
        weight 1
        HTTP_GET {
            url {
              path /
            }
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
    real_server 192.168.28.6 80 {
        weight 1
        HTTP_GET {
            url {
              path /
            }
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
}

global_defs {
   router_id NGINX1
}

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.28.200
    }
}

virtual_server 192.168.28.200 80 {
    delay_loop 6
    lb_algo rr
    lb_kind DR
    #persistence_timeout 50
    protocol TCP

    real_server 192.168.28.5 80 {
        weight 1
        HTTP_GET {
            url {
              path /
            }
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
    real_server 192.168.28.6 80 {
        weight 1
        HTTP_GET {
            url {
              path /
            }
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 3
        }
    }
}

 创建文件夹这是在Linux系统中创建一个名为ipvsadm的文件。该文件是用于配置IPVS(IP Virtual Server)的工具,IPVS是一个Linux内核中的负载均衡器。在该文件中,可以设置IPVS的参数和规则,以便实现负载均衡和高可用性。

 touch /etc/sysconfig/ipvsadm

启动master和backup的keepalived与ipvsadm

 systemctl restart keepalived

 modprobe ip_vs

 ipvsadm -ln

查看lvs节点状态                  ipvsadm -ln

小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第3张图片

三、web节点配置

1、调整ARP参数

vim /etc/sysctl.conf

vim /etc/sysctl.conf 

sysctl -p

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

小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第4张图片

小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第5张图片

slave1和slave2 分别安装nginx

yum -y install epel-release

yum -y install nginx

cd /usr/share/nginx/html/

echo nginx2 > index.html 

cat index.html 

2、 配置虚拟IP地址

 cd /etc/sysconfig/network-scripts/

 cp ifcfg-lo ifcfg-lo:0

 vim ifcfg-lo:0

web1与web2分别写一个index.html用于测试的网站根目录

web1与web2创建虚拟ip

cd /etc/sysconfig/network-scripts/

cp ifcfg-lo ifcfg-lo:0

vim ifcfg-lo:0

DEVICE=lo:0
IPADDR=192.168.28.200
NETMASK=255.255.255.255
ONBOOT=yes
NAME=loopback:0


重启网络一下

systemctl restart network

3、添加回环路由

route add -host 192.168.28.200/32 dev lo:0

 route add -host 192.168.28.200/32 dev lo:0


 测试(下面可以看到测试成功,自动切换web1与web2)

小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第6张图片

小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第7张图片

  两个库测试阶段只有一个可以用

 关闭主库

[root@localhost ~]# systemctl stop keepalived

[root@localhost ~]# systemctl stop ipvsadm

开启备库

[root@localhost ~]# systemctl restart keepalived

[root@localhost ~]# curl 192.168.28.200

小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第8张图片


 一、keepalived双机热备

二、概述

1、  Keepalived 是一个基于 VRRP 协议来实现的 LVS 服务高可用方案,可以解决静态路由出现的单点故障问题。

2、  原理

 在一个 LVS 服务集群中通常有主服务器(MASTER)和备份服务器(BACKUP)两种角色的服务器,但

是对外表现为一个虚拟 IP,主服务器会发送 VRRP 通告信息给备份服务器,当备份服务器收不到 VRRP消息的时候,即主服务器异常的时候,备份服务器就会接管虚拟 IP,继续提供服务,从而保证了高可用性。

3、解决单点故障问题

三、安装

三台主机一台master两台slave

slave1和slave2安装keepalived

yum install -y keepalived

slave1

小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第9张图片

 slave2小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第10张图片

1、配置文件

 /etc/keepalived/keepalived.conf

cp /etc/keepalived/keepalived.conf  /etc/keepalived/keepalived.conf.backup 

vim /etc/keepalived/keepalived.conf 

systemctl restart keepalived

2、配置项

 router_id 1          定义节点id

state MASTER|BACKUP         定义节点主从状态

interface ens33        配置监听的网卡

virtual_router_id 51            同一个热备组要保持一致

priority 100            节点优先级

advert_int 1            多少秒进行一次心跳检测

authentication {

auth_type PASS

auth_pass 1111

}

keepalived节点的认证方式,同一个keepalived双机热备组一定要保持一致

virtual_ipaddress             配置VIP,即漂移地址

 vrrp

四、功能模块

1、core

主进程启动

2、vrrp

vrrp协议:热备份路由协议

3、check

健康状态检测

五、配置双机热备

slave1和slave2

master

backup

六、配置共享文件

主master创建文件并分享出去

mkdir /opt/tuep

vim /etc/exports

systemctl restart nfs

showmount -e 192.168.28.4

 小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第11张图片

 回到slave1和slave2上查看一下并挂载全部操作一下

 showmount -e 192.168.28.4

 mount 192.168.28.4:/opt/tuep /usr/share/nginx/html

小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第12张图片

 回主服务master

 echo nginx1 > index.html

小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第13张图片

 回从服务器查看一下slava1和slave2

 ll /usr/share/nginx/html/

先看slave1的IP a

 主机查看一下

小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第14张图片

 停止slave1的keepalived

 去slave2查看IP a再去主机刷新一下

 小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)_第15张图片

七、双机热备的脑裂现象

1、Keepalived配置里同一 VRRP实例

如果 virtual_router_id两端参数配置不一致也会导致裂脑问题发生。

2、vrrp实例名字不一致、优先级一致

3、防火墙打开,导致心跳无法正常通信

4、网卡故障       网卡进行多路复用

八、VIP无法通信

注释:vrrp_strict

你可能感兴趣的:(linux,学习,lvs)