安装大型Linux集群=狒狒整理=2008-6-2=大型Linux集群系列简介本文是介绍安装和设置大型集群系列文章的第一篇。该系列文章的目的是把分散在公共领域不同地方的、用各种硬件和软件创建工作的Linux集群的过程所需要的信息,集中在一个地方。但是,这些文章并不打算介绍关于设计一个完整的新的大型Linux集群所需的基础知识。请参阅参考资料下的参考资料和红皮书获得一般性的架构指南。本系列的前两部分介绍集群的安装,概述了使用IBM系统管理软件——集群系统管理(ClusterSystemsManagement,CSM)进行的硬件配置和安装。第一篇文章直切主题,介绍了硬件配置过程。第二篇文章介绍管理服务器的配置和节点安装。本系列后续文章将介绍集群的存储后端,包括存储硬件配置以及IBM共享文件系统——通用并行文件系统(GeneralParallelFileSystem,GPFS)的安装和配置。这个系列可供系统架构师和系统工程师在使用IBMeServer集群1350框架规划和实现Linux集群时使用。(请参阅参考资料)。出于培训目的,正常集群操作中的一些内容可能还与集群管理员有关。第1部分:集群的通用架构在采取任何配置步骤之前,一个良好的设计至关重要。设计分为两个部分:•物理设计o每种机架类型的机架布局(例如,管理机架和计算机架)o机房设计:在安装和生产期间(如果两者不同)应当如何布置机架o机架间的连接图(用于网络、电源、控制台访问等等)o机架内的电缆连接(用于存储、终端服务器等等)•逻辑设计o网络设计包括:IP地址范围、子网配置、计算机命名规范等等oCSM配置,包括:定制脚本位置、硬件设置、监视需求o操作系统需求、定制包列表、系统配置选项o存储布局,包括文件系统布局、分区、复制等等示例集群(请参阅图1)完全由基于Intel®或AMD的IBMSystems计算机以及附加的TotalStorage子系统构成(关于这些系统的更多信息,请参阅参考资料。)为简单起见,用千兆铜线以太网电缆提供集群的内部连接。电缆在多数情况下可以用bonded/port-channeled/etherchannel链接提高机架间的带宽,从而提供良好的传输速率在这里插入自己喜欢的中继项。网络拓扑采用星形结构,所有机架向后连接到管理机架的主交换机。示例集群使用三个网络:一个用于管理/数据(计算网络),一个用于集群文件系统(存储网络),一个用于管理性设备的管理。前两个网络是普通的IP网络。多数任务使用计算机网络,包括进程间通信(例如MPI)和集群管理。存储网络专门用于集群文件系统的通信和访问。图1.集群架构图示例集群的一些额外设计和布局细节包括:•管理服务器——管理服务器的功能可以放在一台服务器或多台服务器上。在单台服务器环境中,管理服务器以独立模式运行。也可以设置高可用性管理服务器。可以使用CSM高可用性(HA)软件在两台服务器之间进行“心跳测试”,在发生故障情况时管理服务器之间的动态故障屏蔽。引入额外管理服务器的另一种可行方法是:当HA在环境中不重要的时候,使用复制设置。在这种情况下,可以把管理服务器的数据备份到其他活动系统,可以通过手动设置将备份系统联机以便接管管理工作(如果有必要的话)。在图1中,管理网络连接用红色显示。管理服务器是CSM服务器,它使用CSM功能专门控制集群:负责系统安装、监视、维护和其他任务。在这个集群中,只有一台管理服务器。•存储服务器和磁盘——可以用多种机制把多台存储服务器连接到基于磁盘的后端。可以用光纤、铜缆或结合使用二者,直接把存储器连接到集群,或者通过存储区域网络(SAN)交换机连接(请参阅图1)。这些服务器为集群中的其他服务器提供共享的存储访问。如果需要数据备份,请用额外的铜缆或光纤链路把备份设备连接到存储服务器。对于示例集群,存储的备份端是个单一实体,提供了跨集群的共享文件系统访问。本系列的下一篇文章介绍存储硬件和集群文件系统设置、配置和实现的细节。•用户节点——理想情况下,集群的计算机节点不应该接受外部连接,只应当由管理员通过管理服务器访问。系统用户可以登录到用户节点(或登录节点),在集群上运行他们的工作。每个用户节点都包含带有完整编辑功能的镜像、必要的开发工具、编译器和开发支持集群的应用程序和检索结果所必需的所有其他内容。•调度器节点——为了在集群上运行工作负荷,用户应当把自己的工作提交到调度器节点。在一个或多个调度器节点上运行的调度器守护程序使用预定的策略在集群上运行工作负荷。与计算机点一样,调度器节点也不应当接受来自用户的外部连接。系统管理员应当从管理服务器管理它们。•计算节点——这些节点运行集群的工作负荷,接受来自调度器的作业。计算机节点是集群中昀常使用的部分。系统管理员可以轻易地使用管理服务器重新安装或配置它们。外部连接——示例外部连接在图1中用绿色显示。这些连接被看作在集群之外,所以本文将不多做说明。硬件配置装配好机架并把它们放在适当位置上,连接好全部电缆之后,仍要做大量的硬件配置工作。本文不介绍特定于某种具体集群的特定电缆连接细节。本文使用了上面列出的示例集群设计作为具体示例,说明了在安装集群前所需的硬件配置逻辑网络设计在安装集群时昀常被忽略的任务就是逻辑网络设计。理想情况下,在实现集群前,应该在纸上进行逻辑设计。有了逻辑网络设计之后,就用它创建主机文件。在小型集群中,如果网络上没有太多设备,可以手工编写主机文件。但是,通常昀好是生成一个命名规范,然后编写一个定制脚本,自动生成主机文件。确保网络上的所有设备都在主机文件中表示出来。请看如下示例(包含示例名称):•管理服务器(mgmt001-mgmtXXX)•存储服务器(stor001-storXXX)•计算节点(node001-nodeXXX)•调度器节点(schd001-schdXXX)•用户节点(user001-userXXX)这个命名规范只涉及了网络中的五类计算机系统,而且只有一个网络,所以还不够好。还要考虑存储网络和计算机网络,以及设备管理网络。所以这个文件还需要扩展。需要访问集群文件系统的每个节点都需要存储网络上的一个地址。每个节点在计算网络上需要两个地址:一个用于计算地址,另一个用于基板管理控制器(BMC),BMC用来进行硬件监视和电源控制。表1用示例IP地址范围描述了更全面的命名规范。表1.主机文件命名规范DeviceCompute192.168.0.0/24BMC192.168.0.0/24Storage192.168.1.0/24Device192.168.2.0/24Externalextn/wManagementservermgmt001mgmt001_dmgmt001_smgmt001_mmgmt001_Storageserverstor001stor001_dstor001_sstor001_mstor001_e用户节点user001user001_duser001_s无无Schedulernodesschd001schd001_dschd001_s/无无Usernodesnode001node001_dnode001_s无无Computeswitches无无无gigb01a无Storageswitches无无无gigb01b无Terminalservers无无无term001无StoragecontrollerA/B无无无disk01a/b无LCM/KVM/RCM无无无cons001无在实现的时候,这个方案生成与下载中能访问的示例类似的主机文件。这个小的示例集群包括16个计算节点、一个管理服务器、一个存储服务器、一个用户节点和一个调度器节点,放在两个机架内,并附加了相关的设备。虽然没有提供一个大型集群,但对这个示例集群来说已经足够了,如果需要,可以很容易地把它扩展成更大的集群。以太网交换机有两个物理网络:一个用于计算通信量,一个用于存储。每个机架中,标准的32个节点需要有两个48口交换机,一个交换机负责一个网络。在更小型的集群中,管理机架还需要两个同样的交换机。对于更大的集群,48端口可能还不够,所以可能需要更大的中心交换机。两个主网络(不考虑设备管理网络)的每个交换机需要的配置各不相同,因为(就像在示例中那样),千兆以太网间的连接在存储网络中使用巨型帧,而在计算机网络上使用标准大小的帧。设备管理网络的设置通常非常简单:在10/100兆交换机上平层的两类网络可以满足设备管理要求,所以无需多做说明。示例A:ExtremeNetworks(极限网络)交换机下面是ExtremeNetworksSummit400-48t48口千兆以太网交换机的配置步骤。首先,用串口直连电缆连接到每台交换机的串行控制端口(9600、8-N-1、无流控制),使用默认用户IDadmin,无密码。(只需在提示符上按下回车键。)对于所有交换机,请执行以下步骤:1.输入unconfigswitchall——如需要,清除现有配置2.输入configurevlanmgmtipaddress192.168.2.XXX/24——设置管理IP地址。3.输入configuresnmpsysnamegigbXXX.cluster.com——设置交换机名称。4.输入configuresntp-clientprimaryserver192.168.2.XXX——把NTP服务器设置为管理服务器。5.输入configuresntp-clientupdate-interval3600——设置时间同步为每小时同步一次。6.输入configuretimezone0——设置时区。7.输入enablesntp-client——启动NTP。8.如果需要,输入configureports1-4preferred-mediumcopper——在端口1-4上将默认的首选介质光纤改为铜缆。现在在存储网络交换机上配置巨型帧,请执行以下步骤:9.输入createvlanjumbo——创建巨型帧vlan。10.输入configuremgmtdeleteports1-48——从mgmtvlan删除端口。11.输入configurejumboaddports1-48——把端口添加到jumbovlan。12.输入configurejumbo-framesize9216——设置昀大传输单元(MTU)的大小。13.输入enablejumbo-frameports1-48——开启巨型帧支持。要在2个端口的连接上启用中继,使用enablesharing47grouping47-48(把端口47和48组合起来,47作为主端口)。要完成配置,请完成以下操作:14.输入saveconfigurationprimary——把交换机配置写入flash,这样重启也不丢失。15.输入useconfigurationprimary示例B:Force10Networks交换机下面是Force10Networkse600multi-bladeGigabitEthernet交换机(有两个48端口面)配置步骤,用于路由网络(中央48端口交换机还不够大)。执行以下步骤配置初始层配置的底盘、线卡和端口:1.用串口直连电缆连接到每台交换机的串行控制端口(9600、8-N-1、无流控制),默认下不需要用户ID和密码。2.输入enable——进入超级用户模式,默认下不需要口令。3.输入chassischassis-modeTeraScale——把交换机初始化为tera-scale模式。4.交换机提示的时候,重新启动交换机。这要花上几分钟时间。5.重启之后,连接到交换机,再次输入enable进入超级用户模式。6.输入configure——进入配置模式。提示符类似于Force10(conf)#)。7.输入InterfaceRangeGigabitEthernet0/0-47(配置线卡0端口0到47,提示符类似于Force10(conf-if-range-ge0/1-47)#)。8.如果需要,输入mtu9252——设置巨型帧。9.输入noshutdown—