Lvs 在集群技术中的应用
南非蚂蚁
Blog : www.ixdba.net
2009-03-15
个人简介
• 高俊峰,网名:南非蚂蚁
• 毕业与西安电子科技大学, Oracle DBA Unix/Linux SA
• 喜欢 oracle 和 Unix/Linux 技术,平时主要活动在
﹑
。
﹑
﹑
ITPUB.net IXPUB.net CHINAUNIX.net
oracle 数据库﹑ Unix/Linux 操作系统管理﹑优化领域,现在主要从事
oracle 数据库管理和项目规划设计工作,擅长 oracle 数据库的备份恢
复,性能调优,对 Unix/Linux 集群应用也有一定的研究。
等大型技术社区,一直致力与
• 通过如下方式可以联系到我:
• MSN : gaojf_888@hotmail.com
• QQ:397824870
•
Email:dba.gao@gmail.com
Lvs 在集群技术中的应用
• 一 .
LVS 体系结构
• 二 .
LVS 集群的特点
• 三 .
LVS 的安装与配置
• 四 . 测试 LVS 负载均衡
一: LVS 体系结构
User
Internet
Director Server
Real Server 1
LAN/WAN
Real Server 2
Load Balancer
...
Real Server N
Real Server 3
Server Arrary
数据
…
数据
数据
Shared Storage
一: LVS 体系结构
1. 负载均衡层 ( Load Balancer )
位于整个集群系统的最前端,是整个 LVS 的核心。有一台或者多台负载调度器
( Director Server )组成,而 Director 的主要作用类似于一个路由器,通过这些路由
表把用户的请求分发给 Server Array 层的应用服务器( Real Server )上 。
2. 服务器群组层 ( Server Array )
由一组实际运行应用服务的机器组成, Real Server 可以是 WEB 服务器、 MAIL 服务
器、 FTP 服务器、 DNS 服务器、视频服务器中的一个或者多个 , 每个 Real Server 之
间通过高速的 LAN 或分布在各地的 WAN 相连接。在实际的应用中, Director Server
也可以同时兼任 Real Server 的角色。
5. 共享存储层 ( Shared Storage )
是为所有 Real Server 提供共享存储空间和内容一致性的存储区域,
在物理上,一般有磁盘阵列设备组成,为了提供内容的一致性,一般可以
通过 NFS 网络文件系统共享数据,但是 NFS 在繁忙的业务系统中,性能并
不是很好,此时可以采用集群文件系统,例如 Red hat 的 GFS 文件系
统, oracle 提供的 OCFS2 文件系统等。
二: LVS 集群的特点
1 . IP 负载均衡技术
LVS 的 IP 负载均衡技术是通过 IPVS 模块来实现的, IPVS 是 LVS
集群系统的核心软件 , IPVS 实现负载均衡机制有三种,分别是
NAT 、 TUN 和 DR 。
NAT ( Network Address Translation )
当用户请求到达调度器时,调度器将请求报文的目标地址(即虚
拟 IP 地址)改写成选定的 Real Server 地址,同时报文的目标端口也
改成选定的 Real Server 的相应端口,最后将报文请求发送到选定的
Real Server 。在服务器端得到数据后, Real Server 返回数据给用户时
,需要再次经过负载调度器将报文的源地址和源端口改成虚拟 IP 地址
和相应端口,然后把数据发送给用户,完成整个负载调度过程。
NAT 模式运行原理图
User
Internet
Route
Director Server
Real Server 1
LAN/WAN
Real Server 2
磁盘阵列存储
…
数据
Load Balancer
Server Arrary
Shared Storage
TUN ( IP Tunneling )
即 IP 隧道技术,它的连接调度和管理与 NAT 方式一样,只是它
的报文转发方法不同, TUN 方式中,调度器采用 IP 隧道技术将用户
请求转发到某个 Real Server ,而这个 Real Server 将直接响应用户的请
求,不再经过前端调度器,此外,对 Real Server 的地域位置没有要求
,可以和 Director Server 位于同一个网段,也可以是独立的一个网络。
因此,在 TUN 方式中,调度器将只处理用户的报文请求,集群系统的
吞吐量大大提高。
隧道技术是指包括数据封装,传输和解包在内
的全过程。