lvs(linux virtual server)

lvs netfiler+ipvs

lvs ->osi四层
ngingx ->七层

ipvs ->内核
ipvsadm ->用户管理层面

netfilter(iptables)

lvs:linux virtual server意即Linux虚拟服务器,是一个虚拟的服务器集群系统

lvs的三种策略:
{ NAT TUN DR } fullNAT 隧道

NAT: client -> vs -> rs -> vs -> client

lvs-DR:
工作原理
vs virtual server 数据包包含cip和vip ,MC地址转换
rs real server
lvs(linux virtual server)

环境

系统:redhat6.5
火墙:保持关闭
selinux:保持disabled

real server:server2 & 3

lvs配置

server1:
/etc/init.d/heartbeat stop ##停止heartbeat
yum install ipvsadm -y
ipvsadm -L ##-L表示列出ipvs策略
ipvsadm -C ##-C表示清空策略
ip addr add 172.25.32.100/24 dev eth0 ##添加虚拟ip
ip addr

#**-A添加策略 -t TCP协议 -s 算法 rr round roubin 轮询**
ipvsadm -A -t 172.25.32.100:80 -s rr

#**-r real server 真实的服务器 -g**
ipvsadm -a -t 172.25.32.100:80 -r 172.25.32.2:80 -g
ipvsadm -a -t 172.25.32.100:80 -r 172.25.32.3:80 -g

/etc/init.d/ipvsadm save ##保存策略到文件中
ipvsadm -L ##列出策略

server4:
/etc/init.d/heartbeat stop

rs配置

server2 & 3:
#打开httpd前,确认httpd的端口是80端口
/etc/init.d/httpd start ##开启httpd
ip addr add 172.25.32.100/32 dev eth0 ##添加虚拟ip
ip addr
yum install -y arptables_jf

#**-A 添加策略 IN表 -d -j 动作 **
arptables -A IN -d 172.25.32.100 -j DROP ##禁止访问本机的100
arptables -A OUT -s 172.25.32.100 -j mangle –mangle-ip-s 172.25.32.2 | 3 ##将100转换真实ip
/etc/init.d/arptables_jf save ##保存策略

测试:
172.25.32.100
arp -an | grep 172.25.32.100

lvs

lvs:linux virtual server意即Linux虚拟服务器,是一个虚拟的服务器集群系统

lvs ->osi四层
ngingx ->七层

ipvs ->内核
ipvsadm ->用户管理层面

netfilter(iptables)

lvs的三种策略:
{ NAT TUN DR } fullNAT 隧道

NAT: client -> vs -> rs -> vs -> client

lvs-DR:
工作原理
vs virtual server 数据包包含cip和vip ,MC地址转换
rs real server
lvs(linux virtual server)

环境

系统:redhat6.5
火墙:保持关闭
selinux:保持disabled

real server:server2 & 3

vs配置

server1:
/etc/init.d/heartbeat stop ##停止heartbeat
yum install ipvsadm -y
ipvsadm -L ##-L表示列出ipvs策略
ipvsadm -C ##-C表示清空策略
ip addr add 172.25.32.100/24 dev eth0 ##添加虚拟ip
ip addr

#**-A添加策略 -t TCP协议 -s 算法 rr round roubin 轮询**
ipvsadm -A -t 172.25.32.100:80 -s rr

#**-r real server 真实的服务器 -g**
ipvsadm -a -t 172.25.32.100:80 -r 172.25.32.2:80 -g
ipvsadm -a -t 172.25.32.100:80 -r 172.25.32.3:80 -g

/etc/init.d/ipvsadm save ##保存策略到文件中
ipvsadm -L ##列出策略

server4:
/etc/init.d/heartbeat stop

rs配置

server2 & 3:
#打开httpd前,确认httpd的端口是80端口
/etc/init.d/httpd start ##开启httpd
ip addr add 172.25.32.100/32 dev eth0 ##添加虚拟ip
ip addr
yum install -y arptables_jf

#**-A 添加策略 IN表 -d -j 动作 **
arptables -A IN -d 172.25.32.100 -j DROP ##禁止访问本机的100
arptables -A OUT -s 172.25.32.100 -j mangle –mangle-ip-s 172.25.32.2 | 3 ##将100转换真实ip
/etc/init.d/arptables_jf save ##保存策略

测试:
172.25.32.100
arp -an | grep 172.25.32.100