| 集群服务的需求分析
随着Internet服务和电子商务的迅速发展,计算机系统的重要性也日益上升,对服务器可伸缩性和高可用性的要求也变得越来越高。集群技术的出现和发展则很好地解决了这两个问题。群集是由一组独立的计算机组成,这些计算机一起工作以运行一系列共同的应用程序,同时,为用户和应用程序提供单一的系统映射。群集内的计算机物理上通过电缆连接,程序上则通过群集软件连接。这些连接允许计算机使用故障应急与负载平衡功能,而故障应急与负载平衡功能在单机上是不可能实现的。
有网络负载平衡功能的Windows 2000为在分布和负载平衡的方式下建立关键且合乎要求的网站的工作提供了完整的基础结构。与组件服务的分布式应用程序特性和Internet 信息服务的增强可伸缩性相结合,网络负载平衡有助于确保服务能够灵活处理最重的通信负荷,同时,保持对服务器状态的监控,确保系统不停机。
Win2000群集技术具有以下特点: · 可伸缩性:加入更多的处理器或计算机可提高群集的计算能力,一般的桌面机每秒能够处理几千个请求,而传统的IA服务器每秒能够处理几万个请求。那么对于需要每秒处理几十万个请求的企业来说,如果不采用集群技术,唯一的选择就是购买更加高档的中、小型计算机。如果这样做,虽然系统性能提高了十倍,但其购买价格和维护费用就会上升几十倍甚至更多。 · 高度的可用性:群集具有避免单点故障发生的能力。应用程序能够跨计算机进行分配,以实现并行运算与故障恢复,并提供更高的可用性。即便某一台服务器停止运行,一个由进程调用的故障应急程序会自动将该服务器的工作负荷转移至另一台服务器,以保证提供持续不断的服务。 · 易管理性:群集以单一系统映射的形式来面向最终用户、应用程序及网络,同时,也为管理员提供单一的控制点,而这种单一控制点则可能是远程的。
随着计算机应用地位的逐渐提升,系统安全和重要性的日益增加,基于Win2000的负载均衡必将会有着极为广阔的应用前景。
Win2K集群技术
一、集群
集群就是由一些互相连接在一起的计算机构成的一个并行或分布式系统。从外部来看,它们仅仅是一个系统,对外提供统一的服务。
集群技术本身有很多种分类,市场上的产品也很多,也没有很标准的定义,但一般可以分为以下4种。 1. 基于冗余的集群,例如:容错机、基于系统镜像的双机系统、基于系统切换的双机系统 2. 基于应用程序切换的集群,特点是当集群中的某个节点出故障时,其它节点可以进行应用程序一级切换,所以所有节点在正常状态下都可以对外提供自己的服务,也被称为静态的负载均衡方式;性能价格比高,但也无法实现无缝切换,而且对单个应用程序本身无法做到负载均衡。 3. 基于并行计算的集群,主要应用于科学计算、大任务量的计算等环境。有并行编译、进程通讯、任务分发等多种实现方法。 4. 基于动态负载均衡的集群,特点是:所有节点对外提供相同的服务,这样可以实现对单个应用程序的负载均衡,而且同时提供了高可用性;性能价格比极高,但目前无法支持数据库。
二、Windows 2000中的两种群集
在Win2000操作系统中, 微软引进了两种既能独立使用又能联合使用的群集技术,为用户提供了一套能够应指定应用程序或服务需要而进行选用的群集解决方案。Windows群集技术包括: · 群集服务:群集服务在Windows 2000 高级服务器版本中支持双节点故障应急群集,而在数据中心服务器版本中则支持四节点群集。这种服务是针对为数据库、消息系统和文件/打印服务等应用程序提供故障应急支持的要求而开发的。 · 网络负载平衡:该项服务可在多达32个节点的群集内平衡引入的IP通信量。网络负载平衡功能增强了Web服务器、流媒体服务器和终端服务等Internet服务器程序的可用性和可伸缩性。

三、群集服务的介绍
电子商务应用程序处于公司运作的中心地位,它包括数据库、消息服务器、企业资源计划(ERP)应用程序及核心文件/打印服务等功能。Win2000操作系统的群集服务通过将物理服务器作为一个单点故障加以删除的方法确保上述关键应用程序在需要的情况下处于在线状态。 当任一节点出现硬件或软件故障时,当前运行在该节点上的应用程序会由群集服务功能移往其它无故障的节点并被重新启动。由于群集服务使用诸如SCSI和光纤通道等具有公共总线结构的共享磁盘设置,因此 ,在故障应急期间将不会有数据被丢失。
Win 2000操作系统的群集服务好处有: · 减少计划外的停机时间:由硬件或软件故障引起的停机时间会导致收入损失、IT人工浪费和顾客不满。在关键的在线商务应用程序中,将共享磁盘解决方案与群集服务功能配合使用能够大大减少由意外故障导致的停机时间。 · 支持众多的应用和服务程序:群集服务受许多具有群集识别能力的应用程序的支持,而这些应用程序涵盖了众多的功能与供应厂家。识别群集的应用程序包括诸如Microsoft SQL Server 7.0和IBM DB2的数据库程序,诸如Microsoft Exchange Server 5.5和Lotus Domino的消息服务器、诸如NetIQ's AppManager的管理工具、诸如NSI Software's DoubleTake 3.0的事故恢复工具以及包括SAP、Baan、PeopleSoft、和JD Edwards在内的ERP应用程序。而且,你目前就能对诸如DHCP、WINS、SMTP、和NNTP的应用程序进行群集。 · 在工业标准硬件上进行部署:通过在标准PC服务器和存储硬件上部署使用群集服务功能的群集,并避免使用昂贵且需要经常进行专利更替的高可用性解决方案,可使有关成本费用保持在较低水平上。 · 软件使用简单、方便:Windows 2000操作系统的群集服务比从前更易于安装和使用。配合一个充分改进的安装向导程序,群集服务安装程序仅需10次以下的鼠标点击即可完成对第一个群集节点的设定,而第二个节点的设定则仅需不到4次点击就能完成。
四、网络负载平衡介绍
随着Internet及其相关服务(intranets、extranets和主机应用程序)的迅速增长,对Web服务器动态可伸缩性的需求也变得空间之大。有了网络负载平衡功能的Windows 2000为在分布和负载平衡的方式下建立关键且合乎要求的网站的工作提供了完整的基础结构。
Win2000网络负载平衡功能的好处有:
部署网络负载平衡功能的好处有: · 通过增加服务器伸缩Web应用程序:win200网络负载平衡是为与各种各样的应用程序和服务功能配合使用而设计的。网络负载平衡使用负载平衡统计模块在最大由32台服务器组成的群集中分配引入的IP请求。由于与Win 2000网络基础结构集成在一起,网络负载平衡可以说是一个为基于Win2000的Web应用程序增添处理能力的简单而有效的方式。
· 确保Web站点始终处于在线状态:由于使用网络负载平衡功能的Web服务器群集有少于10秒的故障应急时间,用户的购买或浏览活动不会被任何计划内或计划外的服务器停机时间所打断。与Win 2000资源工具中的Microsoft Cluster Sentinel监控工具相结合,网络负载平衡是确保网站在客户需要时始终处于在线状态的有效手段。
五、将群集服务与网络负载平衡配合使用
Win2000服务器的这两种群集技术可联合使用以创造具有高度可伸缩性和可用性的多层电子商务网站。通过在前端的Web服务器区中配置网络负载平衡,并将后端的在线商务应用程序群集化,用户就能在不受服务器或应用程序单点故障困扰的情况下获得接近线性的可伸缩能力所带来的全部好处。与为设计高可用性的网络基础结构所积累的工业标准经验相结合,用户就可以确保基于Windows 2000的Internet商务全时在线,并能够为满足需求而迅速做出调整。
|
用户与Cluster技术对应表 |
| |
集群服务 |
负载均衡技术(NLB) |
特点 |
|
Web Server Farm
|
|
√ |
快速扩展系统容量; 最小的站点宕机时间; |
|
Terminal Service |
|
√ |
快速扩展系统容量; 服务器出错影响最小; |
|
File/Print Service
|
√ |
|
最小的服务宕机时间; 系统出现问题,能保持数据连接; |
|
Database Messaging
|
√ |
|
最小的应用宕机时间; 系统出现问题,能保持数据连接; |
|
E-commerce Site |
√ |
√ |
快速扩展系统容量 ; 服务器出错影响最小; |
Win2K集群方案
在Win2000操作系统中, 微软设计了群集服务和网络负载平衡两种技术,这两种集群技术既能独立使用又能联合使用,为用户提供了高可用和扩展能力强的群集解决方案。为了将微软的技术和浪潮服务器的硬件充分结合,解决方案中心设计了三个实现方案,分别是:方案1-网络负载平衡实现;方案2-,集群服务实现;方案3-联合负载平衡和集群服务实现。最后的章节将介绍如何对负载平衡服务器进行测试。
网络负载平衡系统实现
采用WIN2K ADVANCE SERVER操作系统,再加上WIN2K的负载平衡技术,不须其它的硬件流量分配设备和流量管理软件,即可实现多台机器的流量管理,平衡负载。
系统结构图如下:
高可用性系统实现

采用WIN2K ADVANCED SERVER操作系统,再配置集群服务,可实现操作系统和应用的高可用性解决方案。通常通过共享磁盘阵列柜可实现微软EXCHANGE和SQL SERVER 的高可用性解决方案。
系统结构图如下:

网络负载平衡加高可用性解决方案
采用WIN2K ADVANCED SERVER 操作系统再加上负载均衡技术和集群服务,可以在三层结构计算环境中实现对中间件的负载均衡和后台数据库的高可用性。
系统结构图如下:

集群性能测试方案(2.0 )
集群计算机系统通俗地讲就是把多台计算机通过快速交换机连接起来,从外部看来,这些计算机就像一台计算机在工作,而对内来说,外面来的负载通过一定的机制动态地分配到这些节点计算机中去,从而达到超级计算机才有的高性能,高可用。
WebBench介绍
WebBench是一个主要用来考查Web服务器性能的测试工具。它的测试结构采用服务器、客户端和控制台三种方式。 WebBench 在Web服务器端安装测试文件,这些文件主要由HTML、GIF和可执行文件组成,利用客户端计算机来模拟Web浏览器向Web服务器发送请求。但是,在客户端并不使用真正的浏览器,也不真正显示服务器发送的响应文件,而是在收到Web服务器的响应后立即纪录该响应的相关信息,并立即发送另外一个请求。通过这种方法来测试Web服务器每秒处理的请求数和数据吞吐量。

那么如何用Windows2000 Advance Server构建一个集群系统?集群系统的性能又会怎样呢?为了更好地比较集群服务器和单台服务器的性能,我们在两种不同的测试环境下进行了性能比较测试,一种测试环境是利用Windows2000 Advance Server构建的一个集群系统,另一种是单服务器环境。
下面看我们的测试过程和结果:
集群环境
Windows2000 Advance Server使用的集群服务器软件网络载量平衡。网络负载均衡是Windows 2000的一个网络驱动程序。它的操作对TCP/IP网络栈而言是透明的。根据测试需要我们建立了如图2所示的集群web服务器测试环境:测试软件使用webbench3.0,上面的32台客户端用来模拟负载(中文windows98操作系统,10/100m自适应网卡),下面的3台计算机做实际的集群服务器(三台机器全部使用浪潮NP50E/933MHz/128M/29G/10or100Mlan),在每个服务器上都安装Windows2000 Advance Server和webbench测试程序,并且启动IIS5.0服务器,中间的主节点服务器(NP50E/933MHz/128M/29G/10or100Mlan)运行Windows2000 Advance Server,做软路由和动态负载平衡处理。底端的三台集群服务器通过cisco cantalyst 2900 xl交换机和主节点服务器相连,上面的32台客户端和控制台通过3com 3300交换机和主节点服务器相连。
步骤一
去掉集群环境中主节点服务器和cisco cantalyst 2900 xl交换机,选择任意一台NP50E服务器直接和3com 3300交换机相连,使用20台客户端。测试,requests/second(每秒的请求响应数)和throughput(数据吞吐量)。
步骤二
而在集群系统中,使32客户端同时提交任务,测试,requests/second(每秒的请求响应数)和throughput(数据吞吐量)。
步骤三
对上两个步骤所得出的收据进行分析,并得出结论。
配置Windows2000负载均衡服务器(V3.0)
通过使用Windows 2000 Advanced Server网络载量平衡创建服务器群集,可增强 Internet 服务器程序的可用性,可扩展性,这些 Internet 服务器程序可以是用于 Web、代理、域名服务 (DNS)、FTP、虚拟专用网 (VPN) 和流式媒体服务器等的程序。2002年2月4日浪潮解决方案中心在Windows2000环境下,通过配置载量平衡实现了集群,并在集群的基础上实现了WWW服务和FTP服务。
集群服务器的配置过程如下:
1. 网络规划 2. 为每一个集群节点安装和配置操作系统 3. 为每一个集群节点配置NLB(网络负载均衡)服务 4. 为每一个集群节点配置IIS服务和FTP服务 1、网络规划 在安装系统之前,最好先创建一个类似下面列表的《计划表》,以便安装的顺利完成。 表1《计划表》
|
操作系统信息 |
|
用户名 |
Mr Jobs |
|
|
组织名称 |
LC |
|
|
协议模式 |
每客户 |
|
|
服务器名 |
Lcsc01 Lcsc02 Lcsc03…… |
|
|
系统管理员口令 |
<BLANK> |
|
|
时区 |
北京 |
|
|
网络负载均衡(NLB)配置信息 |
|
主IP地址(虚拟IP) |
192.168.99.1 |
|
|
主IP子网掩码 |
255.255.255.0 |
|
|
主机参数 |
|
优先级(唯一主机ID) Lcsc01 Lcsc02 Lcsc03…… |
1 2 3….. |
|
|
各个主机的IP Lcsc01 Lcsc02 Lcsc03… … |
集群网卡IP 192.168.99.101 192.168.99.102 192.168.99.103…… |
专用IP地址 192.168.99.201 192.168.99.202 192.168.99.203…… |
|
IIS 目录 |
|
根(home)目录 |
D:\inetpub\wwwroot |
|
|
日志文件目录 |
D:\inetpub\logfiles |
|
2、为每一个集群节点安装和配置操作系统
为每一个节点服务器安装双网卡。IIS V5.0和NLB服务是Windows 2000 Advance Server安装的缺省服务。安装过程请参考有关资料,这里不再详细描述,在安装过程中先不配置TCP/IP协议。 3、为每一个集群节点配置NLB服务 安装网络载量平衡(注意:请严格按照如下所示步骤进行)。 1. 选择"网上邻居",点击鼠标右键;选择"属性",打开 "网络和拨号连接"。 2. 右键单击"本地连接",选择"属性",出现"本地连接属性"对话框。 3. 在"此连接使用下列选定的组件"下,可以看到"网络载量平衡"。(注意:只是列出但没有选中) 4. 选中"网络载量平衡"复选框。 5. 单击"属性"。显示"网络载量平衡 属性"对话框。其中有三个选项卡可供选择:"群集参数"、"主机参数"和"端口规则"。默认位置为"群集参数"。 6. 按照网络规划的《计划表》在每一个节点上配置三个选项卡,如下表所示。
表2《网络载量平衡-属性选项卡的配置参数》
|
集群主机1 |
|
集群参数 |
主机参数 |
端口规则(WWW服务) |
|
主IP地址 |
192.168.99.1 |
优先级 |
1 |
端口范围 |
80到80 |
|
子网掩码 |
255.255.255.0 |
初始集群状态 |
√活动 |
协议 |
两者 |
|
其余的选项不设置! |
专用IP地址 |
192.168.99.201 |
筛选模式 |
多个主机 |
| |
子网掩码 |
255.255.255.0 |
相似性 |
无 |
| |
|
|
负荷量 |
相等 |
|
集群主机2 |
|
集群参数 |
主机参数 |
端口规则 |
|
主IP地址 |
192.168.99.1 |
优先级 |
2 |
端口范围 |
80到80 |
|
子网掩码 |
255.255.255.0 |
初始集群状态 |
√活动 |
协议 |
两者 |
|
其余的选项不设置! |
专用IP地址 |
192.168.99.202 |
筛选模式 |
多个主机 |
| |
|
子网掩码 |
255.255.255.0 |
相似性 |
无 |
| |
|
|
|
负荷量 |
相等 |
|
集群骰? |
|
集群参数 |
主机参数 |
端口规则 |
|
主IP地址 |
192.168.99.1 |
优先级 |
3 |
端口范围 |
80到80 |
|
子网掩码 |
255.255.255.0 |
初始集群状态 |
√活动 |
协议 |
两者 |
|
其余的选项不设置! |
专用IP地址 |
192.168.99.203 |
筛选模式 |
多个主机 |
| |
|
子网掩码 |
255.255.255.0 |
相似性 |
无 |
| |
|
|
|
负荷量 |
相等 |
7. 完成后,单击"确定"。返回到"本地连接 属性"对话框。 8. 单击"Internet 协议 (TCP/IP)",然后单击"属性"。 9. 为每一个节点的双网卡设置 TCP/IP,如下图所示。
表3《"Internet 协议 (TCP/IP)属性配置参数》
|
Internet 协议 (TCP/IP) 属性 |
|
集群主机1 |
集群主机2 |
集群主机3 |
|
网卡1 |
IP地址 |
192.168.99.101 |
网卡1 |
IP地址 |
192.168.99.102 |
网卡1 |
IP地址 |
192.168.99.103 |
|
子网掩码
|
255.255.255.0
|
子网掩码 |
255.255.255.0 |
子网掩码 |
255.255.255.0 |
|
高级TCP/IP设置 |
IP地址 |
192.168.99.101 |
高级TCP/IP设置 |
IP地址 |
192.168.99.102 |
高级TCP/IP设置 |
IP地址 |
192.168.99.103 |
|
子网掩码 |
255.255.255.0 |
子网掩码 |
255.255.255.0 |
子网掩码 |
255.255.255.0 |
|
IP地址 |
192.168.99.1 |
IP地址 |
192.168.99.1 |
IP地址 |
192.168.99.1 |
|
子网掩码 |
255.255.255.0 |
子网掩码 |
255.255.255.0 |
子网掩码 |
255.255.255.0
|
|
其余的选项不设置! |
其余的选项不设置! |
其余的选项不设置! |
|
网卡2 |
IP地址 |
192.168.99.201
|
网卡2
|
IP地址 |
192.168.99.202 |
网卡2
|
IP地址 |
192.168.99.203 |
|
子网掩码 |
255.255.255.0 |
子网掩码 |
255.255.255.0 |
子网掩码 |
255.255.255.0 |
|
其余的选项不设置! |
其余的选项不设置! |
其余的选项不设置! |
11. 网络载量平衡配置结束。 4、为每一个集群节点配置IIS服务和FTP服务
Web站点的设置请参考有关资料。在本实验中,我们制作了几个简单的主页,并在主页中嵌入主机名称(这是为了在测试负载均衡时能看出是哪台服务器相应的请求),并把主页拷入相应的主机目录下,改名为default.htm 。
配置WWW服务的步骤:
在Windows2000服务器的负载平衡上配置WWW服务,请按照下面的步骤。
通常情况下,Web服务器使用80端口,在所有集群主机上,在"网络载量平衡属性"的端口规则中,配置端口范围80to80,协议为两者(TCP and UDP). 在筛选模式中选择多主机,在相似性中选择无。 (如表2《网络载量平衡-属性选项卡的配置参数》所示进行配置) FTP站点的设置请参考有关资料。在本实验中,可以制作几个简单的文件,并取不同的文件名,住并把文件拷入主服务目录下。
配置 FTP服务的步骤:
为了在Windows2000服务器的负载平衡上配置FTP服务,请按照下面的步骤。 在所有集群主机上,在"网络载量平衡属性"的端口规则中,配置端口范围20to21,协议为TCP. 相似性设置为单一或类C。 WWW和FTP服务配置完毕。
配置完成之后,重新启动集群中的主机。启动完成后,在任何主机的命令行方式下键入wlbs query,并回车,检查集群的状态。如果显示三台服务器已经会合,则表示集群已经正常工作。如显示错误,请对照以上步骤,找出配置错误的地方。
|