负载均衡服务器将会用到两块网卡,eth0为公网地址(此处将局域网ip作为公网地址),IP地址为192.168.1.104,eth0:1,IP地址为192.168.2.1
在负载均衡器上添加一个ip别名,用于测试
ifconfig eth0:1 192.168.2.1
1.修改负载均衡器的/etc/sysctl.conf文件
net.ipv4.ip_forward=1
运行sysctl -p加载配置
2.修改/proc/sys/net/ipv4/ip_forward,并将其内容改为1
也可以用echo 1 > /proc/sys/net/ipv4/ip_forward 修改
3.安装ipvsadm
yum install ipvsadm
4.配置软件
ipvsadm --start-daemon=master --mcast-interface=eth0
5.创建虚拟服务
ipvsadm -A -t 192.168.1.104:80
/************************************
#ipvsadm -C
-C 清除表中所有的记录
#ipvsadm -A -t 192.168.3.187:80 -s rr
-A --add-service在服务器列表中新添加一条新的虚拟服务器记录
-t 表示为tcp服务
-u 表示为udp服务
-s --scheduler 使用的调度算法, rr | wrr | lc | wlc | lblb | lblcr | dh | sh | sed | nq 默认调度算法是wlc
*****************************************/
6.添加真实服务器
ipvsadm -a -t 192.168.1.104:80 -r 192.168.2.120:80 -m
..............
真实服务器的网关在本例中必须为192.168.2.1
/************************************
以上命令各参数如下:
-a --add-server 在服务器表中添加一条新的真实主机记录
-t --tcp-service 说明虚拟服务器提供tcp服务
-u --udp-service 说明虚拟服务器提供udp服务
-r --real-server 真实服务器地址
-m --masquerading 指定LVS工作模式为NAT模式
-w --weight 真实服务器的权值
-g --gatewaying 指定LVS工作模式为直接路由器模式(也是LVS默认的模式)
-i --ipip 指定LVS的工作模式为隧道模式
-p 会话保持时间,定义流量转到同一个realserver的会话存留时间
调度算法
rr 轮询 round robin, wrr 加强轮询 weighted round robin,
新的请求被轮流分配到RealServer上,它假设服务器处理性能都相同,不管服务器当前的连接数和响应速度,不适合服务器性能不同的集群,这会导致服务器间的负载不平衡
dh 目的地址散列调度 destination hashing
针对IP地址的负载,
*****************************************/
7.修改系统路由表
route add default gw 192.168.2.1 eth0
以上即为简单配置