- 浏览: 2542529 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (676)
- linux运维 (157)
- php (65)
- mysql (78)
- nginx (27)
- apche (18)
- framework (6)
- windows (9)
- IDE工具 (23)
- struts2 (7)
- java (13)
- 移动互联网 (14)
- memcache redis (23)
- shell基础/命令/语法 (37)
- shell (50)
- puppet (4)
- C (11)
- python (9)
- 产品经理 (27)
- Sphinx (4)
- svn (12)
- 设计构建 (12)
- 项目管理 (44)
- SEO (1)
- 网站架构 (26)
- 审时度势 (42)
- 网络 (14)
- 激发事业[书&视频] (81)
- 其它 (12)
- 摄影 (8)
- android (21)
最新评论
-
zhongmin2012:
原文的书在哪里
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
renzhengzhi:
你好,请问个问题,从master同步数据到slave的时候,s ...
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
ibc789:
你好,看了你的文章,我想请教个问题, 我在用 redis的时候 ...
redis 的两种持久化方式及原理 -
iijjll:
写得非常好
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器 -
iijjll:
写得非常好
数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器
http://selboo.com.cn/post/202/
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程序.
2.4 费用统计
这个小的集群方案总的费用大致如下:
设备费用:
4台 带EIDE CD-ROM 的机器: 24000元
5块快速以太网卡: 800元
1个快速以太网的集线机:2000元
5根双绞线:50元
软件费用:
LINUX安装光盘:50元
MPICH:0元
合计:26900元.
这样一个集群系统可以用于一些大量的科学计算,信息处理,而且其性价比实在是太好了,仅需不到三万元.
发表评论
-
haproxy 安装配置和负载实例
2015-03-27 11:49 11535一、环境说明实验环境 OS CentOS5.4 192.1 ... -
使用DNSPOD API实现域名动态解析
2015-03-17 11:13 13325http://www.williamsang.com/arc ... -
开发人员意识感悟
2014-10-30 16:02 01.将复杂的东西整理成 ... -
架构分布施工图
2012-04-17 14:37 1988架构分布施工图 ... -
juniper SSG550 防火墙
2011-11-11 13:47 1761VPN支持 基本 ... -
F5 BIG-IP
2011-11-11 13:43 3552http://wenku.baidu.com/vi ... -
[转]架构师必须补充的能力
2011-07-19 18:12 1631http://xiammy.blog.51cto.co ... -
PHP搭建百万级网站架构技术揭秘:Poppen.de德国社交
2011-06-16 11:25 2019在了解过世界最大的P ... -
[转]【拯救赵明】安全方案
2011-04-13 17:03 1716http://liuyu.blog.51cto.com/183 ... -
19个心得 明明白白说Linux下的负载均衡
2011-03-10 19:49 2397一、目前网站架构一般分成负载均衡层、web层和数据库层,我其实 ... -
大型网站运维探讨和心得
2011-03-10 19:33 2694看到一篇不错的心得 ... -
百万级PHP网站架构工具箱
2011-03-01 18:21 1767在了解过世界最大的PHP站点,Facebook的后台技术后,今 ... -
非常推荐:搭建一个大型网站架构的实验环境(FreeBsd+Nginx+Squid+Apache)
2009-09-10 15:23 2144http://blog.chinaunix.net/u1/55 ... -
网站架构收集
2009-09-10 14:13 2161来自sudone.com 服务器系统架构分析日志 ... -
网站架构--来自BAIDU百科
2009-08-15 20:55 1768网站架构 一:硬架构 ... -
推荐:大型网站架构设计系列--某人的总结
2009-08-15 20:45 3140大型网站架构设计系列-我的总结如下: 1、 数据结构和产品架 ... -
门户网站运维abc
2009-08-11 15:45 2352http://bbs3.chinaunix.net/threa ... -
【转自phpchina】支付宝架构师对话腾讯研发总监
2009-07-29 17:35 2137王速瑜,腾讯 R&D研发总监,从事产品研发和管理工作, ... -
【转自phpchina】内网CTO黄晶谈架构演变
2009-07-29 17:34 1416这是一次公司内部的交流会,主题是校内的发展史和构架讲解,主讲人 ... -
web架构设计经验分享
2009-07-14 11:08 1732朱燚的技术博客,转 ...
相关推荐
这些单个的计算机系统就是集群的节点(Node),从用户的角度来看,集群是的一个整体系统而非多台计算机。在应用中,用户从来不会觉察到集群系统底层的节点;从管理员角度来看,集群是由若干计算机节点组成的系统,它...
总之,构建一个工作集群是一个涉及多个技术层面的过程,它不仅需要深入的理论知识,还需要在实践中不断探索和积累经验。从选择合适的硬件平台开始,到配置操作系统和网络环境,再到安装和优化集群管理软件和并行计算...
Linux集群系统是一种通过将多台计算机联结在一起,形成一个单一的、高可用性和高性能的计算平台。它具有成本效益、可扩展性、利用现有硬件资源和高可靠性的特点,因此在科研、数据分析、天气预报、大规模科学计算等...
MPICH是Message Passing Interface (MPI)的一个开源实现,它是一个高度可移植的并行计算库,用于构建分布式内存的多处理机系统上的大规模并行应用。MPICH是基于标准的MPI规范,允许开发者在各种硬件和操作系统平台上...
使用MPICH构建一个四节点的集群系统可以作为一个教学和入门的示例,它为初学者提供了一个实际动手操作的机会,理解集群的概念及其工作原理。 构建这样一个集群系统包括以下步骤: 1. 准备四台配置有Pentium II...
【标题】"ubuntu下MPICH2 集群的搭建"是关于在Ubuntu操作系统中构建MPI(Message Passing Interface)集群的教程,特别是使用MPICH2实现。MPICH2是一个开源的MPI实现,允许多台计算机通过网络进行并行计算,是分布式...
在本文中,我们将使用 MPICH 软件包在 LINUX 操作系统上构建一个四节点的小集群系统。我们需要准备四台采用 Pentium II 处理器的 PC 机,每台配置 64M 内存,2GB 以上的硬盘,和 EIDE 接口的光盘驱动器。此外,还...
构建一个简单的四节点集群系统 下面我们将通过一个具体实例介绍如何使用Linux操作系统和MPICH软件包来构建一个简单的四节点服务器集群。 ##### 2.1 所需设备 1. **4台Pentium II处理器的PC机**:每台配备64MB...
MPICH是MPI的一个高效、可移植的实现,支持多种计算和通信平台,如商品级集群、高速网络系统以及高端计算系统。其目标是提供一个支持不同平台的高效MPI实现,并作为其他衍生实现的基础框架,以促进MPI相关研究的发展...
构建一个简单的Linux集群需要以下基础步骤: 1. **准备硬件**:至少需要两台Linux机器或使用VMware虚拟机来模拟。确保每台机器之间可以通过机器名称互相ping通。 2. **安装编译器**:安装GNU C编译器和GNU FORTRAN...
构建一个基于Linux的四节点服务器集群,首先需要四台配置相当的PC,每台配备至少64MB内存、2GB硬盘和以太网卡。然后,将这些节点通过快速以太网卡连接到一个集线器或交换机上,确保每台机器都有唯一的IP地址,并正确...
MPICH是MPI的一个高效、可移植的实现,支持多种计算和通信平台,包括商品级集群、高速网络系统以及高端计算系统。它的目标是提供高效的MPI支持,并作为其他衍生实现的研究基础。Ubuntu Linux作为一款广泛使用的开源...
Linux集群体系结构是一种高效、可扩展且高可用的计算架构,它通过将多个独立的Linux服务器连接在一起,形成一个统一的资源池,从而提供比单个服务器更高的性能和可靠性。这种技术广泛应用于大规模数据处理、高并发...
"mpich2-1.2.tar.gz" 是一个包含MPICH2版本1.2的源代码压缩包,用于在不同的系统上构建和安装MPICH2环境。在分布式计算和大规模并行处理中,MPI是标准通信库,它提供了进程间通信的接口,使得程序员可以编写跨多个...
例如,MPICH(Message Passing Interface for MPI)是一个广泛使用的并行计算库,它允许在集群环境中实现进程间的通信和协作。 在搭建Linux服务器集群时,通常需要考虑以下几个关键步骤: 1. **硬件准备**:选择...
在Linux环境下构建基于MPICH的工作站集群,可以充分利用多台工作站的计算资源,形成一个强大的并行计算环境,适用于高性能计算任务,如科学计算、数据分析等。 首先,构建这样的集群需要以下步骤: 1. **硬件准备**...
为解决这个问题,服务器集群技术应运而生,它通过将多台独立的计算机系统连接起来,形成一个松散耦合的多处理器系统,共同分担工作负载,提高整体性能和服务的可用性。 服务器集群的核心概念是并行计算,即通过多台...
从提供的文件内容来看,该集群架构方案中涉及到了MPICH,这是一个实现了MPI标准的消息传递接口的软件库。MPI(Message Passing Interface)是一个用于开发并行计算应用的通信协议,它允许在不同处理器的计算机上运行...