企业级集群服务器技术研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
随着Internet的高速发展,网络用户急剧增加,原有的服务器技术已经不能满足巨量的网络访问。集群技术是解决上述问题的有效方法。然而现在的主流商用集群均为国外产品,由于价格以及安全等方面的原因,不能从根本上满足我国政府和企业信息化的要求。本文研究了目前通用的负载均衡集群,并在该框架内实现了HAECS(High Available Enterprise Cluster Server)商用集群系统,基于廉价的以太网和通用PC或工作站,在开放的Linux系统上实现了虚拟服务平台,具有理论意义以及很大的应用价值。
     本论文重点研究了基于LVS的负载均衡集群技术,并利用LVS实现了一种面向企业应用的集群软件HAECS,主要完成了以下工作:
     (1)深入研究了Netfilter结构以及LVS技术。通过对Netfilter结构和LVS功能和研究以及对IP报文分发以及连接状态保持等原理的剖析,并在LVS的基础上搭建了一个模拟环境。同时认识到LVS存在着安装管理困难,无法监控节点的服务等诸多缺陷。
     (2)研究和分析了负载均衡集群的体系结构。理解了此类集群各个组成部分的工作原理和过程,对各个部分如何协同工作并为用户提供虚拟服务的工作机理有了清晰的认识。
     (3)针对LVS存在的缺陷以及对负载均衡集群整体的性能要求,详细分析了实现企业级集群HAECS的方法。从数据结构、算法实现到程序流程都进行了深入的研究和分析。
     (4)设计和实现了HAECS系统结构和基本功能。完成了Linux系统上的图形管理控制界面,以及真实服务节点的服务功能监控模块,监控模块不仅能够监控服务器的状态,还可以监控服务模块的状态,一旦服务失效能够及时地将该服务器从集群节点中删除,在监控状态中,模块可以定时采集服务器的状态信息,根据各个服务器的状态,采用负载加权算法来动态的管理集群,实现集群的智能管理。并按照软件工程规则进行了功能测试和应用模式测试。
     在系统的设计,实现过程中还解决了Linux系统的配置,软件的评估测试等诸多问题。
     系统地实现利用标准C开发,完全符合POSIX规范,可以在多个Linux版本上使用。
     基于上述技术开发的产品已经投入市场,经过了某企业用户的测试以及使用,得到了用户的好评并取得了较好的经济效益。
Along with the rapid development of Internet, more and more people are using Internet. Prevenient technique of server can't meet the requirement. Cluster technology is an effective method of solving this problem. Now, the leading products of cluster are overseas. These products can't satisfy with the demands of enterprises and government because of price and security problems. The paper studies general load balance cluster and implements HAECS (High Available Enterprise Cluster Server). This system realized virtual service platform. Therefore, it has academic and applied value.
    The paper aims at load balance cluster technique based on LVS and implement a software-HAECS faced the application of enterprises. The research work mentioned in this paper is mainly about:
    (1) It studies the structure of Netfilter and the technique of LVS. It establishes a simulation environment based on LVS. It presents the limitation of LVS, such as arduous installation and management, no function of monitoring node's services.
    (2) It analyzes the architecture of load balance cluster. The paper describes the principle of every part and presents how to implement virtual services.
    (3) It describes the design and implementation of HAECS, which comprises data structure, arithmetic, program flow and some other techniques in the implement.
    (4) It presents the architecture and basic function of HAECS. It fulfills primary modules, which includes management and control interface, not only monitoring the state s of real nodes, but also the state of the service modules. It will delete it from the server table reside at the director when the real server or the service doesn't work properly . Finally, it presents the results of testing.
    In the course of design and implementation, it solves many problems, such as the configure of Linux, the evaluation and testing of software.
    the codes of the HAECS are written in C and accord to POSIX, can run under many Linux version.
    The accomplished production has been introduced into a enterprise, under the strict test conducted by the corporation, gain the praise and admits.
引文
[1] Rajkumar Buyya High Performance Cluster Computing, Programming and Applications, Volume 2.
    [2] Wensong Zhang, Linux Virtual Server for Scalable Network Services
    [3] T. Brisco. Dns support for load balancing.http://www.ietf.org/rfc/rfc1794.txt, April 1995. RFC 1794
    [4] A. Dahlin, M. Froberg, J. Walerud, and P. Winroth. Eddie: A reboust and scalable internet server.http://www.eddieware.org, 1998- now.
    [5] The coda project. CMU Coda Team, 1987-now http://www.coda.cs.cmu.edu/.
    [6] Cisco local director. Cisco Systems,Inc.,1998. http://www.cisco.com/warp/public/751/lodir/index.html.
    [7] E. Anderson, D. Patterson, and E. Brewer. The magicrouter: an application of fast packet interposing.http://www.cs.berkeley.edu/eanders/magicrouter/,May 1996
    [8] M. Wangsmo. White paper: piranha load-balanced web and ftp cluters.http://www.redhat.com/support/wpapers/piranha/,2000.
    [9] C. Yoshikawa, B. Chun, P. Eastham, A, Vahdat, T. anderson, and D. Culler,Using smart clients to build scalable services. In USENIX'97 Proceedings, 1997. http://now.cs.berkeley.edu/.
    [10] W. Zhang and et al. Linux Virtual server project.http://www.linuxvirtualserver.org/, 2000-now.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700