LVS集群搭建

  • Post author:
  • Post category:其他


一、LVS 集群部署

1、LVS 集群工作结构图

2、LVS的负载调度算法


1、轮询(rr,RoundRobin)



2、加权轮询(wrr,Weighted RoundRobin)



3、最少连接(lc, LeastConnections)



4、加权最少连接(wlc,WeightedLeastConnections)



5、source hashing源地址hash(sh


3、LVS优点



1.抗负载能力强



2.配置性低



3.工作稳定



4.无流量



5.lvs基本上能支持所有应用

4、LVS工作模式



LVS有三种工作模式:NAT,DR,TUN,DR是三种工作模式中性能最高的,TUN次之。



1.NAT(NetworkAddress Translation)即网络地址映射模式



2.DR(DirectRouting)即直接路由模式



3.TUN(IP Tunneling)即IP隧道模式


5、LVS-NAT 模式工作原理

1.客户端访问VIP1的网站



CIP 客户端的IP



VIP 是域名解析的IP, 是集群对外的公网IP



DIP 用来和后端服务器进行数据交互的IP, 请求报文转发给后端服务器从此口出去



RIP 真实服务器的IP

2.调度器使用NAT进行地址转换

3.真实服务器返回处理结果

4.配置LVS-NAT

1.项目拓扑

2.机器部署

3.环境准备



3台机器全部关闭防火墙,做静态解析,做免密登录



node2、node3上安装httpd服务



配置真实服务器



node2、node3上安装httpd服务



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



[root@node2 ~]# systemctl start httpd



[root@node2 ~]# systemctl enable httpd



[root@node2 ~]# systemctl status httpd



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



[root@node3 ~]# systemctl start httpd



[root@node3 ~]# systemctl enable httpd



[root@node3 ~]# systemctl status httpd



node2、node3上生成测试网页



[root@node2 ~]# echo ‘Node2:192.168.0.99 server is serving you!!!’ >



/var/www/html/index.html



[root@node3 ~]# echo ‘Node3:192.168.0.111 server is serving you!!!’ >



/var/www/html/index.html



node2、node3上修改网关



[root@node2 ~]# sed -i “s/192.168.0.2/192.168.0.88/g”



/etc/sysconfig/network-scripts/ifcfg-ens32



[root@node3 ~]# sed -i “s/192.168.0.2/192.168.0.88/g”



/etc/sysconfig/network-scripts/ifcfg-ens32



node2、node3上做访问测试



[root@node2 ~]# curl 192.168.0.99



Node2:192.168.0.99 server is serving you!!!



[root@node2~]# curl 192.168.0.111



Node3:192.168.0.111server is serving you!!!



[root@node3 ~]# curl192.168.0.111



Node3:192.168.0.111 server is serving you!!!



[root@node3 ~]# curl192.168.0.99



Node2:192.168.0.99 server is serving you!!!



node1上做访问测试



[root@node1 ~]# curl 10.20.5.88



Node3:192.168.0.111 server is serving you!!!



[root@node1 ~]# curl 10.20.5.88



Node2:192.168.0.99 server is serving you!!!



Windows端访问测试




http://192.168.0.99/




Windows访问测试




http://192.168.0.111/


4.配置负载均衡器


a.node1添加一张网卡



第2张网卡选择自定义模式



设置VMnet1属性



禁用并重启



node1:修改第2张网卡配置文件



[root@node1 ~]# nmcli conn



[root@node1 ~]# cd/etc/sysconfig/network-scripts/



[root@node1 network-scripts]# cp ifcfg-ens32 ifcfg-ens34



[root@node1 network-scripts]# vim ifcfg-ens34



node1:重启网卡,查看网卡信息



[root@node1 ~]# systemctl restart network



[root@node1 ~]# ip a


b.node1打开路由转发功能



[root@node1 ~]# echo “net.ipv4.ip_forward = 1” >> /etc/sysctl.conf



[root@node1 ~]# sysctl -p



net.ipv4.ip_forward = 1


c.加载LVS内核模块



[root@node1 ~]# modprobe ip_vs



[root@node1 ~]# lsmod | grep ip_vs



[root@node1 ~]# cat /proc/net/ip_vs



node1做静态解析



[root@node1 ~]# vim /etc/hosts



[root@node1 ~]# cat /etc/hosts


d.安装LVS管理工具: ipvsadm



[root@node1 ~]# yum install -y ipvsadm



[root@node1 ~]# systemctl enable ipvsadm



[root@node1 ~]# ipvsadm-C #清除内核虚拟服务器表中的所有记录



[root@node1 ~]# ipvsadm -A -t 10.20.5.88:80 -s rr #创建虚拟服务器



[root@node1 ~]# ipvsadm -a -t 10.20.5.88:80 -r 192.168.0.99:80 -m



[root@node1 ~]# ipvsadm -a -t 10.20.5.88:80 -r 192.168.0.111:80 -m



查看配置



[root@node1 ~]# ipvsadm -Ln



保存配置或规则



[root@node1 ~]# ipvsadm –save > /etc/sysconfig/ipvsadm



[root@node1 ~]# cat /etc/sysconfig/ipvsadm

二、测试LVS集群

1、crul命令访问



[root@node1 ~]# curl 10.20.5.88



Node2:192.168.0.99 server is serving you!!!



[root@node1 ~]# curl 10.20.5.88



Node3:192.168.0.111 server is serving you!!!



[root@node1 ~]# curl 10.20.5.88



Node2:192.168.0.99 server is serving you!!!



[root@node1 ~]# curl 10.20.5.88



Node3:192.168.0.111 server is serving you!!!



查看客户端连接分发器和real server的情况



[root@node1 ~]# ipvsadm -Lnc

2、Windows端访问测试


http://10.20.5.88/


http://10.20.5.88/

3、查看分发情况



[root@node1 ~]# ipvsadm -Ln –stats

4、查看速率



[root@node1 ~]# ipvsadm -Ln –rate

5、清空当前连接数量



[root@node1 ~]# ipvsadm -Z



[root@node1 ~]# ipvsadm -Ln –stats



删除服务器节点



[root@node1 ~]# ipvsadm -d -t 10.20.5.88:80 -r 192.168.0.111:80



[root@node1 ~]# ipvsadm -Ln



删除整个虚拟服务器



[root@node1 ~]# ipvsadm -D -t 10.20.5.88:80



[root@node1 ~]# ipvsadm -Ln



版权声明:本文为XBLYL1992原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。