Linux Virtual Server(LVS)是由章文嵩博士开发的基于Linux内核的负载均衡解决方案,具有高性能、高可用性特点,可处理百万级并发请求。
# 安装必备工具
sudo yum install ipvsadm keepalived -y # CentOS
sudo apt-get install ipvsadm keepalived -y # Ubuntu
# 加载IPVS模块
modprobe ip_vs
modprobe ip_vs_rr
modprobe ip_vs_wrr
# 配置VIP
ifconfig eth0:0 192.168.1.100 netmask 255.255.255.255 up
# 添加IPVS规则
ipvsadm -A -t 192.168.1.100:80 -s rr
ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.101:80 -g
ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.102:80 -g
# 配置回环接口VIP
echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
ifconfig lo:0 192.168.1.100 netmask 255.255.255.255 up
# /etc/keepalived/keepalived.conf
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.100
}
}
virtual_server 192.168.1.100 80 {
delay_loop 6
lb_algo rr
lb_kind DR
protocol TCP
real_server 192.168.1.101 80 {
weight 1
TCP_CHECK {
connect_timeout 10
}
}
}
bash
echo 1 > /proc/sys/net/ipv4/vs/expire_nodest_conn
echo 1 > /proc/sys/net/ipv4/vs/expire_quiescent_template
通过本文介绍的LVS搭建方法,您可以构建企业级的高性能负载均衡集群,实际测试中DR模式可达到90%以上的直线吞吐量。