1、大规模站点构建框架。
http:状态
keep-alive:长连接
cookie:session
cluster:集群
构建高可扩展性系统的重要原则;在系统内部尽量避免串行化和交互
HA:High Availability
LB:Load Balancing
session复制
memcached:内存缓存服务器
key-value:键值匹配
2、lvs的基础原理
LB: (应用层、传输层)
软件:
lvs(传输层)
haproxy, nginx (应用层)
硬件:
F5 BIG-IP
Citrix Netscaler
A10 A10
Array
Redware
HA:
heartbeat
corosync + pacemaker
RHCS: cman + rgmanager
cman + pacemaker
keepalived
HP:
hadoop
lvs: Linux Virtual Server
四层路由,四层交换:根据目标地址和目标端口实现请求转发,lvs工作在内核中并监听在input链上,访问请求到达本机后prerouting转到input链。lvs查看是否是自己监听的ip:port,如果是就强行转发到postrouting把访问请求转发到后台真实主机上。
iptables/netfilter
netfiler: PREROUTING --> INPUT --> FORWARD --> OUTPUT --> POSTROUTING
lvs: ipvsadm/ipvs
ipvs: netfilter
集群服务:tcp、udp。IP:PORT
LVS的术语:
director/real server
IP:
VIP:Virtual IP
DIP: Director IP
RIP: Real Server IP
CIP:Client IP
lvs的类型:
lvs-nat
Network Address Translation(网络地址转换)
lvs-dr
Direct Routing(直接路由)
lvs-tun
Tunneling(隧道)
nat类型的特性:
RS应用使用私有地址;RS的网关必须指向DIP,RIP和DIP必须在同一个网段内;
请求和响应都要经过Director;高负载场景中,Director易成为性能瓶颈;
支持端口映射;
RS可以使用任意OS;
最少2块网卡
dr类型的特性:
保证前端路由将目标地址为VIP的报文统统发往Directory,而不能是RS;
修改RS上内核参数,将RS上的VIP配置在lo接口的别名上,并限制其不能响应对VIP地址解析请求;
RS可以使用私有地址;但也可以使用公网地址,此时可通过互联网通过RIP对其直接访问;
RS跟Directory必须在同一物理网络中;
请求报文经由Director,但响应报文必须不能经过Director;
不支持端口映射;
RS可以是大多数常见的OS;
RS的网关绝不允许指向DIP;
一块网卡即可
tun类型的特性:
RIP、VIP、DIP全部是公网地址;
RS的网关不会也不可能指向DIP;
请求报文经由Director,但响应报文必须不能经过Director;
不支持端口映射;
RS的OS必须支持隧道功能;
fullnat:淘宝自行开发的模型
三十三天 大规模站点构建、lvs原理、lvs调度及nat模型实现、lvs dr模型及lxc虚拟化
原文地址:http://liwenjia.blog.51cto.com/2656598/1834110