ImageVerifierCode 换一换
格式:DOCX , 页数:8 ,大小:20.31KB ,
资源ID:27992770      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27992770.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Linux集群服务.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Linux集群服务.docx

1、Linux集群服务Linux集群服务摘要:随着信息化的高速发展,很多网络服务因为访问次数爆炸式地增长而不堪重负,不能及时处理用户的请求,导致用户进行长时间的等待,大大降低了服务质量。为解决这一问题,集群服务应运而生。介绍了Linux操作系统集群服务的相关概念,并通过实例讲解了Linux操作系统集群服务的实际应用。 关键词:集群;调度;算法 1集群的概念 伴随着网络日新月异的发展,人们早已适应了拥有各种各样的网络服务的生活。而提供网络服务的运营商遇到了前所未有的数据流量。如何建立可伸缩的网络服务来满足不断增长的负载需求已成为迫在眉睫的问题。大部分网站都需要提供每天24小时、每星期7天的服务,对电

2、子商务等网站尤为突出,任何服务中断和关键性的数据丢失都会造成直接的商业损失。 如何来满足这些需求,如果只是通过不断提升服务器的本身性能,存在以下问题:升级过程繁琐,更换服务器将使服务暂时中断,并造成原有计算资源的浪费;越往高端的服务器,所花费的代价越大;单个服务器是单一故障点,一旦该服务器或应用软件失效,会导致整个服务的中断。 为了解决这个问题,许多用户就采用一组集群来代替单一的机器。集群可以将多台计算机连接起来协同运作以对外提供各种服务,如Apache、FTP、Mail等。通过高性能网络或局域网互联的服务器集群正成为实现高可伸缩的、高可用网络服务的有效结构。这种松耦合结构的服务器集群系统有下

3、列优点: (1)集群都是使用常见的硬件进行构建的,其成本只是向量处理器的很小一部分。在很多情况中,价格会低一个数量级以上。 (2)集群使用消息传递系统进行通信,程序必须显式地进行编码来使用分布式硬件。 (3)采用集群,您可以根据需要向集群中添加节点。 (4)开放源码软件组件和 Linux 降低了软件的成本。 (5)集群的维护成本很低(它们占用的空间较小,耗费的电力较少,对于制冷条件的需求较低)。 2集群系统的分类 (1)高可用集群。一般提升系统可用性时,对构成系统的组件进行冗余化,消除单点故障是重要的。所谓单点故障指的是计算机的构成要素(硬件的组件)因为只有一个,所以该处发生故障时会有使业务停

4、止的弱点。所谓高可用集群是使用多台节点进行冗余化操作、将系统停止时间控制在最小限度,提升业务可用性(availability)的集群系统。在高可用集群中,平时由主服务器对外提供服务,在主服务器发生故障时将业务交接到待机服务器。高可用集群按照数据存储方式区分,可分为共享磁盘型、镜像磁盘型两种。某些骨干业务系统等的宕机会给业务带来很大影响,因此此类系统不允许停止,需要引进高可用集群架构。 (2)负载均衡集群。是将客户端的请求遵从恰当的负荷均衡原则分配给各节点的集群。是以高可测量性为目的的集群、一般无法进行数据交接。 (3)高性能计算集群。是指计算量非常大的集群。是为使用超级计算机执行单一业务的集群

5、。使用所有节点的CPU来执行单一业务的网格计算技术近年来已成为热点。 3集群方案LVS 在Linux上最常见的、也可能是运用最广泛的集群方案就是LVS(Linux Virtual Server), LVS也是一个中国人创建和开发的开放源码项目。LVS自1998年开始,发展到现在已经是一个比较成熟的技术项目了。 3.1LVS的3种包转发方式 LVS提供了3种包转发方式:NAT(网络地址映射)、IP Tunneling(1P隧道)和DirectRouting(直接路由)。不同的转发模式决定了不同的cluster的网络结构,下面对3种转发方式分别介绍。 (1)NAT(网络地址映射)。NAT方式可支持

6、任何的操作系统,以及私有网络,并且只需一个Internet IP地址,但是整个系统的性能受到限制。因为执行NAT每次需要重写包,有一定的延迟;另外,大部分应用有80的数据是从服务器流向客户机,也就是用户的请求非常短,而服务器的回应非常大,对负载均衡器形成很大压力,成为新的瓶颈。 (2)IP Tunneling(1P隧道)。director分配请求到不同的real server。Real server处理请求后直接回应给用户,这样director负载均衡器仅处理客户机与服务器的一半连接。IP Tunneling技术极大地提高了director的调度处理能力,同时也极大地提高了系统能容纳的最大节点

7、数,可以超过100个节点。real server可以在任何LAN或WAN上运行,这意味着允许地理上的分布,这在灾难恢复中有重要意义。服务器必须拥有正式的IP地址用于与客户端直接通信,并且所有服务器必须支持IP隧道协议。 (3)Direct Routing(直接路由)。与IP Tunneling类似,负载均衡器仅处理一半的连接,避免了新的性能瓶颈,同样增加了系统的可伸缩性。Direct Routing与IP Tunneling相比,没有IP封装的开销,但由于采用物理层(修改MAC地址)技术,所有服务器都必须在一个物理网段。 3.2LVS的8种调度算法 LVS已实现了以下8种调度算法: (1)轮叫

8、调度。调度器通过“轮叫”调度算法将外部请求按顺序轮流分配到集群中的真实服务器上,它均等地对待每一台服务器,而不管服务器上实际的连接数和系统负载。 (2)加权轮叫。调度器通过“加权轮叫”调度算法根据真实服务器的不同处理能力来调度访问请求。这样可以保证处理能力强的服务器能处理更多的访问流量。 (3)最少链接。调度器通过“最少连接”调度算法动态地将网络请求调度到已建立的链接数最少的服务器上。 (4)加权最少链接。在集群系统中的服务器性能差异较大的情况下,调度器采用“加权最少链接”调度算法优化负载均衡性能,具有较高权值的服务器将承受较大比例的活动连接负载。 (5)基于局部性的最少链接。“基于局部性的最

9、少链接”调度算法是针对目标IP地址的负载均衡,目前主要用于Cache集群系统。 (6)带复制的基于局部性最少链接。“带复制的基于局部性最少链接”调度算法也是针对目标IP地址的负载均衡,目前主要用于Cache集群系统。它与LBLC算法的不同之处是它要维护从一个目标 IP地址到一组服务器的映射,而LBLC算法维护从一个目标IP地址到一台服务器的映射。 (7)目标地址散列。“目标地址散列”调度算法根据请求的目标IP地址,作为散列键(Hash Key)从静态分配的散列表找出对应的服务器,若该服务器是可用的且未超载,将请求发送到该服务器,否则返回空。 (8)源地址散列。 “源地址散列”调度算法根据请求的

10、源IP地址,作为散列键(Hash Key)从静态分配的散列表找出对应的服务器,若该服务器是可用的且未超载,将请求发送到该服务器,否则返回空。 4案例分析 下面来完成一个基于NAT的LVS的安装与配置,实现Apache服务的负载均衡,具体拓扑结构如图1所示。 图1拓扑结构 具体步骤如下: (1)下载软件。获取2.4.20内核。注意下载的版本一定要和Linnx的内核版本对应。 (2)安装软件。在director(控制器,IP地址为202.99.59.110)上安装相应的补丁、编译。 内核和配置工具ipvsadm。 首先安装相应的补丁,在/usr/src下建立一个连接。 # ln s linux-2

11、.4.20 linux 因为在ipvs-1.0.9中的make file文件中默认指定Kernel Source的路径为KERNELSOURCE=/usr/src/linux(当然,若直接修改make file中的KERNELSOURCE值,使它指向源码的目录也可以)。 把ipvs-1.0.9.tar.gz解压缩到某个目录,如usrsrcipvs-1.0.9目录。 进入/us/srcipvs-1.0.9,依次执行如下命令将ipvs的Parch加载到kernel的source中。 #make patchkernel #make installsource 重新编译支持ipvs的内核,进入/usr

12、/src/1inux-2.4.20-8目录,分别执行: #make mrproper为创建新的内和配置做好准备 #make menuconfig进行配置 在NetWorking options选项IP:Virtual Server Connfiguration选项中,确保的选项为M。 #make dep #检测是否有相关的软件包被使用 #make clean #为新内核结构准备源目录树 #make bzImage #创建内核引导映像 #make modules #make modules_install #生成模块 编译和安装ipvsadm。当使用了支持ipvs的内核后,就可以安装ipvsad

13、m,ipvsadm是设置ipvs转发方式和调度算法的工具。 #tar xzvf ipvsadm-1.21.tar.gz #cd./ipvsadm-1.21 #make #make install (3)配置LVS。 在IP地址为202.100.33.110的计算机上执行如下命令或者编辑脚本执行 echo “1” /proc/sys/net/ipv4/ip_forward echo “0”/proc/sys/net/ipv4/conf/all/send_redirects echo “0”/proc/sys/net/ipv4/conf/default/send_redirects echo “0

14、”/proc/sys/net/ipv4/conf/eth0/send_redirects echo “0”/proc/sys/net/ipv4/conf/eth1/send_redirects #清除ipvsadm表: /sbin/ipvsadm c #使用ipvsadm安装LVS服务 #add http to VIP with rr scheduling #/sbin/ipvsadm-A-t 202.99.59.110:80 s-rr #增加第一台realserver: #/sbin/ipvsadm-A-t 202.99.59.110:80 r 192.168.1.1:80 m w 1 #增

15、加第二台realserver: #/sbin/ipvsadm-A-t 202.99.59.110:80 r 192.168.1.2:80 m w 1 #增加第三台realserver: #/sbin/ipvsadm-A-t 202.99.59.110:80 r 192.168.1.3:80 m w 1 真实服务器上的配置。在IP地址为192.168.1.1(rsl)、192.168.1.1(rs2)、192.168.1.1(rs3)的计算机上分别将其网关的IP地址设置为192.168.1.100,并分别启动apache服务。在客户端使用浏览器多次访问http:/202.99.59.110/,然

16、后输入202.100.33.110ipvsadm命令,应该有类似下面输出: IP Virtua土Server version1.0.12(size=4096) prot LocalAddress:Port Scheduler Flags RemoteAddress:Port Forward Weight ActiveConn lnActCOnn TCP 202.99.59.110:http rr 192.168.1.1:httpMasql033 192.168.1.2:httpMasq1033 192.168.1.3:httpMasq1033 从上面的结果可以看出,LVS服务器已经成功运行。

17、集群的使用需要积累很多的经验,这里只是以LVS的NAT为例进行了介绍,还有很多的集群软件,需要根据不同的需求进行选用。 参考文献: 1博韦.深入理解Linux内核M.北京:中国电力出版社,2009. 2胡剑锋.Linux操作系统M.北京:清华大学出版社,2008. 3杨鹏.Linux服务器架设M.北京:清华大学出版社,2010. 4赵慧斌,李小群,孙玉芳.改善Linux核心可抢占性方法的研究与实现J.计算机学报, 2004(2). 5蒋溢,李琳皓,陈龙.Linux系统实时性探讨J. 重庆大学学报, 2005(3). 6董晓峰,顾新.关于Linux内核可抢占性的研究J.计算机工程, 2005(1

18、). 7陈敏,周兴社.基于嵌入式Linux的实时优化方案J.计算机应用研究,2005(3). 8齐俊生,崔杜武,黑新洪.嵌入式Linux 硬实时性的研究与实现J.计算机应用, 2003(6). 9李凡,卢杜阶, 邱鹏.在嵌入式应用中增强Linux实时性的方法研究J.华中科技大学学报,2005(2). 10方建超.Red hat linux 9 实用教程M.北京:中国铁道出版社,2006. 11姚华.Linux操作系统M.大连:大连理工大学出版社,2006. 12WANG Y C,LIN KJ.Enhancing the real time capability of the linux ker

19、nelJ.RTCSA,2008. Linux Cluster Service Abstract:along with the rapid development of informatization, many network service because visited increase and crumbling explosion, cannot be handled in time the users request, cause users long waits, and greatly reduce the quality of service. In order to solve the problem, this paper introduces the Linux operating system cluster service related concepts and, with practical examples, explained the Linux operating system cluster service of actual application. Key Words: Cluster; Scheduling; Algorithm

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1