一、装备一台lvs调度器主机
要求两个网卡一个为内部局域网ip,一个为公网ip

#IP地址设置过程不再重复
[root@localhost ~]# ip a | grep eth0 #内网ip
: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
inet 192.168.200.10/ brd 192.168.200.255 scope global eth0
[root@localhost ~]# ip a | grep eth1 #公网ip
: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
inet 192.168.100.1/ brd 192.168.100.255 scope global eth1 #开启路由功能,以便两个不同网络之间通信
[root@localhost ~]# vim /etc/sysctl.conf
net.ipv4.ip_forward =
[root@localhost ~]# sysctl -p
net.ipv4.ip_forward =

安装ipvsadm软件,配置lvs负载均衡

[root@localhost ~]# yum -y install ipvsadm
[root@localhost ~]# lsmod | grep "ip_vs" #查看策略中有没有
#没有添加
[root@localhost ~]# modprobe ip_vs
[root@localhost ~]# lsmod | grep "ip_vs"
ip_vs

添加负载分配策略

[root@localhost ~]# ipvsadm -A -t 192.168.100.1: -s rr
[root@localhost ~]# ipvsadm -a -t 192.168.100.1: -r 192.168.200.111: -m -w
[root@localhost ~]# ipvsadm -a -t 192.168.100.1: -r 192.168.200.112: -m -w ———————————————————————————————————
-A:表示添加虚拟服务器
-t用来指定VIP 地址及TCP端口
-s:用来指定负载调度算法——轮询(rr)
-a:添加服务器
-r 用来指定RIP 地址及TCP 端口
-m:使用NAT 群集模式(-g DR 模式、-i TUN 模式
-w:用来设置权后重(权重为0 时表示暂停节点)

查看群集节点状态

[root@localhost ~]# ipvsadm -Ln
IP Virtual Server version 1.2. (size=)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.100.1: rr
-> 192.168.200.111: Masq
-> 192.168.200.112: Masq

二、设置两台轮询主机
#安装Apache,并开启服务,不再复述
修改两台主机的默认网关,改为lvs服务器内网IP地址

部分修改内容
第一台
[root@tomcat1 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eno16777728
IPADDR=192.168.200.112
NETMASK=255.255.255.0
GATEWAY=192.168.200.10
DNS1=8.8.8.8
~
第二台
[root@tomcat1 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eno16777728
IPADDR=192.168.200.111
NETMASK=255.255.255.0
GATEWAY=192.168.200.10
DNS1=8.8.8.8

为两台主机准备测试文件

第一台
[root@tomcat1 ~]# echo "" > /var/www/html/index.html
第二台
[root@localhost ~]# echo "" > /var/www/html/index.html

三、测试
关闭防火墙,测试

#是轮询访问
[root@localhost ~]# while : ; do curl 192.168.100.1 ;sleep ; done

最新文章

  1. SQL Server 变更数据捕获(CDC)
  2. squid-nginx 基本配置
  3. iOS push与present Controller的区别
  4. 解决jQuery ajax跨域问题,Google、IE、Firefox亲测有效
  5. centos下 Vim快捷键操作命令大全
  6. 调bug的一点感悟
  7. BrowserSync:跨浏览器实时同步预览
  8. BroadcastReceiver和Intetnt的理解 Day34
  9. Delphi自写组件:可设置颜色的按钮(改成BS_OWNERDRAW风格,然后CN_DRAWITEM)
  10. Android Studio安装应用时报错 installation failed with message Failed to finalize session......
  11. 简单的实现HTTP密码验证登陆
  12. GIT初始学习记录
  13. Node.js_express_route 路由
  14. sql server 2008 64位连接sql 2000服务器的时候出现
  15. Linux并发与同步专题 (1)原子操作和内存屏障
  16. 洛谷 P2317 [HNOI2005]星际贸易 解题报告
  17. SQL Server通过外部程序集注册正则表达式函数(CLR函数) [转]
  18. .NET Best Practices
  19. (转)python高级:列表解析和生成表达式
  20. WQL语言简介和WQL测试工具wbemtest.exe使用方法详细介绍

热门文章

  1. iOS中dealloc原理
  2. 团队项目之Scrum5
  3. centos查询目标文件文件所在位置
  4. openldap数据备份还原
  5. 误区以为父组件render一次,子组件会重新初始化
  6. 八、VTK安装并运行一个例子
  7. combination sum &amp;&amp; combination sum II
  8. 关于Mysql修改帐号密码的多种方法
  9. post请求四种传送正文的方式
  10. 【GUI】基于V7开发板的裸机和各种RTOS版本的emWin程序模板,支持硬件JPEG,已发布(2019-05-26)