zoukankan      html  css  js  c++  java
  • 直接路由模式(LVS-DR)

    在DR模式的群集中,LVS负载调度器作为群集的访问入口,但不作为网关使用;服务器池中的所有节点都各自接入Internet,发送给客户机的Web响应数据包不需要经过LVS负载调度器。

    LVS-DR中的ARP问题分析

       在LVS-DR负载均衡集群中,负载均衡与节点服务器都要配置相同的VIP地址,但是在局域网中具有相同的IP地址,势必会造成各服务器ARP广播通信的混乱。

    当一个ARP广播发送到LVS-DR 集群时,因为负载均衡和节点服务器都是连接到相同的网络上的,他们都会接收到ARP广播,此时应该只有前端的负载均衡器进行响应,而其他节点服务器不应该相应ARP广播。

    解决方法:

    对节点服务器进行处理,使其不响应针对VIP的AIP请求,使用虚口lo:0 承载VIP 地址,设置内核参数arp_ignorre=1; 系统只响应目的ip为本地RIP的AIP请求。

    先准备三台虚拟机

    一个调度器,两个节点服务器

    (1)      所有主机关闭防火墙和selinux

       systemctl stop firewalld

       iptables -F

       setenforce 0

    (2)配置负载调度器

       配置虚拟ip地址(VIP)采用虚拟接口的方式(eno16777728),为网卡eno16777728绑定VIP地址,以便响应群集访问

    yum -y install ipvsadm

    ifconfig eno16777728:0 192.168.200.254 netmask 255.255.255.0 

    ifconfig eno16777728:0

    (3)配置负载分配策略

    ipvsadm -A -t 192.168.200.254:80 -s rr

    ipvsadm -a -t 192.168.200.254:80 -r 192.168.200.114:80 -g -w 1

    ipvsadm -a -t 192.168.200.254:80 -r 192.168.200.115:80 -g -w 1

    ipvsadm -Ln

    (4)配置节点服务器(两个节点服务器都安装)

    使用DR模式时,节点服务器也需要配置VIP地址,并调整内核的ARP响应参数以阻止更新VIP的MAC地址,避免发生冲突,除此之外,WEB服务的配置与NAT方式类似。

     在每个节点服务器,同样需要有VIP地址192.168.200.254,但此地址仅用作发送WEB响应数据包的源地址,并不需要监听客户机的访问请求(改由调度器监听并分发)。因此使用虚拟接口lo:0来承载VIP地址,并为本机添加一条路由记录,将访问VIP的数据限制在本地以避免通信混乱

    ifconfig lo:0 192.168.200.254 netmask 255.255.255.255

    ifconfig lo:0

    route add -host 192.168.200.254 dev lo:0

    (5)安装httpd,创建测试网页(两个节点服务器都安装)

    yum -y install httpd

    echo “1111” > /var/www/html/index.html

    systemctl start httpd

    (6)调整/proc响应参数

    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

    arp_ignore=1,系统只回答目的本地IP的包,也就是对广播不作响应

    arp_announce=2.系统忽略ip包的源地址,而根据主机,选择本地地址

    (7)测试LVS群集

     

  • 相关阅读:
    OC与Swift的区别二(常量、变量、运算符)
    OC与Swift的区别一(文件结构)
    OC对象的归档及解档浅析
    OC单例模式的实现
    oc文件基本读写及操作
    IOS之沙盒(Sandbox)机制
    IOS开发之KVC与KVO简述
    SpringMVC控制器配置文件
    spring常用的连接池属性文件配置
    Struts2文件上传方式与上传失败解决方式
  • 原文地址:https://www.cnblogs.com/liyurui/p/11628363.html
Copyright © 2011-2022 走看看