LVS笔记
集群一组计算机利用网络组成一个系统,每个节点都是运行其自己进程的一个独立服务器。解决高并发 高吞吐
透明性高性能 高可用性可伸缩性可管理性 可编程性
[*] 负载均衡集群 lvs nginx haproxy
[*] 高可用集群 keepalived
LinuxVirtual Server
[*] 实现调度IPVS
[*] 管理工具ipvsadm
[*] keepalived实现管理及高可用
[*] CIP Client computer's IP address:公网IP,客户端使用的IP。
[*] VIP Virtual IP address:Director用来向客户端提供服务的IP地址
[*] RIP Real IP address:集群节点(后台真正提供服务的服务器)所使用的IP地址
[*] DIP Director's IP address:Director用来和D/RIP 进行联系的地址
CIP ←→DIP←→ RIP
VIP
http://s2.运维网.com/wyfs02/M02/82/3D/wKiom1dO60LgDDyGAABF6NNnh6s492.png
模式: NATTUN DR FULLNAT
DR直接路由模式
通过改写请求报文的目标MAC地址,将请求发给真实服务器,真实服务器将响应后的处理结果直接返回客户端。
http://blog.运维网.com/e/u261/themes/default/images/spacer.gif
LVS调度器根据各个服务器的负载情况,动态地选择一台服务器,不修改也不封装IP报文,而是将数据帧的MAC地址改为选出服务器的MAC地址,再将修改后的数据帧在与服务器组的局域网上发送。因为数据帧的MAC地址是选出的服务器,所以服务器肯定可以收到这个数据帧,从中可以获得该IP报文。
当服务器发现报文的目标地址VIP是在本地的网络设备上,服务器处理这个报文,然后根据路由表将响应报文直接返回给客户。
要求Director Server与Real Server都有一块网卡连在同一物理网段上
LVS调度算法 8-10
[*] rr 轮询调度
[*] wrr加权轮询调度 wlc加权最小链接数调度
[*] dh 目的地址哈希调度
[*] sh 源地址哈希调度
LVS安装
yum -y install kernel-devel libnl* popt* gcc
ln -s /usr/src/kernels/2.6.32-642.1.1.el6.x86_64/ /usr/src/linux
tar zxvf ipvsadm-1.26.tar.gz
cd ipvsadm-1.26
make&& make installmodprobeip_vs
lsmod | grep ip_vs
ip_vs 1268970
libcrc32c 0000000000000000000000000000000000 12461 ip_vs
ipv6 336282265 ip_vs
/sbin/ipvsadm
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
ifconfig eth0:0 192.168.10.40
route add -host 192.168.10.1 dev eth0
route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.10.1 0.0.0.0 255.255.255.255 UH 0 0 0 eth0
ipvsadm-C
ipvsadm--set 30 5 60
ipvsadm -A -t192.168.10.40:80-s rr -p 20 //-D 删除
ipvsadm -a-t 192.168.10.40:80-r 192.168.10.11 -g -w 1 //-d删除
ipvsadm -a-t 192.168.10.40:80-r 192.168.10.10 -g -w 1
# ipvsadm -L -n
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP192.168.10.40:80 rr persistent 20
-> 192.168.10.10:80 Route 1 0 0
-> 192.168.10.11:80 Route 1 0 0 RS端--绑定VIP
ifconfiglo:0192.168.10.40/32up
route add -host 192.168.10.40 dev lo 抑制ARP
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
页:
[1]