在传统的终端/主机的网络模式时代,终端功能简单,无需维护工作,在主机一端进行专门的管理与维护,具有资源共享、便于管理的特点。但是,主机造价昂贵,终端没有处理能力,限制了网络的规模化发展。之后的客户机/服务器模式推进了计算产业的标准化和开发化的发展,为系统提供了相当大的灵活性,但是随着分布系统规模的规模扩大,系统的维护和管理带来了巨大的开销。
面向Internet的服务型应用,需要高性能的硬件平台作为支持,将并行技术应用在服务器领域中,是计算机发展的必然趋势。并行处理技术在高性能计算领域中,高可用和高性能是集群服务器系统发展的两个重要方向。
集群的概念
集群英文名称是CLUSTER,是一组相互独立的、通过高速网络互联的计算机,它们构
成了一个组,并以单一系统的模式加以管理。一个客户与集群相互作用时,集群像是一个独立的服务器。集群配置是用于提高可用性和可缩放性。
和传统的高性能计算机技术相比,集群技术可以利用各档次的服务器作为节点,系统造价低,可以实现很高的运算速度,完成大运算量的计算,具有较高的响应能力,能够满足当今日益增长的信息服务的需求。
集群技术应用的需求
Internet用户数量呈几何级数增长和科学计算的复杂性要求计算机有更高的处理能力,而CPU的发展无法跟上不断增长的需求,于是我们面临以下问题:
●大规模计算如基因数据的分析、气象预报、石油勘探需要极高的计算性能。
●应用规模的发展使单个服务器难以承担负载。
●不断增长的需求需要硬件有灵活的可扩展性。
●关键性的业务需要可靠的容错机制。
IA集群系统(CLUSTER)的特点
●由若干完整的计算机互联组成一个统一的计算机系统;
●可以采用现成的通用硬件设备或特殊应用的硬件设备,例如专用的通讯设备;
●需要特殊软件支持,例如支持集群技术的操作系统或数据库等等;
●可实现单一系统映像,即操作控制、IP登录点、文件结构、存储空间、I/O空间、作业管理系统等等的单一化;
●在集群系统中可以动态地加入新的服务器和删除需要淘汰的服务器,从而能够最大限度地扩展系统以满足不断增长的应用的需要;
●可用性是集群系统应用中最重要的因素,是评价和衡量系统的一个重要指标;
●能够为用户提供不间断的服务,由于系统中包括了多个结点,当一个结点出现故障的时候,整个系统仍然能够继续为用户提供服务;
●具有极高的性能价格比,和传统的大型主机相比,具有很大的价格优势;
●资源可充分利用,集群系统的每个结点都是相对独立的机器,当这些机器不提供服务或者不需要使用的时候,仍然能够被充分利用。而大型主机上更新下来的配件就难以被重新利用了。
实现服务器集群的硬件配置
●网络服务器 两台
●服务器操作系统硬盘 两块
●ULTRA 160 LVD SCSI磁盘阵列 一个
●18G SCSI硬盘 三块
●网络服务网卡 四块
服务器集群的实践步骤
●在安装机群服务之前的准备:
1、 三块18G SCSI硬盘组成磁盘阵列,做RAID5。
2、 两台服务器要求都配置双网卡,分别安装Microsoft Windows 2000 Advance Server操作系统,并配置网络。
3、 所有磁盘必须设置成基本盘,阵列磁盘分区必须大于2个。
4、 每台服务器都要加入域当中,成为域成员,并且在每台服务器上都要有管理员权限。
●安装配置服务器网络要点
1、在这一部分,每个服务器需要两个网络适配器,一个连接公众网,一个连接内部网(它只包含了群集节点)。 内部网适配器建立点对点的通信、群集状态信号和群集管理。每个节点的公众网适配器连接该群集到公众网上,并在此驻留客户。
2、安装Microsoft Windows 2000 Adwance Server 操作系统后,开始配置每台服务器的网络。在网络连接中我们给连接公众网的命名为"外网",连接内部网的命名为"内网"并分别指定IP地址为:
节点1:内网:ip:10.10.10.11 外网ip:192.168.0.192 子网掩码:255.255.255.0 网关:192.168.0.191(主域控制器ip)
节点2:内网:ip:10.10.10.12 外网 ip:192.168.0.193 子网掩码:255.255.255.0 网关:192.168.0.191
●安装配置阵列
1、对阵列做可校验的RAID5。并划分分区。创建一个小分区(至少50兆)用来存储群集
配置数据库的检测点和日志文件。这是集群中一个重要的关键分区,一但他出现故障,将导
致整个集群的失败。这里我们分配给他1G的空间,并命名为X盘符。
2、其他的分区根据用户的需求可以自行设定。我们为了方便只分了一个Y区。
3、注意:在集群中所有的磁盘都必须是基本盘并且都要采用NTFS格式。
●安装集群服务软件
【配置首节点】
1、所有的设备都先关闭(两台服务器、一台磁盘阵列)。
2、先开启磁盘阵列(在任何时候都要先开启磁盘阵列,以免造成磁盘混乱)。
3、开启节点1,用有管理员权限的用户名登陆到域,用添加删除程序来添加组件-集群服
务。在安装过程中选择这是集群的首节点。创建集群名称。我们给命名为Mycluster。
5、 配置群集磁盘。由于我们只有一个共享的磁盘阵列,所以我们将这个阵列中的两个分区
都配置成群集磁盘。
6、配置群集网络。首先我们配置外网,网络名称选择外网。IP地址保持和外网的IP地址一致。选中该网络可用于集群服务。选中所有的通信(混合网络)选项。进行下一步。接下来配置内网,确保网络名称和IP地址跟内网的一致,选中该网络可用于集群服务。选中只用于内部群集通信选项。
7、 点击下一步按钮,屏幕出现使用网络的顺序。我们调整为表里的第一个连接是内网。这是因为:在正常的操作中,该连接将用于群集通信。如果内部网络连接失效,群集服务将自动切换到表里的下一个网络。
8、执行下一步将出现集群的IP和掩码选项。这里输入唯一的集群IP,我们设定为192.168.0.195 掩码当然还是:255.255.255.0。
9、单击完成,完成首节点的群集配置。
【配置第二个节点】
1、保持阵列和第一个节点的开机和可用。给第二个节点上电开机。
2、象在首节点上安装群集服务一样,对第二个节点开始进行安装。
3、过程跟在首节点上在安装群集服务大体相同,只有下列的不同之处:
在创建或添加群集对话框中,在群集中选择第二个或下一个节点,并单击下一步。
输入前面所创建的群集名称(在本例中,是MyCluster),并单击下一步。
将连接到群集设为未选中。群集服务配置向导将自动提供,在安装首节点时选定 的用户帐号名称。
输入该帐号的口令(如果有的话),并单击下一步。
在下一个对话框中,单击完成,结束配置。
将启动群集服务。单击确定。
关闭添加/删除程序
如果要安装额外的节点,重复这些步骤,以便在其它节点上安装群集服务。
检验安装
单击开始,单击程序,单击管理工具,并单击群集管理器。显示的两个节点表明,存在群集,而且它在运行。
效能评测
●容错能力的检验
对于他的容错能力我们做了以下几个实验:
1、在两台节点和集群服务同时运行的情况下,断掉其中一个节点的外网连接或是当掉一台节点,此时运行在这个节点上的集群服务被迫断开并转移到另外一个连接正常的节点上,此过程大概要4秒钟(视集群上运行的服务数量而定,在安装了SQL Server 2000服务之后这个过程延长到了9-15秒)。
2、在两台节点和集群服务同时运行的情况下,我们更改了一台节点的时间,在经过大约10分钟时间被修改的时间自动调整成同另一台节点相同的设置。
3、我们在集群服务上开启了web服务,并设置了下载项目。在客户端正在下载过程中断掉集群中的一个节点,客户端并没有明显的感觉出有变化。
由以上实验可见用Windows 2000 Advance Server所做的集群在容错方面具有良好的效能,他几乎是瞬间就能把出错的节点上的服务接管过来,相对于客户端几乎感觉不到有任何变化。同时他在周期时间内所有节点进行同步,以保证其一致性。
●负载均衡能力的检验
1、 Windows 2000 Advance Server 所做的集群是基于TCP/IP构建的,他为共同工作且使用两个或两个以上主机群集的Web服务器提供了高度可用性和可伸缩性。因特网客户使用单一的IP地址访问群集。客户不能将单一服务器从群集中区分开来。服务器程序不能识别它们正运行于一个群集中。但是,由于网络负载均衡群集即使在群集主机发生故障的情况下仍能提供了不间断的服务,故而,它与运行单一服务器程序的单一主机大相径庭。与单一主机相比,群集还能对客户需求做出更迅捷的反应。
注意要点
我们在做集群实验的过程当中遇到了一些问题,虽然最后都顺利的解决了,但我想还是要在这里提出来让大家注意,避免在今后的工作中出现不必要的重复的错误。
1、共享磁盘之中X盘的重要性。在实验的过程中我们也知道X盘相当重要,为了验证他的重要地位,我们做了如下实验:我们首先看到在X盘下面只有一个MSDN的文件夹,其中有两个文件*.tmp和*.log,这就是上文所说的群集配置数据库的检测点和日志文件。我们试着删除这两个文件,结果*.tmp可以删除,*.log文件正在使用而无法删除。删除了*.tmp文件之后我们重新启动两台节点和集群。一切正常,进入X盘看他的文件,发现被删除的*.tmp文件又重新回到了里面,只是名字稍有些改变。这表明*.tmp文件是每次集群启动时自动生成的一个文件,而集群启动以后,这个文件就不在被使用。接着我们进行了一个后来被证明
是毁灭性的实验,我们在我的电脑管理里面的调整了磁盘管理,把X盘删除了。结果可怕的事情发生了,在不到10秒钟的时间内两台节点相继报告机群服务发生错误将不能运行且终止服务。我们尝试再次进入磁盘管理,发现阵列的磁盘已经变成了不可读取。无奈之下我们重新启动所有设备,期望能发生超乎设想的好的结果,但是事实让我们不得不失望。集群服务无法启动,阵列磁盘不可读取。在没有任何办法的情况下我们不得不重新配置集群。
(责任编辑:城尘)