400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

LVS-DR数据包流向分析介绍-创新互联

下文给大家带来LVS-DR数据包流向分析介绍,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用创新互联在行业内累计的经验来做一个解答。

成都创新互联公司成立于2013年,是专业互联网技术服务公司,拥有项目成都网站制作、成都网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元白河做网站,已为上家服务,为白河各地企业和个人服务,联系电话:028-86922220

LVS-DR数据包流向分析

LVS-DR中的ARP问题

解决ARP的两个问题的设置方法

Keepalived

LVS-DR数据包流向分析介绍

Keepalived工具介绍

专为LVS和HA设计的一-款健康检查工具

Keepalived实现原理剖析

常用配置选项讲解
Keepalived备份服务器的配置与master的配置有三个选项不同

负载均衡+高可用群集

LVS——DR模式+keepalived群集实践

LVS-DR数据包流向分析介绍

实验环境

在lvs1调度服务器上安装keepalived,ipvsadm服务
root@lvs1 ~]# yum install keepalived ipvsadm -y
[root@lvs1 ~]# vim /etc/sysctl.conf       //配置路由转发功能
net.ipv4.ip_forward=1              //路由功能
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0    //proc响应关闭重定向功能
net.ipv4.conf.ens33.send_redirects = 0
[root@lvs1 ~]# sysctl -p           //加载生效
[root@lvs1 ~]# cd /etc/sysconfig/network-scripts/
[root@lvs1 network-scripts]# cp -p ifcfg-ens33 ifcfg-ens33:0    //复制虚拟网卡的配置文件
[root@lvs1 network-scripts]# vim ifcfg-ens33:0
DEVICE=ens33:0                   //添加配置文件信息,原有的信息删除
ONBOOT=yes
IPADDR=192.168.100.10
NETMASK=255.255.255.0
[root@lvs1 network-scripts]# cd /etc/init.d/       //创建脚本便于service使用
[root@lvs1 init.d]# vim dr.sh
#!/bin/bash
GW=192.168.100.1
VIP=192.168.100.10                //虚拟ip
RIP1=192.168.100.200              //真实web服务器ip
RIP2=192.168.100.222
case "$1" in
start)
         /sbin/ipvsadm --save > /etc/sysconfig/ipvsadm        //保存配置
         systemctl start ipvsadm                    //启动服务
         /sbin/ifconfig ens33:0 $VIP broadcast $VIP netmask 255.255.255.255 broadcast $VIP up  //设置ens33:0地址,广播地址,子网掩码,并开启
         /sbin/route add -host $VIP dev ens33:0        //添加路由网段信息
         /sbin/ipvsadm -A -t $VIP:80 -s rr           //指定虚拟服务访问入口,指定轮询算法
         /sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -g        //指定真实服务器,dr模式
         /sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -g
         echo "ipvsadm starting --------------------[ok]"
         ;;
stop)
         /sbin/ipvsadm -C                //清空缓存
         systemctl stop ipvsadm             //关闭服务
         ifconfig ens33:0 down              //关闭接口
         route del $VIP                  //删除路由信息
         echo "ipvsamd stoped----------------------[ok]"
         ;;
status)
         if [ ! -e /var/lock/subsys/ipvsadm ];then          //判断文件存在与否决定状态
         echo "ipvsadm stoped---------------"
         exit 1
                 else
                 echo "ipvsamd Runing ---------[ok]"
         fi
         ;;
*)
         echo "Usage: $0 {start|stop|status}"
         exit 1
esac
exit 0
[root@lvs1 init.d]# chmod +x dr.sh                 //给执行权限
修改lvs1服务器为仅主机模式,并修改网卡配置
[root@lvs1 init.d]# vim /etc/sysconfig/network-scripts/ifcfg-ens33    //修改网卡信息
BOOTPROTO=static
IPADDR=192.168.100.110
NETMASK=255.255.255.0
GATEWAY=192.168.100.1
[root@lvs1 init.d]# service network restart         //重启网络服务
[root@lvs1 init.d]# ifup ens33:0              //开启虚拟网卡
[root@lvs1 init.d]# service dr.sh start            //开启lvs服务
ipvsadm starting --------------------[ok]
[root@lvs1 init.d]# systemctl stop firewalld.service        //关闭防火墙
[root@lvs1 init.d]# setenforce 0
修改lvs2调度服务器配置
[root@lvs2 ~]# yum install keepalived ipvsadm -y
[root@lvs2 ~]# vim /etc/sysctl.conf         //配置路由转发功能
net.ipv4.ip_forward=1             //路由功能
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0   //proc响应关闭重定向功能
net.ipv4.conf.ens33.send_redirects = 0
[root@lvs2 ~]# sysctl -p          //加载生效
[root@lvs2 ~]# cd /etc/sysconfig/network-scripts/
[root@lvs2 network-scripts]# cp -p ifcfg-ens33 ifcfg-ens33:0   //复制虚拟网卡的配置文件
[root@lvs2 network-scripts]# vim ifcfg-ens33:0
DEVICE=ens33:0            //添加配置文件信息,原有的信息删除
ONBOOT=yes
IPADDR=192.168.100.10
NETMASK=255.255.255.0
[root@lvs2 network-scripts]# cd /etc/init.d/       //创建脚本便于service使用
[root@lvs2 init.d]# vim dr.sh
#!/bin/bash
GW=192.168.100.1
VIP=192.168.100.10    //虚拟ip
RIP1=192.168.100.200      //真实web服务器ip
RIP2=192.168.100.222
case "$1" in
start)
         /sbin/ipvsadm --save > /etc/sysconfig/ipvsadm   //保存配置
         systemctl start ipvsadm       //启动服务
         /sbin/ifconfig ens33:0 $VIP broadcast $VIP netmask 255.255.255.255 broadcast $VIP up  //设置ens33:0地址,广播地址,子网掩码,并开启
         /sbin/route add -host $VIP dev ens33:0       //添加路由网段信息
         /sbin/ipvsadm -A -t $VIP:80 -s rr        //指定虚拟服务访问入口,指定轮询算法
         /sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -g     //指定真实服务器,dr模式
         /sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -g
         echo "ipvsadm starting --------------------[ok]"
         ;;
stop)
         /sbin/ipvsadm -C      //清空缓存
         systemctl stop ipvsadm     //关闭服务
         ifconfig ens33:0 down      //关闭接口
         route del $VIP      //删除路由信息
         echo "ipvsamd stoped----------------------[ok]"
         ;;
status)
         if [ ! -e /var/lock/subsys/ipvsadm ];then     //判断文件存在与否决定状态
         echo "ipvsadm stoped---------------"
         exit 1
                 else
                 echo "ipvsamd Runing ---------[ok]"
         fi
         ;;
*)
         echo "Usage: $0 {start|stop|status}"
         exit 1
esac
exit 0
[root@lvs2 init.d]# chmod +x dr.sh       //给执行权限

[root@lvs2 init.d]# vim /etc/sysconfig/network-scripts/ifcfg-ens33     //修改网卡信息,切换为仅主机模式
BOOTPROTO=static
IPADDR=192.168.100.111
NETMASK=255.255.255.0
GATEWAY=192.168.100.1
[root@lvs2 init.d]# service network restart      //重启网络服务
[root@lvs2 init.d]# ifup ens33:0          //开启虚拟网卡
[root@lvs2 init.d]# service dr.sh start        //开启lvs服务
ipvsadm starting --------------------[ok]
[root@lvs2 init.d]# systemctl stop firewalld.service  ##关闭防火墙
[root@lvs2 init.d]# setenforce 0
配置web1节点服务器
[root@web1 ~]# yum install httpd -y     //安装web服务
[root@web1 ~]# systemctl stop firewalld.service      //关闭防火墙
[root@web1 ~]# setenforce 0
[root@web1 ~]# echo "this is kgc web" > /var/www/html/index.html     //创建网站页面
[root@web1 ~]# cd /etc/sysconfig/network-scripts/  
[root@web1 network-scripts]# cp -p ifcfg-lo ifcfg-lo:0      //修改回环网卡的虚拟网卡
[root@web1 network-scripts]# vim ifcfg-lo:0
DEVICE=lo:0
IPADDR=192.168.100.10
NETMASK=255.255.255.0
ONBOOT=yes
[root@web1 network-scripts]# cd /etc/init.d/
[root@web1 init.d]# vim web.sh         //编写arp脚本
#!/bin/bash
VIP=192.168.100.10
         case "$1" in
         start)
                 ifconfig lo:0 $VIP netmask 255.255.255.255 broadcast $VIP
                 /sbin/route add -host $VIP dev lo:0
                 echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore    //arp忽略
                 echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
                 echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
                 echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
                 sysctl -p >/dev/null 2>&1
                 echo "RealServer Start OK "
                 ;;
         stop)
                 ifconfig lo:0 down
                 route del $VIP /dev/null 2>&1
                 echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore    //arp开启
                 echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
                 echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
                 echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
                 echo "RealServer Stopd"
                 ;;
         *)
                 echo "Usage: $0 {start|stop}"
                 exit 1
         esac
         exit 0
[root@web1 init.d]# chmod +x web.sh      //给权限
配置web1网卡
[root@web1 init.d]# vim /etc/sysconfig/network-scripts/ifcfg-ens33     //修改网卡,仅主机模式
BOOTPROTO=static
IPADDR=192.168.100.200
NETMASK=255.255.255.0
GATEWAY=192.168.100.1
[root@web1 init.d]# service network restart     //重启网络服务
[root@web1 init.d]# service web.sh start     //启动脚本
RealServer Start OK 
[root@web1 init.d]# systemctl start httpd.service    //开启web服务
[root@web1 init.d]# ifup lo:0         //开启回环虚拟网卡
配置web2节点服务器和web1相同的配置
[root@web2 ~]# yum install httpd -y        //安装web服务
[root@web2 ~]# systemctl stop firewalld.service    //关闭防火墙
[root@web2 ~]# setenforce 0
[root@web2 ~]# echo "this is accp web" > /var/www/html/index.html   //创建网站页面
[root@web2 ~]# cd /etc/sysconfig/network-scripts/  
[root@web2 network-scripts]# cp -p ifcfg-lo ifcfg-lo:0     //修改回环网卡的虚拟网卡
[root@web2 network-scripts]# vim ifcfg-lo:0
DEVICE=lo:0
IPADDR=192.168.100.10
NETMASK=255.255.255.0
ONBOOT=yes
[root@web2 network-scripts]# cd /etc/init.d/
[root@web2 init.d]# vim web.sh         //编写arp脚本
#!/bin/bash
VIP=192.168.100.10
         case "$1" in
         start)
                 ifconfig lo:0 $VIP netmask 255.255.255.255 broadcast $VIP
                 /sbin/route add -host $VIP dev lo:0
                 echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore    //arp忽略
                 echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
                 echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
                 echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
                 sysctl -p >/dev/null 2>&1
                 echo "RealServer Start OK "
                 ;;
         stop)
                 ifconfig lo:0 down
                 route del $VIP /dev/null 2>&1
                 echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore    //arp开启
                 echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
                 echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
                 echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
                 echo "RealServer Stopd"
                 ;;
         *)
                 echo "Usage: $0 {start|stop}"
                 exit 1
         esac
         exit 0
[root@web2 init.d]# chmod +x web.sh       //给权限
配置web2网卡
[root@web2 init.d]# vim /etc/sysconfig/network-scripts/ifcfg-ens33    //修改网卡,仅主机模式
BOOTPROTO=static
IPADDR=192.168.80.222
NETMASK=255.255.255.0
GATEWAY=192.168.80.1
[root@web2init.d]# service network restart      //重启网络服务
[root@web2init.d]# service web.sh start       //启动脚本
RealServer Start OK 
[root@web2 init.d]# systemctl start httpd.service    //开启web服务
[root@web2 init.d]# ifup lo:0       //开启回环虚拟网卡
配置lvs1上keepalived部署
[root@lvs1 init.d]# vim /etc/keepalived/keepalived.conf
global_defs {
   ...
   smtp_server 127.0.0.1        //指向本地
   router_id LVS_01     //指定名称,备份服务器不同名称
   ...       
}

vrrp_instance VI_1 {
   state MASTER         //备份服务器是BACKUP
   virtual_router_id 10     //组号相同
   ...
   auth_pass abc123       //验证密码
   priority 100         //优先级备份小于主服务器
   ...
   virtual_ipaddress {
         192.168.100.10
     }
   ...
virtual_server 192.168.100.10 80 {
...
   real_server 192.168.100.200 80 {
         weight 1
         TCP_CHECK {
             connect_port 80    
             connect_timeout 3
             nb_get_retry 3
             delay_before_retry 3
         }  
     }  
     real_server 192.168.100.222 80 {
         weight 1
         TCP_CHECK {            //tcp
             connect_port 80          //添加端口
             connect_timeout 3
             nb_get_retry 3
             delay_before_retry 3
         }  
     }   
}
[root@lvs1 init.d]# systemctl start keepalived.service 
[root@lvs1 init.d]# scp /etc/keepalived/keepalived.conf root@192.168.100.111:/etc/keepalived/   //复制到lvs2服务器上
在lvs2服务器上修改keepalived配置文件
[root@lvs2 init.d]# vim /etc/keepalived/keepalived.conf  ##修改keepalive配置文件
router_id LVS_02  ##router_id不能相同
...
state BACKUP   ##备服务器
...
priority 90   ##优先级低于主服务器
[root@lvs2 init.d]# systemctl start keepalived.service   ##启动keepalive服务
使用client测试机测试(访问不到重启全部服务即可)

LVS-DR数据包流向分析介绍

看了以上关于LVS-DR数据包流向分析介绍,如果大家还有什么地方需要了解的可以在创新互联行业资讯里查找自己感兴趣的或者找我们的专业技术工程师解答的,创新互联技术工程师在行业内拥有十几年的经验了。创新互联官网链接www.yisu.com

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享文章:LVS-DR数据包流向分析介绍-创新互联
URL标题:http://mbwzsj.com/article/hcoej.html

其他资讯

让你的专属顾问为你服务