构建LVS负载均衡集群--NET模式
Posted tanxiaojuncom
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了构建LVS负载均衡集群--NET模式相关的知识,希望对你有一定的参考价值。
1、准备四台虚拟机(一台Linux配置LVM,两台Web,一台windows机测试)
2、关闭Linux虚拟机的防火墙和安全机制
systemctl stop firewalld iptables -F setenforce 0
一、配置LVM主机(给主机添加两个网卡,两个网卡不在一个模式下,分别配置IP地址)
网卡一:NET模式
网卡二:VMnet2模式
[root@localhost ~]# ip a | grep eno 2: eno16777728: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 inet 192.168.200.111/24 brd 192.168.200.255 scope global eno16777728 3: eno33554960: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 inet 172.16.1.1/16 brd 172.16.255.255 scope global eno33554960
1、开启路由功能
[root@localhost ~]# vim /etc/sysctl.conf //永久修改路由文件 net.ipv4.ip_forward = 1 [root@localhost ~]# sysctl -p //查看路由是否开启 net.ipv4.ip_forward = 1
2、安装ipvsadm管理工具
[root@localhost ~]# yum -y install ipvsadm
添加模块 ip_vs
[root@localhost ~]# modprobe ip_vs [root@localhost ~]# lsmod | grep ^ip_vs ip_vs 136798 0
检查版本
[root@localhost ~]# ipvsadm -v ipvsadm v1.27 2008/5/15 (compiled with popt and IPVS v1.2.1)
3、添加负载分配策略
[root@localhost ~]# ipvsadm -A -t 172.16.1.1:80 -s rr //加载一台虚拟主机IP为172.16.1.1 端口是80,算法为rr轮询 [root@localhost ~]# ipvsadm -a -t 172.16.1.1:80 -r 192.168.200.112:80 -m -w 1 //添加服务器节点192.168.200.112,net模式,权重为1 [root@localhost ~]# ipvsadm -a -t 172.16.1.1:80 -r 192.168.200.113:80 -m -w 1 -------------------------------------------- rr:轮询 wrr:加权轮询 lc:最小连接 wlc:加权最小连接 -------------------------------------------- -A:添加虚拟服务器 -t:用来指定VIP地址及TCP端口 -s:指定负载调度的算法 -a:添加服务器 -r:指定RIP地址及TCP端口 -m:使用NAT集群模式(-g:DR模式、-i:TUN模式) -w:设置权重(权重为0时表示暂停节点)
4、查看节点状态
1 [root@localhost ~]# ipvsadm -Ln 2 IP Virtual Server version 1.2.1 (size=4096) 3 Prot LocalAddress:Port Scheduler Flags 4 -> RemoteAddress:Port Forward Weight ActiveConn InActConn 5 TCP 172.16.1.1:80 rr 6 -> 192.168.200.112:80 Masq 1 0 0 7 -> 192.168.200.113:80 Masq 1 0 0
二、设置两台轮询(web)主机
修改主机的网关地址,使两台web主机的网关指向LVS主机的内网IP(192.168.200.111)
1、第一台主机:
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eno16777728 ONBOOT=yes IPADDR=192.168.200.112 NETMASK=255.255.255.0 GATEWAY=192.168.200.111 //修改网关地址 DNS1=202.106.0.20
[root@localhost ~]# systemctl restart network //重启网络服务
yum安装apache,开启服务
[root@localhost ~]# yum -y install httpd
[root@localhost ~]# systemctl start httpd
创建测试文件
[root@localhost ~]# echo "11111111" > /var/www/html/index.html
2、第二台主机
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eno16777728 ONBOOT=yes IPADDR=192.168.200.113 NETMASK=255.255.255.0 GATEWAY=192.168.200.111 DNS1=202.106.0.20
[root@localhost ~]# systemctl restart network //重启网络服务
yum安装apache,开启服务
[root@localhost ~]# yum -y install httpd
[root@localhost ~]# systemctl start httpd
创建测试文件
[root@localhost ~]# echo "2222222" > /var/www/html/index.html
三、windows测试机测试
windows主机的IP与虚拟主机的IP在同一网段下,并且要处于同一模式下
在LVS主机上创建测试脚本,就可以看见轮询的效果了。
[root@localhost ~]# while : > do > curl 172.16.1.1 > sleep 2 > done 11111111 2222222 11111111 2222222 11111111 2222222
以上是关于构建LVS负载均衡集群--NET模式的主要内容,如果未能解决你的问题,请参考以下文章