组建计算机服务器集群
- 格式:docx
- 大小:20.31 KB
- 文档页数:3
Weblogic12.1.3集群搭建1基本概念WebLogic的一些基本概念:熟悉Weblogic的必经了解的概念——1.1域(Domain):1.概念(1)域是管理的单元或边界;(2)作为一个单元来管理的,并相互关联的一组WebLogic服务器资源被称为域;(3)Domain是webLogic Server管理的一个基本单元,包括一个管理server和一个管理的入口。
(4)在创建server和使用server的时候需要先创建Domain。
(5)每个Domain都包括一个config.xml文件,在domain的根目录下的config目录中。
2.组成——(1)由server组成(2)server分Administration server和Managed Servers(3)Administration server负责domain的管理,一般不负责应用(4)Managed server部署实际的应用(5)Cluster3.总结:Domain是一个逻辑上的概念Domain是一组Sever的集合一个域有且只有一个管理服务器1.2服务器(Server):1.分类——服务器(Server)分Administration Server(管理服务器)和Managed Server(被管理服务器,也称受管服务器)2.Administration Server(管理服务器)——是控制整个域配置的中心操作节点,管理服务器维护着整个域Domain 的配置并将配置分配到每个被管理服务器Managed Server 中,每个域中都必须有一个Administration Server。
Admin Server如果挂了,对于Domain中的ManagedServer不会产生影响,如果配置了集群,对于负载均衡和Failover机制也不会产生影响,因为这些都是基于配置文件的(config.xml),而不依赖与AdminServer的实例。
Windows 2008 R2集群服务和SQLServer 2008 R2集群服务部署大体步骤:1.建立域控制器,配置好域控及两台成员服务器的网卡参数和DNS指向,修改各服务器的主机名。
成员服务器需要加入到域。
(成员服务器上设置IP时只选择IPv4,去掉IPv6的选项。
心跳网卡可以不设置dns,在成员和域控制器上要在网卡的高级属性中的wins选项中禁用NETBIOS。
)2.在域控制器dc上添加对私网地址网段的反向DNS解析。
(若成员服务器加入到域后没有对应的DNS记录可以尝试重启缺少记录的对应服务器)3.安装角色和功能时要确定安装“I/O多路径”“故障转移群集”应用服务器里的“传入、传出服务”“分布式协调器DTC”。
4.创建群集后在群集所在的节点上安装sql的故障转移群集,在备机上向sql server故障转移群集添加新的节点。
一、环境已部署好域环境如下图。
域控制器一台,安装有Windows Server 2008 R2,已加入域,IP地址为 1.1.1.30节点计算机两台:wloonga和wloongb,安装有Windows Server 2008 R2,已加入到域。
IP地址分别 1.1.1.1和1.1.1.2(需要先做好域并在域上建立一个sql server2008R2专用的组,并将sql用户加入domain admin组和群集服务器的本地管理员组。
)两台群集服务器在通过iscsi连接存储磁盘后在磁盘管理中设置相同的磁盘盘符如下已划分存储:二、在两台节点计算机wloong1和wloong2上添加多路径I/O功能在wloong1上过程如下:1、点击开始- 管理工具- 服务管理器- 功能- 添加功能2、选择“多路径I/O”3、点击安装,等待安装成功。
三、对三块磁盘进行磁盘管理在wloong1服务器上管理磁盘,盘符分别为Q、Z、M,wloong2 服务器只需对磁盘进行联机就可以。
注意盘符的划分,不能与服务器现有的盘符相同。
Linux高性能计算集群 -- Beowulf集群/page/hardware_linux.html1 集群1.1 什么是集群简单的说,集群(cluster)就是一组计算机,它们作为一个整体向用户提供一组网络资源。
这些单个的计算机系统就是集群的节点(node)。
一个理想的集群是,用户从来不会意识到集群系统底层的节点,在他/她们看来,集群是一个系统,而非多个计算机系统。
并且集群系统的管理员可以随意增加和删改集群系统的节点。
1.2 为什么需要集群集群并不是一个全新的概念,其实早在七十年代计算机厂商和研究机构就开始了对集群系统的研究和开发。
由于主要用于科学工程计算,所以这些系统并不为大家所熟知。
直到Linux集群的出现,集群的概念才得以广为传播。
对集群的研究起源于集群系统的良好的性能可扩展性(scalability)。
提高CPU主频和总线带宽是最初提供计算机性能的主要手段。
但是这一手段对系统性能的提供是有限的。
接着人们通过增加CPU个数和内存容量来提高性能,于是出现了向量机,对称多处理机(SMP)等。
但是当CPU的个数超过某一阈值,象SMP这些多处理机系统的可扩展性就变的极差。
主要瓶颈在于CPU访问内存的带宽并不能随着CPU个数的增加而有效增长。
与SMP相反,集群系统的性能随着CPU个数的增加几乎是线性变化的。
图1显示了这中情况。
图1. 几种计算机系统的可扩展性集群系统的优点并不仅在于此。
下面列举了集群系统的主要优点:1.高可扩展性:如上所述。
2.高可用性:集群中的一个节点失效,它的任务可以传递给其他节点。
可以有效防止单点失效。
3.高性能:负载平衡集群允许系统同时接入更多的用户。
4.高性价比:可以采用廉价的符合工业标准的硬件构造高性能的系统。
1.2.1 集群系统的分类虽然根据集群系统的不同特征可以有多种分类方法,但是一般我们把集群系统分为两类:∙高可用(High Availability)集群,简称HA集群。
集群服务(MSCS)与网络负载均衡 (NLB)集群服务在企业组织部署关键业务、电子商务与商务流程应用起到了日益重要的作用。
集群是在一组计算机上运行相同的软件并虚拟成一台主机系统为客户端与应用提供服务。
计算机通过缆线物理连接并通过集群软件实现程序上的连接,可以使计算机实现单机无法实现的容错和负载均衡。
Windows Server 2003 家族产品将提供两种类型的集群服务:集群服务(MSCS) 仅用于Windows Server 2003 企业版和数据中心版,该服务为像数据库、消息系统、文件与打印服务这些关键业务应用提供了高可用性和可扩展性。
在集群中的多个服务器(节点)保持不间断的联系。
如果在集群中的某一节点因出错或维护不可用时,另一节点会立刻提供服务,以实现容错。
正在访问服务的用户可以继续访问,而不会察觉到服务已经由另一台服务器(节点)提供。
Windows Server 2003的企业版和数据中心版都可以支持最大达8个节点的集群配置。
这一改变增强了部署的灵活性:尤其对于地理分散部署的集群配置而言,并且支持主机的N+I配置(N 个主动节点+ I 个备用节点)。
N+I 模型将为将来利用Windows Server 2003部署大型Microsoft Exchange Server提供非常重要的支持。
网络负载均衡 (NLB) 在Windows Server 2003家族的所有版本中都可用,该服务可在集群内均衡分布访问的IP流量。
网络负载均衡增强了Web服务器、流媒体服务器、终端服务器等Internet服务器程序的可用性和扩展性。
作为负载均衡架构并提供了控制信息管理在WMI结构之上的应用,网络负载均衡可与现存Web服务器群结构无缝集成。
益处优势描述高可用性集群被设计用于避免单点失效。
应用程序可分布在多台计算机上并行运行并提供失效恢复,以提供更高的可用性。
扩展性可以通过为集群增加更多的处理器与计算机以提供更高的计算能力。
⾃⼰动⼿怎么搭建私⼈服务器?搭建私⼈服务器的⽅法常见的虚拟主机空间或者VPS,价格贵不说,对服务器拥有的权限也很⼩,主要维护还得通过IDC的客服或者机房的⽹管来完成,对于勤奋动⼿的⼈来说,⾃⼰动⼿搭建私⼈服务器更加有意思,不但拥有完全的权限,⽽且节省了费⽤,更能学到很多的⽹络知识和累积相关的维护经验。
⽹络最⼤的优点就是资源共享,但是恰恰当我们需要这种共享的时候,却发现,原来我们所需要的共享并不是这么轻松。
当你突然有⼀个⼤型的⽂件需要在⽹络中发送给很多⼈,怎么办?有⼈可能会发送邮件,有⼈可能考虑将⽂件上传到提供⽹络硬盘功能的服务商。
以上各种⽅法都有各种限制条件和弊端,其实我们可以⾃⼰搭建⼀个属于⾃⼰私⼈的“⽹络服务器”,让其他⼈都能够像访问新浪,百度⼀样直接访问我⾃⼰的电脑,⾃⼰下载。
我们每个⼈完全都可以利⽤⼿头的条件将⾃⼰电脑中的资源“公布于众”搭建⼀个私⼈服务器,⽐如建⽴私⼈性质的博客,论坛,FTP,个⼈⽹站,甚⾄服务器集群。
⾸先我们得弄清楚我们的⼊⽹机制和⽅式,⽹络中每台机器都是通过IP地址来寻址的(这⾥不来讨论IP的具体知识),我们在进⾏拨号上⽹的时候,提供⼊⽹服务的服务商(如电信)会随机分配⼀个公⽹ IP地址到我们,这样就像获得了电影院的电影票⼀样,有了这个公⽹IP,我们才有internet⼤家园中的“座位号”,才能正式合法的访问分享 internet中的各种资源,你能访问别⼈,也能让别⼈访问你,当然基于更多信息安全的考虑,某些时候我们的这种共享访问并不是过度⾃由。
提供给我们普通上⽹⽤户⼊⽹的服务商(如电信),基于资源合理分配利⽤原则等原因,通常采取动态IP分配⽅式让我们接⼊互联⽹,也就是说,我们每次登陆上⽹络所获得的本机IP有可能会不同。
这样,我们机器的公⽹IP地址信息⽆法固定,别⼈也就没办法通过⼀个固定的⽅式来访问我们的服务器,这个时候需要动态域名解析软件来帮助,动态域名解析软件会在你本机安装⼀个客户端,这样,我们每次上⽹的时候,这个动态域名解析客户端会记录下本机的公⽹IP,并将IP信息与你所绑定的域名信息发送到DNS服务器,这样,尽管我们⼊⽹的公⽹IP不同,但是通过动态域名解析客户端所绑定的免费域名则是固定的,通过这个固定的域名信息每次都能准确的寻址到本机。
服务器虚拟化集群技术方案服务器虚拟化集群技术方案1. 引言服务器虚拟化集群技术是一种将物理服务器虚拟化为多台逻辑服务器的技术,通过将不同的服务器运行在同一台物理服务器上,实现资源的共享和灵活的配置管理。
本方案旨在提供一种高效、可靠且可扩展的服务器虚拟化集群解决方案。
2. 技术架构2.1. 服务器硬件配置在服务器虚拟化集群中,需要选择高性能的物理服务器作为宿主机。
宿主机应具备足够的处理能力、存储容量和网络带宽,以支持多个虚拟服务器的运行。
2.2. 虚拟化软件虚拟化软件是构建服务器虚拟化集群的关键组件。
在本方案中,我们选择使用开源的虚拟化软件,如VMware ESXi、KVM或Xen等,以实现虚拟机的创建、配置和管理。
2.3. 虚拟机管理系统虚拟机管理系统用于集中管理和监控虚拟服务器的运行状态和资源使用情况。
通过虚拟机管理系统,管理员可以对虚拟机进行调度、配置和备份,以优化资源利用率和提高系统的可用性。
3. 部署步骤3.1. 硬件设备准备在部署服务器虚拟化集群之前,需要准备好宿主机和存储设备,并确保其符合方案要求的硬件规格。
3.2. 虚拟化软件安装在宿主机上安装虚拟化软件,并进行相应的配置和优化,以保证宿主机的性能和稳定性。
3.3. 虚拟机创建与配置使用虚拟机管理系统创建虚拟机,并对虚拟机进行配置,包括分配CPU、内存、存储等资源,并设置网络连接和安全策略。
3.4. 资源调度与监控使用虚拟机管理系统进行虚拟机资源调度和监控,确保各个虚拟机的资源利用率均衡,并及时发现和解决资源瓶颈问题。
3.5. 数据备份与恢复通过虚拟机管理系统对虚拟机进行定期备份,以防止数据丢失,并提供灾难恢复的能力。
4. 安全性与可用性保障4.1. 访问控制采用合适的访问控制策略,限制虚拟机间的通信,并防止未经授权的访问和攻击。
4.2. 容灾与备份设计容灾方案,包括备份虚拟机数据、应急演练等,以确保系统在不可抗力发生时可以迅速恢复正常运行。
分布式与集群的区别是什么?
“我是哟哟吼说科技,专注于数据⽹络的回答,欢迎⼤家与我交流数据⽹络的问题”
分布式是指将不同功能,或不同地点,或拥有不同数据的多台计算机通过⽹络连接起来,由控制系统统⼀管理,完成⼤规模信息处理的计算机系统。
集群是指将多台服务器集中在⼀起提供同⼀种服务,在逻辑上可以看做是⼀台服务器对外进⾏服务,这些服务器组合就是集群。
如题,分布式和集群的区别是什么?
哟哟简单总结⼀句话:分布式是“并联”⼯作的,集群是“串联”⼯作的。
下⾯哟哟来具体介绍⼀下两者的区别:
1、从概念上就可以看出两者最主要的区别就是分布式是将⼀种业务拆分成多个⼦业务部署在多台服务器上,进⽽对外提供服务;⽽集群就是将多台服务器组合在⼀起提供同⼀种服务;
2、集群强调在多台服务器位置集中,并且容易统⼀管理;⽽分布式没有具体要求,不论放置在哪个位置,只要通过⽹络连接起来就⾏;
3、集群是⼀种物理形态,即多台服务器在⼀起提供⼀种服务;⽽分布式是⼀种⼯作⽅式,即⼀个程序或业务分解到多台服务器分别完成;
总之,两者最明显的区别还是集群是多台服务器做相同类型的任务,分布式是多台服务器协同做⼀种任务。
欢迎⼤家多多关注我,在下⽅评论区说出⾃⼰的见解。
集群CLUSTER种类介绍⼀、集群CLUSTER 介绍计算机集群Cluster,可以把多台计算机连接在⼀起使⽤,平分资源或互为保障。
其好处不⾔⽽喻,群集中的每个计算机被称为⼀个节点,节点可添加可减少,在这些节点之上虚拟出⼀台计算机供⽤户使⽤;从使⽤⽤户的⾓度看始终是使⽤⼀台计算机,⽆所谓多少节点。
如Figure1所⽰,其中多台计算机可以共同分担资源,也可以互为保障,节点之间的⼯作⽅式取决于不同的群集技术,不同⼚商实现⽅式会有不同。
当下流⾏的群集技术可分为以下⼏种:HA⾼可⽤集群、负载均衡集群、并⾏计算群集。
⼆、HA⾼可⽤集群High availability Cluster⾼可⽤群集,简称HAC ;主要⽤于⾼可⽤解决⽅案的实现,节点间以主备形式,实现容灾;在⼤型故障(宕机,服务器故障)的情况下实现快速恢复,快速提供服务。
如下图所⽰:当前节点在Node01,所有业务在Node01上运⾏,若发⽣故障服务和资源会转移到Node02上。
⾼可⽤集群的另外⼀个特点是共享资源,多个节点服务器共享⼀个存储资源,该存储可在不同节点之间转移。
关于存储(Raid)知识可参考:⾼可⽤群集可实现以下三种⽅式:主从⽅式:主机⼯作,备机监控。
此⽅式不能有效的利⽤服务器资源互为主从:两服务器同时在线,⼀台服务器故障可切换到另⼀台上。
此⽅式有效的利⽤服务器资源,但当服务器故障时候,将导致⼀台服务器上运⾏多个业务。
多台服务器主从:⼤部分服务器在线使⽤,⼩部分监控;若有部分服务器故障,可切换到指定的⼩部分服务器上。
此⽅式为前两种⽅式的综合。
然后多台服务器群集,也增加了管理的复杂度。
微软的故障转移群集功能最早在Windows NT 4.0企业版中实现。
笔者所使⽤的Windows Server 2008 R2 Sp1企业版最多个可⽀持16个节点。
三、负载均衡集群Load Balancing负载均衡,不同节点之间相互独⽴,不共享任何资源;通过⼀定算法将客户端的访问请求平分到群集的各个节点上,充分利⽤每个节点的资源。
簇的四种定义今天,集群的概念在计算机科学中被广泛使用,它增加了计算的有效性和效率。
根据集群的概念,一个集群是指一组计算机系统相互协作,共同完成一个任务的一组计算系统,可以把它想象成一个服务器。
集群有四种定义:结构性、任务性、紧密性和故障容忍性。
首先,结构性集群是一组计算机系统,它们被组织成一个集群,并使用在共享计算机中提供的中央进程单元(CPU)、存储、软件和网络资源。
一般来说,每个成员计算机被称为节点,这些节点共同使群集拥有更强大和灵活的计算能力。
结构性集群适用于执行批量处理任务、高性能计算,如高精度分析和机器学习。
其次,任务型集群是一组计算机系统,它们被组织成一个集群,共同完成一个任务,而不是独立完成一个任务。
它只包含一部分计算机系统,而这部分计算机是支持共同完成一个任务的必要系统。
任务型集群通常用于分布式系统,这种类型的集群可以把一个任务分成多个子任务,分流到不同的计算机上去完成,最终获得较好的性能和更好的可用性。
紧密型集群是一组计算机系统,它们被组织成一个集群,其中所有计算机系统都与其他计算机系统有紧密的相互联系。
计算机系统可以彼此通信,在必要时可以互换数据。
紧密型集群通常用于分布式存储系统,它可以通过存储技术,通过分布式文件系统将系统里的文件存储在不同的位置,保证文件的安全性和可用性。
最后,故障容忍性集群是一组计算机系统,它们被组织成一个集群,其中每台计算机都能够自主处理和故障恢复,不受其他计算机的影响。
故障容忍性集群通常用于多层网络系统,如果某台计算机发生故障,其他计算机可以及时的接替,从而确保系统正常运行。
总之,从上面的讨论可以看出,集群有四种定义:结构性、任务性、紧密性和故障容忍性,它们的特点是相同的总体结构,即一个集群是指一组计算机系统相互协作,共同完成一个任务的一组计算系统,但它们各有不同的应用领域和技术特点,通过使用相应的集群技术,可以提升计算机系统的性能和可用性。
配置WebLogic Server 12c 集群目录1. 预备知识 (4)2. 本文环境 (5)3. 配置说明 (6)3.1. 集群定义 (6)3.2. 集群的好处 (7)3.3. 关键功能 (7)3.4. 集群架构 (7)3.5. 配置集群应用的必要条件 (9)3.6. 配置前的准备工作 (9)4. 配置WebLogic Server 集群 (11)4.1. 主控服务器配置 (11)4.1.1. 使用Configuration Wizard 进行配置 (11)4.1.2. 创建新的Domain (11)4.1.3. 选择安装域源 (12)4.1.4. 指定域的名称和位置 (13)4.1.5. 配置管理员用户名和密码 (13)4.1.6. 配置域启动模式和JDK (14)4.1.7. 选择可选配置 (15)4.1.8. 配置管理服务器 (15)4.1.9. 配置受管理服务器 (16)4.1.10. 配置群集信息 (18)4.1.11. 将“受管理服务器”添加到“集群”中 (19)4.1.12. 创建HTTP 代理应用程序 (19)4.1.13. 配置计算机 (20)4.1.14. 配置向计算机分配服务器 (20)4.1.15. 检查WebLogic 域配置 (21)4.1.16. 编辑WebLogic 服务启动文件 (21)4.2. 受控服务器配置 (23)4.2.1. 使用Configuration Wizard 进行配置 (23)4.2.2. 创建新的Domain (23)4.2.3. 选择安装域源 (24)4.2.4. 指定域的名称和位置 (24)4.2.5. 配置管理员用户名和密码 (25)4.2.6. 配置域启动模式和JDK (25)4.2.7. 选择可选配置 (26)4.2.8. 配置管理服务器 (26)4.2.9. 配置受管理服务器 (27)4.2.10. 配置群集信息 (27)4.2.11. 配置计算机 (28)4.2.12. 检查WebLogic 域配置 (28)4.2.13. 编辑WebLogic 服务启动文件 (29)4.3. 启动WebLogic 服务 (30)4.4. 将应用部署到集群上 (33)4.4.1. 点击“部署”菜单 (33)4.4.2. 锁定并编辑 (34)4.4.3. 开始安装 (34)4.4.4. 部署成功验证 (38)4.4.5. 负载均衡测试 (39)1.预备知识什么是Domain,Server,Machine,Cluster图1DomainDomain 是WebLogic Server 实例的基本管理单元。
算力集群的标准一、硬件配置服务器配置:算力集群的硬件配置应考虑使用高性能的服务器,以提供稳定和高效的计算能力。
服务器的性能参数应包括处理器、内存、存储和网络接口等。
存储设备:存储设备应具有高可靠性和高可用性,以满足算力集群的数据存储和管理需求。
网络设备:网络设备应具有高带宽和低延迟的特点,以支持算力集群内部和外部的高速数据传输。
二、软件环境操作系统:算力集群应使用成熟的操作系统,如Linux 等,以提供稳定和安全的运行环境。
分布式计算框架:算力集群应采用高效的分布式计算框架,如Hadoop、Spark等,以实现计算任务的分布式处理和高效计算。
数据管理系统:算力集群应采用先进的数据管理系统,以实现数据的存储、管理和查询。
三、网络架构网络拓扑:算力集群的网络架构应采用模块化设计,易于扩展和维护。
同时,应考虑冗余设计和容错机制,以确保网络的可靠性和稳定性。
网络协议:算力集群的网络协议应支持TCP/IP、HTTP等常用的网络协议,以确保与其他系统的互通性和兼容性。
四、安全保障网络安全:算力集群应具备强大的网络安全防护能力,包括防火墙、入侵检测系统等,以防止网络攻击和数据泄露。
数据安全:算力集群应采用加密技术对数据进行加密存储和传输,以确保数据的安全性和隐私性。
五、管理运维管理平台:算力集群应具备统一的管理平台,以实现硬件资源、软件资源和网络资源的集中管理和监控。
运维工具:算力集群应采用高效的运维工具,以降低运维成本和提高工作效率。
同时,应具备自动化部署和升级功能,以简化运维流程。
故障处理:算力集群应具备快速故障处理能力,包括故障诊断、定位和恢复等,以确保系统的稳定性和可用性。
集群分析的基本概念与集群一、引言在计算机科学领域,集群是指由一组互相连接的计算机或服务器组成的系统。
集群分析是通过对这些计算机之间的相互作用和关系进行研究和分析,从而获得有关集群特征和性能的信息。
本文将介绍集群分析的基本概念,并讨论集群在现代计算领域中的应用。
二、集群分析的基本概念1.集群定义集群是一个由互相连接的计算机或服务器组成的系统,这些计算机通过网络进行通信和协作。
集群通常由一个主节点或主服务器控制,并通过分配任务和资源共享来提高系统的整体性能。
2.集群特征集群具有高可用性、高性能和可伸缩性的特点。
高可用性指的是当一个节点出现故障时,其他节点可以接管其任务并继续运行。
高性能表示集群可以同时处理大量的计算任务,从而提高系统的整体性能。
可伸缩性指的是集群可以根据需求动态地增加或减少节点,以适应不同规模和负载的需求。
3.集群组件集群通常由以下几个组件组成:–主节点/主服务器:负责协调和管理集群中的各个节点。
-从节点/从服务器:执行分配给它们的任务,并通过与其他节点的通信来共享资源。
-网络:提供节点之间的通信和数据传输。
-分布式文件系统:用于在节点之间共享和存储数据。
4.集群算法集群分析通常涉及使用各种算法和技术来研究和分析集群中的数据。
常用的集群算法包括K-means聚类、DBSCAN、层次聚类等。
这些算法通过将数据分组为不同的簇,从而揭示数据中的模式、趋势和关系。
三、集群的应用集群在现代计算领域中有着广泛的应用,以下是一些常见的应用场景:1.数据挖掘集群分析被广泛用于数据挖掘和机器学习任务。
通过对大规模数据集进行聚类和分类,可以发现数据中的潜在模式和趋势。
这对于市场分析、用户行为分析、推荐系统等领域非常有用。
2.并行计算集群可以利用分布式计算能力,同时处理多个计算任务。
这在大规模科学计算、天气预测、图像处理等领域有着广泛的应用。
通过将任务分发给不同的节点,并通过节点之间的通信共享和整合结果,可以提高计算效率和速度。
组建计算机服务器集群 摘要:集群,是一组独立的计算机系统构成一个松耦合的多处理器系统,它们之间通过网络实现进程间的通信。应用程序可以通过网络共享内存进行消息传送,实现分布式计算机。 建造一个集群并不是一件简单的事件。集群的组成部分必须根据要运行的主要应用进行调整,以使之运行在最佳状态。这此因素带来的结果就是,建造集群系统不是只有一个标准的方案,在本章中,我们就会看到许多种建造方案。集群技术是计算机系统结构的前沿领域,笔者也仅是略有了解,希望本文能起到抛砖引玉之用。 1.什么是服务器集群 随着Internet的爆炸性增长,Internet与人的生活越来越息息相关,通过Internet上进行交易也就越来越受关注。近几年,电子商务的年增长均超过100%。服务器的工作量也迅速增长,所以服务器(特别是一个受人欢迎的WEB服务器)很容易在访问高峰时期过载。 而另一方面,计算机从1946年单纯的科学计算任务到现在大量纷繁复杂的信息处理,工作量越来越大,需要越来越快的处理能力。所以计算机界就不得不不断研究更快的处理器,存储器,以适应这一需求。 然而,科学家们意识到,单块处理器的速度发展空间是有限的,为什么不能让计算机象人一样协同工作,“群策群力”地将工作完成好呢!这时,就掀起了“并行计算”的研究。 举个例子来说,我们架设了一台WWW服务器,上面构建了一个电子商务网站,然而随着时间的推移,名声越来越大,这时点击率也就越来越高,WWW服务器的负载也就越来越高。这种情况下,我们就必须提升WWW服务器的能力,以满足以益增长的服务请求。这时,我们就面临两种选择: 1)升级WWW服务器,采用更快的CPU,增加更多的内存,使其更具有POWER;但日益增长的服务请求又会使服务器再次过载,需要再次升级,这样就陷入了升级的怪圈。还有,升级时还得考虑到服务如何接续,能否中止! 2)增加WWW服务器,让多台服务器来完成相同的服务。 这种方法就是服务器集群,通过并行技术来大大提升系统性能。也就是这一章的主要内容,这种方法具有很好的扩展性,而且可以最大限度地利用已有投资。 1.1.集群的概念 集群,是一组独立的计算机系统构成一个松耦合的多处理器系统,它们之间通过网络实现进程间的通信。应用程序可以通过网络共享内存进行消息传送,实现分布式计算机。 近几年来,微处理器、内存、总线技术、网络技术有了非常大的进步,软件的并行技术也有了非常大的进步,这使得让一组廉价的个人电脑与工作站协同工作成为可能,甚至可以与拥有强大的芯片处理能力的超级计算机竞争。 比如,16个普通微处理器组成的集群系统可以达到亿次级浮点计算机能力,而且总的成本小于40万元。 不幸的是,建造一个集群并不是一件简单的事件。集群的组成部分必须根据要运行的主要应用进行调整,以使之运行在最佳状态。这此因素带来的结果就是,建造集群系统不是只有一个标准的方案,在本章中,我们就会看到许多种建造方案。 集群技术是计算机系统结构的前沿领域,笔者也仅是略有了解,希望本文能起到抛砖引玉之用。 1.2.并行技术 这是一个非常简单的建造四节点的小集群系统的例子,它是构建在Linux操作系统上,通过MPICH软件包实现的,希望这个小例子能让大家对集群系统的构建有一个最基本的了解。 2.使用MPICH构建一个四节点的集群系统 这是一个非常简单的建造四节点的小集群系统的例子,它是构建在Linux操作系统上,通过MPICH软件包实现的,希望这个小例子能让大家对集群系统的构建有一个最基本的了解。 2.1 所需设备 1).4台采用Pentium II处理器的PC机,每台配 置64M内存,2GB以上的硬盘,和EIDE接口的光盘驱动器。 2).5块100M快速以太网卡,如SMC 9332 EtherPower 10/100(其中四块卡用于连接集群中的结点,另外一块用于将集群中的其中的一个节点与其它网络连接。) 3).5根足够连接集群系统中每个节点的,使用5类非屏蔽双绞线制作的RJ45缆线 4).1个快速以太网(100BASE-Tx)的集线器或交换机 5).1张Linux安装盘 2.2 构建说明 对计算机硬件不熟的人,实施以下这些构建步骤会感到吃力。如果是这样,请找一些有经验的专业人士寻求帮助。 1. 准备好要使用的采用Pentium II处理器的PC机。确信所有的PC机都还没有接上电源,打开PC机的机箱,在准备与网络上的其它设备连接的PC机上安装上两块快速以太网卡,在其它的PC机上安装上一块快速以太网卡。当然别忘了要加上附加的内存。确定完成后盖上机箱,接上电源。 2. 使用4根RJ45线缆将四台PC机连到快速以太网的集线器或交换机上。使用剩下的1根RJ45线将额外的以太网卡(用于与其它网络相连的那块,这样机构就可以用上集群)连接到机构的局域网上(假定你的机构局域网也是快速以太网),然后打开电源。 3. 使用LINUX安装盘在每一台PC机上安装。请确信在LINUX系统中安装了C编译器和C的LIB库。当你配置TCP/IP时,建议你为四台PC分别指定为192.168.1.1、192.168.1.2、192.168.1.3、192.168.1.4。第一台PC为你的服务器节点(拥有两块网卡的那台)。在这个服务器节点上的那块与机构局域网相连的网卡,你应该为其指定一个与机构局域网吻合的IP地址。 4.当所有PC都装好Linux系统后,编辑每台机器的/etc/hosts文件,让其包含以下几行: 192.168.1.1 node1 server 192.168.1.2 node2 192.168.1.3 node3 192.168.1.4 node4 编辑每台机器的/etc/hosts.equiv文件,使其包含以下几行: node1 node2 node3 node4 $p# 以下的这些配置是为了让其能使用MPICH’s p4策略去执行分布式的并行处理应用。 1. 在服务器节点 ,建一个/mirror目录,并将其配置成为NFS服务器,并在/etc/exports文件中增加一行: /mirror node1(rw) node2(rw) node3(rw) node4(rw) 2. 在其他节点上,也建一个/mirror目录,关在/etc/fstab文件中增加一行: server:/mirror /mirror nfs rw,bg,soft 0 0 3. /mirror这个目录从服务器上输出,装载在各个客户端,以便在各个节点间进行软件任务的分发。 4. 在服务器节点上,安装MPICH。MPICH的文档可在 http://www.mcs.anl.gov/mpi/mpich/docs.html获得。 5.任何一个集群用户(你必须在每一个节点新建一个相同的用户),必须在/mirror目录下建一个属于它的子目录,如/mirror/username,用来存放MPI程序和共享数据文件。这种情况,用户仅仅需要在服务器节点上编译MPI程序,然后将编译后的程序拷贝到在/mirror目录下属于它的的子目录中,然后从他在/mirror目录下属于它的的子目录下使用p4 MPI策略运行MPI程序。 2.3 MPICH安装指南 1.如果你有gunzip,就d下载mpich.tar.gz,要不然就下载mpich.tar.Z。你可以到http://www.mcs.anl.gov/mpi/mpich/downloa下载,也可以使用匿名FTP到ftp.mcs.anl.gov的pub/mpi目录拿。(如果你觉得这个东西太大,你可以到pub/mpi/mpisplit中取分隔成块的几个小包,然后用cat命令将它们合并) 2.解压:gunzip ;c mpich.tar.gz tar xovf-(或zcat mpich.tar.Z tar xovf-) 3.进入mpich目录 4.执行:./configure为MPICH选择一套适合你的实际软硬件环境的参数组,如果你对这些默认选择的参数不满意,可以自己进行配置(具体参见MPICH的配置文档)。最好选择一个指定的目录来安装和配置MPICH,例如: ./configure -prefix=/usr/local/mpich-1.2.0 5.执行:make >& make.log 这会花一段较长的时间,不同的硬件环境花的时间也就不同,可能从10分钟到1个小时,甚至更多。 6.(可选)在工作站网络,或是一台单独的工作站,编辑mpich/util/machines/machines.xxx(xxx是MPICH对你机器体系结构取的名称,你能很容易的认出来)以反映你工作站的当地主机名。你完全可以跳过这一步。在集群中,这一步不需要。 7.(可选)编译、运行一个简单的测试程序: cd examples/basic make cpi ln ;s ../../bin/mpirun mpirun ./mpirun ;np 4 cpi 此时,你就在你的系统上运行了一个MPI程序。 8.(可选)构建MPICH其余的环境,为ch_p4策略使 用安全的服务会使得任何启动速度加快,你可以执行以下命令构建: make serv_p4 (serv_p4是一个较新的P4安全服务的版本,它包含在MPICH 1.2.0版中),nupshot程序是upshot程序的一个更快版本,但他需要tk 3.6版的源代码。如果你有这个包,你就用以下命令可以构建它: make nupshot 9.(可选)如果你想将MPICH安装到一个公用的地方让其它人使用它,你可以执行: make install 或 bin/mpiinstall 你可以使用-prefix选项指定MPICH安装目录。安装后将生成include、lib、bin、sbin、www和man目录以及一个小小的示例目录, (可选)到此你可以通告所有的用户如何编译、执行一个MPI程序。