LINUX负载均衡LVS-NAT搭建
2018-03-01 10:18
435 查看
1.搭建前的规划工作这里从lvs官方网站找了一个nat模型的图,如下:
我这里使用虚拟机模拟出了4台rhel6机器。一台服务器作为lvs调度器(40网段使用的都是仅主机模式,168网段使用桥接模式),3台服务器作为具体的web服务器(使用仅主机模式),我本是的宿主机就是作为web测试机器。具体配置如下
配置好上面的环境,确保同一个网段的主机可以相互ping的通。 这里都先关闭防火墙和selinux设置。
4000
2.检查操作系统支持lvs情况
5.设置所有的RS服务器的网关为调度器的ip地址
6.给那个RS服务器安装http服务并测试
7.创建LVS
宿主机测试量太小了。 我们直接在调度器上使用ab命令测试下
上面可以看到,3个RS的任务是基本一样多的。
我这里使用虚拟机模拟出了4台rhel6机器。一台服务器作为lvs调度器(40网段使用的都是仅主机模式,168网段使用桥接模式),3台服务器作为具体的web服务器(使用仅主机模式),我本是的宿主机就是作为web测试机器。具体配置如下
机器名称 | ip配置 | ip配置附加 | 备注信息 |
lvs调度器 | 192.168.40.200 | 192.168.168.200 | 有2个网卡地址, |
RS1 | 192.168.40.201 | 和lvs的第一个ip地址,rs2,rs3属于同一网段 | |
RS2 | 192.168.40.202 | 和lvs的第一个ip地址,rs2,rs3属于同一网段 | |
RS3 | 192.168.40.203 | 和lvs的第一个ip地址,rs2,rs3属于同一网段 | |
宿主机 | 192.168.168.10 | 和lvs的第二个ip地址属于同一网段 |
4000
2.检查操作系统支持lvs情况
[root@localhost ~]# grep -i 'vs' /boot/config-2.6.32-279.el6.i686 #有输出说明支持,我们使用的rhel6,默认的编译就有lvs模块。3.安装ipvsadm工具
[root@localhost ~]# yum -y install ipvsadm4.ipvsadm工具的简单使用
ipvsadm: 管理集群服务 添加:-A -t|u|f service-address [-s scheduler] -t: TCP协议的集群 -u: UDP协议的集群 service-address: IP:PORT -f: FWM: 防火墙标记 service-address: Mark Number 修改:-E 删除:-D -t|u|f service-address # ipvsadm -A -t 172.16.100.1:80 -s rr 管理集群服务中的RS 添加:-a -t|u|f service-address -r server-address [-g|i|m] [-w weight] -t|u|f service-address:事先定义好的某集群服务 -r server-address: 某RS的地址,在NAT模型中,可使用IP:PORT实现端口映射; [-g|i|m]: LVS类型 -g: DR模型 -i: TUN模型 -m: NAT模型 [-w weight]: 定义服务器权重 修改:-e 删除:-d -t|u|f service-address -r server-address # ipvsadm -a -t 172.16.100.1:80 -r 192.168.10.8 -m # ipvsadm -a -t 172.16.100.1:80 -r 192.168.10.9 -m 查看 -L|l -n: 数字格式显示主机地址和端口 --stats:统计数据 --rate: 速率 --timeout: 显示tcp、tcpfin和udp的会话超时时长 -c: 显示当前的ipvs连接状况 删除所有集群服务 -C:清空ipvs规则 保存规则 -S # ipvsadm -S > /path/to/somefile 载入此前的规则: -R # ipvsadm -R < /path/form/somefile
5.设置所有的RS服务器的网关为调度器的ip地址
[root@localhost ntpstats]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 #修改网关为调度器的ip地址 GATEWAY=192.168.40.200 #三个rs服务器都需要设 确保在各个RS服务的路由信息的正确性 [root@localhost ~]# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.40.0 * 255.255.255.0 U 0 0 0 eth0 link-local * 255.255.0.0 U 1002 0 0 eth0 default 192.168.40.200 0.0.0.0 UG 0 0 0 eth
6.给那个RS服务器安装http服务并测试
[root@localhost ntpstats]# yum install httpd #每个rs服务器都安装httpd服务 [root@localhost ntpstats]# service httpd restart #每个rs服务器都重新启动 [root@localhost ntpstats]# echo rs1> /var/www/html/index.html #给rs1服务器创建一个主页,只在rs1上执行
[root@localhost ntpstats]# echo rs2> /var/www/html/index.html #给rs2服务器创建一个主页,只在rs2上执行
[root@localhost ntpstats]# echo rs2> /var/www/html/index.html #给rs3服务器创建一个主页,只在rs3上执行 #接下来使用在调度器lvs服务器先测试下各个页面是否可以正常访问 [root@localhost ~]# elinks -source 192.168.40.201 rs1 [root@localhost ~]# elinks -source 192.168.40.202 rs2 [root@localhost ~]# elinks -source 192.168.40.203 rs3
7.创建LVS
[root@localhost ~]# ipvsadm -A -t 192.168.168.200:80 -s rr #创建一个集群服务,调度算法rr, [root@localhost ~]# ipvsadm -a -t 192.168.168.200:80 -r 192.168.40.201 -m #添加rs1 nat方式 [root@localhost ~]# ipvsadm -a -t 192.168.168.200:80 -r 192.168.40.202 -m #添加rs2 nat方式 [root@localhost ~]# ipvsadm -a -t 192.168.168.200:80 -r 192.168.40.203 -m #添加rs3 nat方式8.打开ip转发机制调度器要能访问168,40两个网段的,需要打开ipforward功能。
[root@localhost ~]# echo 1 >/proc/sys/net/ipv4/ip_forward #打开ipv的ip转发机制,当前生效 [root@localhost ~]# vim /etc/sysctl.conf #打开ipv的ip转发机制,永久生效 net.ipv4.ip_forward = 19. 确保集群的时间不能太大这里建议在调度器lvs上安装ntp服务,其他RS服务器来同步时间10.我们使用宿主机进行测试浏览器输入http://192.168.168.200,不断刷新,就可以看到如下的三个图片信息。测试成功后,就可以把三个RS服务器页面做成一样的啦。
宿主机测试量太小了。 我们直接在调度器上使用ab命令测试下
[root@localhost ~]# ab -n 10000 -c 200 http://192.168.168.200/index.html [root@localhost ~]# ipvsadm -L -n --rate IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port CPS InPPS OutPPS InBPS OutBPS -> RemoteAddress:Port TCP 192.168.168.200:80 168 838 837 60477 90073 -> 192.168.40.201:80 56 279 279 20154 30036 -> 192.168.40.202:80 56 280 278 20162 29991 -> 192.168.40.203:80 56 279 279 20160 30045
上面可以看到,3个RS的任务是基本一样多的。
相关文章推荐
- LINUX负载均衡LVS-NAT搭建
- 【Linux集群架构】负载均衡集群介绍、LVS介绍、LVS调度算法和LVS NAT模式搭建
- linux学习之使用keepalived结合lvs搭建高可用负载均衡集群
- Linux集群架构(负载均衡集群介绍、LVS介绍、LVS调度算法、NAT模式搭建)
- 使用LVS(Linux Virtual Server)在Linux上搭建负载均衡的集群服务
- linux LVS (keepalived+ipvsadm)负载均衡搭建 一
- 使用LVS(Linux Virtual Server)在Linux上搭建负载均衡的集群服务(DR模式
- linux下lvs搭建负载均衡集群
- 负载均衡实现 --- LVS的介绍、调度算法、NAT模式的搭建
- 使用LVS(Linux Virtual Server)在Linux上搭建负载均衡的集群服务
- linux搭建LVS+keepalive+nginx实现集群高性能负载均衡配置详解
- Linux平台基于NAT模式的LVS搭建
- linux下lvs搭建负载均衡集群
- LVS--搭建一个LVS-nat,负载均衡 WordPress (5)
- linux LVS (keepalived+ipvsadm)负载均衡搭建 三
- 负载均衡(集群介绍,lvs介绍,LVS调度算法,NAT模式搭建)
- RHEL6 搭建LVS/NAT 负载均衡集群 案例
- linux Lvs nat搭建负载均衡
- linux LVS (keepalived+ipvsadm)负载均衡搭建 四
- linux LVS (keepalived+ipvsadm)负载均衡搭建 五