三十三天 大规模站点构建、lvs原理、lvs调度及nat模型实现、lvs dr模型及lxc虚拟化

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:淘宝自行开发的模型

时间: 2024-10-19 12:49:43

三十三天 大规模站点构建、lvs原理、lvs调度及nat模型实现、lvs dr模型及lxc虚拟化的相关文章

第三十三天 LVS基础原理、调度算法、NAT和DR的实现 、LXC虚拟化

大规模站点构建框架 LVS的基础原理 LVS调度方法及NAT模型的实现 LVS  dr模型及lxc虚拟化 一.大规模站点架构框架 http: stateless keep-alive cookie: session 系统的:可扩展性.高可用性:99%, 99.9%, 99.999% .性能: 可扩展性: 容量:在一定时间内能完成的工作量 scale up: 向上扩展 scale out: 向外扩展 Cluster: 集群 构建高可扩展性系统的重要原则:在系统内部尽量避免串行化和交互 调度器:di

上课笔记第三十三天、lvs(net、dr)

1.大规模站点构建框架.        http:状态               keep-alive:长连接               cookie:session          cluster:集群                 构建高可扩展性系统的重要原则:在系统内部尽量避免串行化和交互                 HA:High Availability                 LB:Load Balancing                 session复制 

LVS原理解析

LVS简介 LVS是Linux Virtual Server的简写,即Linux虚拟服务器,是一个虚拟的服务器集群系统.该项目由章文嵩博士成立,是中国国内最早出现的自由软件项目之一. 使用LVS技术要达到的目标是:通过LVS提供的负载均衡技术和Linux操作系统实现一个高性能.高可用的服务器群集,它具有良好可靠性.可扩展性和可操作性.从而以低廉的成本实现最优的服务性能. 负载均衡技术有很多实现方案,如基于DNS域名轮流解析的方法.基于客户端调度访问的方法.基于应用层系统负载的调度方法,还有基于I

LVS基础详解和NAT/DR模型的实现

LVS:Linux Virtual Server 所谓虚拟的服务就是,当客户端请求服务时,将服务在前端调度器上,通过一定方式负载到后端多台服务器上,但对于客户端来说是不可见的,像在访问同一台服务器一样,这就是虚拟的意思 原理 ipvs:使用LVS服务时,在linux内核当中的一个过滤框架,作用在Input链上,通过解析用户请求的ip和端口号,判断是否是集群服务(若较老的版本内核中没有内置则需自行编译安装) 当用户请求到达,进入调度器内核空间,由于请求的是本地地址,转发到Input链,通过请求的i

LVS原理及三种模式优缺点比较

一.引言在过去的十几年中,Internet从几个研究机构相连为信息共享的网络发展成为拥有大量应用和服务的全球性网络,它正成为人们生活中不可缺少的一部分.虽然Internet发展速度很快,但建设和维护大型网络服务依然是一项挑战性的任务,因为系统必须是高性能的.高可靠的,尤其当访问负载不断增长时,系统必须能被扩展来满足不断增长的性能需求.由于缺少建立可伸缩网络服务的框架和设计方法,这意味着只有拥有非常出色工程和管理人才的机构才能建立和维护大型的网络服务. LVS-NAT模式: 官方原理说明:基于NA

Lvs原理及简单实现

Lvs原理及简单实现 大纲: 一.集群概述 二.什么是Lvs?(what) 三.为什么要用Lvs?(why) 四.什么时候需要用Lvs?(when) 五.什么地方需要用Lvs?(where) 六.什么人来部署Lvs?(who) 七.Lvs支持的三种模式与十种算法(Scheduler) 八.如何部署Lvs之NAT模式?(How) 九.如何部署Lvs之DR模式? 一.集群简介: 计算机集群(Cluster)技术可以通过网络连接把一组互相独立工作的计算机高度紧密的连接起来,从而高效可靠的共同完成协同任

LVS原理详解

一.集群简介 什么是集群 计算机集群简称集群是一种计算机系统,它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作.在某种意义上,他们可以被看作是一台计算机.集群系统中的单个计算机通常称为节点,通常通过局域网连接,但也有其它的可能连接方式.集群计算机通常用来改进单个计算机的计算速度和/或可靠性.一般情况下集群计算机比单个计算机,比如工作站或超级计算机性能价格比要高得多. 集群就是一组独立的计算机,通过网络连接组合成一个组合来共同完一个任务 LVS在企业架构中的位置: 以上的

LVS原理详解(3种工作方式8种调度算法)

一.集群简介 什么是集群 计算机集群简称集群是一种计算机系统,它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作.在某种意义上,他们可以被看作是一台计算机.集群系统中的单个计算机通常称为节点,通常通过局域网连接,但也有其它的可能连接方式.集群计算机通常用来改进单个计算机的计算速度和/或可靠性.一般情况下集群计算机比单个计算机,比如工作站或超级计算机性能价格比要高得多. 集群就是一组独立的计算机,通过网络连接组合成一个组合来共同完一个任务 LVS在企业架构中的位置: 以上的

大规模代码构建技术实践

原文地址 什么是持续集成? 大师Martin Fowler认为持续集成是一种软件开发实践,在实践中团队开发成员会频繁的进行任务的集成,通常每个成员每天都会集成一次,也就意味着每天可能会发生多次集成.每次集成都通过自动化的构建来验证,从而尽快地发现集成错误,快速进行修复. 如上图所示,一个完整的持续集成环节包括:首先项目经理创建一个项目,将项目成员添加到项目中:开发人员在项目中拉取开发分支进行代码开发,在开发过程中,开发人员将代码提交到代码仓库(如SN.GIT):后端的持续集成任务会定时扫描代码仓