服务器集群怎么实现?
硬件配置范例:
网络服务器 两台
服务器操作系统硬盘 两块
服务器数据存贮硬盘 视用户需要确定
服务器镜像卡(部分软件可使用标准网卡) 两块
网络服务网卡 两块三、双机与磁盘阵列柜
集群的软件配置
基于NT平台的集群软件
Microsoft的MSCS,也有许多第三方的专业软件公司开发的集群软件,如豪威的DATAWARE,VIN CA公司的STANDBY SERVER,NSI公司的DOUBLE-TAKE
MS WolfPack的特点
MS WolfPack是MS Cluster server的别称,是 微软针对Cluster技术研制开发的双机软件。它集成在NT SERVER上,支持由二台机器组成的双机系统,提供一种高可用且易管理的应用环境。
主要特点:
自动检测和修复服务器或应用程序的错误
可实现对服务器中应用程序的切换
可通过TCP/IP连接各种客户端,如MS-DOS、WINDOWS 3X/9X/NT,Apple Macintosh、UNIX等
生产主机无需人工干涉即可自动恢复数据并接管任务
易管理性:
可自动审核服务器和应用程序的工作状态
可建立高可用性的应用程序、文件共享、打印请求等
可灵活设置应用程序和数据的恢复策略
简单操作即可进行应用程序的离线,重新再线,服务器间的迁移。
目前,WINDOWS 2000 Advanced Server与WINDOWS 2000 DataCenter Server都集成有更先进集群技术。
其它的网络操作系统平台上也有许多集群软件,比如:
基于novell平台的集群软件有Novell HA Server、Novell SFT III
基于sco UNIX平台的集群软件有Sentinel集群软件
基于Linux平台的集群软件有TurboCluster
我帮你搜到的,不知道有用没,嘿嘿
集群,英文名称为Cluster,通俗地说,集群是这样一种技术:它将多个系统连接到一起,使多台服务器能够像一台机器那样工作或者看起来好像一台机器。采用集群系统通常是为了提高系统的稳定性和网络中心的数据处理能力及服务能力。
一、linux集群
Linux集群系统包括集群节点和集群管理器两部分。集群节点有时简称为节点、服务器或服务器节点,是提供处理资源的系统,它进行集群的实际工作。一般来讲,它必须进行配置才能成为集群的一部分,也必须运行集群的应用软件。应用软件可以是专用于集群的软件,也可以是设计用于分布式系统的标准软件。Linux集群管理器则是将节点捆绑在一起,以构成单一系统外观的逻辑结构,它用于将任务分解到所有的节点。
集群因多种不同的原因而有着不同的类型,建立Linux集群的最直接原因是共享CPU资源,在多个机器之间平衡负载,获得更多的系统可靠性,或在主机失败时提供后备系统(切换)。
通过对相关软件的分析,实现集群负载的功能是通过流量管理实现的,具体有以下几种实现方法:直接路由(Direct Forwarding)、网络地址转换(NAT)和隧道技术(Tunneling)。
直接路由(Direct Forwarding)是当参与集群的计算机和作为控制管理的计算机在同一个网段时可以使用此法。控制管理的计算机接收到请求包时,直接送到参与集群的节点。它的优点是返回给客户的流量不经过控制主机,速度快、开销少。
可能大家比较熟悉网络地址转换(NAT)这种方法。地址转换器有能被外界访问到的合法IP地址,它修改来自专有网络的流出包的地址,外界看起来包是来自地址转换器本身。当外界包送到转换器时,它能判断出应该将包送到内部网的哪个节点。它的优点是节省IP地址,能对内部进行伪装;缺点是效率低,因为返回给请求方的流量要经过转换器。
隧道技术(Tunneling)这种方式是Linux集群的节点不在同一个网段时采用的转发机制,是将IP包封装在其它网络流量中。从安全角度考虑,应该使用隧道技术中的***,也可使用租用专线。
Linux集群所能提供的服务是基于TCP/IP的Web服务、Mail服务、News服务、DNS服务和Proxy服务器等。
二、oracle集群
Oracle集群,最早称作OPS(Oracle Parallel Server)出现在Oracle 7版本中,从Oracle 9i开始正式改称为Oracle RAC,RAC即Real Application Clusters的简写,译为“真正应用集群”;RAC是Oracle新版数据库中采用的一项新技术,也是Oracle数据库支持网格计算环境的核心技术。
在Oracle RAC环境下,Oracle集成提供了集群软件和存储管理软件,为用户降低了应用成本。当应用规模需要扩充时,用户可以按需扩展系统,以保证系统的性能。
数据库双机可以有两种不同的方式:双机热备份、双机集群。
双机热备份方式的集群完全通过操作系统的cluster软件来实现,在同一个时刻,只有一台机器对数据库作操作,当这台机器发生故障以后,由操作系统cluster将所有资源切换到两外一个节点,防止单节点数据库故障。
双机集群方式(RAC),在10g以后,通过ORACLE自身提供的CRS来实现集群的功能。在同一个时刻,所有的机器都对数据库作操作,当某台机器发生故障后,其他机器接管该机器的工作。这种方式不但能够防止单节点数据库故障,还能够实现负载均衡。因为两个机器对同一个数据库操作,因此数据库文件一般无法使用传统的文件系统方式存储。
申请云平台服务器的方法:
1进入产品页面
首先,我们选择一个云服务商,这里以阿里云为例。在阿里云官网,申请注册会员。
其次,申请好会员后,我们点击“云服务器”进入到产品页面。在这里,我们能看到“弹性云自定义配置”和“弹性云推荐配置”。
2申请云服务器
在产品页面,使用弹性云自定义配置功能,选择各项云服务器配置参数,需要确定:vCPU、内存、数据盘、系统盘、带宽、操作系统、机房线路、售后服务、申请年限等。
每项参数选定后,均有对应价格出现,我们可以根据需求以及预算来选择。
所有参数均选定后,我们点击“立即购买”,支付相应费用,即可完成申请。
云服务器选择
云服务器又叫云计算服务器或云主机。云服务器使用了云计算技术,云服务器整合了数据中心三大核心要素:计算、网络与存储。云服务器基于集群服务器技术,虚拟出多个类似独立服务器的部分,云服务器具有很高的安全稳定性。
云服务器是新时代产物,大多数中小企业对云服务器了解并不深刻,在选择云服务器过程中存在很多问题,可能会导致自己的业务在运行过程中出现故障。
Cluster技术发展多年了,但其实并没有一个非常准确的定义和分类,不同的人有不同的理解。
其实,叫什么无所谓,只要能够对用户有益就可以了 :-)
就个人理解而言,cluster有以下几种,当然前面说过,不同的人有不同的理解,大家可以充分讨论。我的这些分类更偏重于工程而不是技术性。
1 HA集群
实现高可用性,但对单个应用性能没有提高,市场上大部分产品都是属于这类,技术上也较简单。
2 IP负载均衡集群
利用IP技术实现对通用IP应用的支持。这种技术并不是很新,最早是在硬件上面采用的,Linux出现后才有了很多纯软件的模式,这也是open source带来的好处吧
3并行计算集群
包括了一些象PVM,beowulf这样的信息传递机制和API库,也有任务调度产品,当然技术上最难的是并行编译/并行系统等更智能化的产品
4应用负载均衡集群
虽然cluster的最高目的是实现真正的与应用程序无关的动态负载均衡,但由于技术上的限制,现在都只能在特殊的应用中实现,需要修改应用程序,所以并没有通用产品,大多是厂商有自己的并行版本。例如oracle paraller server
以上基本是按照工程或者说产品的角度划分的,和技术上划分应该有一定区别。
下面是一篇很早以前写的东西,当时是为了媒体宣传写的,有一些商业味道在里面,有些地方技术上也不完全正确。现在给大家附上是想交换一下观点。并不是宣传Turbolinux公司的产品(本人是Turbolinux员工),确实是实在懒得改了,虽然这种商业性文章在公共社区里发表犯了大忌。只是供大家参考,关于Turbolinux产品优劣不参与讨论。请大家理解。
一直是不参与linux社区讨论的,这次是因为对cluster接触了比较长的时间,已经有了很大的兴趣,所以注册了来灌水。
随着Internet/Intranet应用的日益广泛,计算机系统的重要性也日益上升。低故障率和高性能向来是人们追求的主要目标,但对于单台服务器来讲,这两个问题是无法解决的。
l 可用性——很多服务器都宣称已经达到了99%的可用性。这个数字意味着什么呢?也就是说每年会有1%的非预计停机时间,让我们来具体算一下。 365(天 / 年)× 24(小时 / 天) × 1% = 876 (小时 / 年)。这每年876小时的停机时间对于要求24×7连续服务的企业来说简直就是灾难。
l 高性能——假设一般的桌面机每秒能够处理几千个请求,而IA服务器每秒能够处理几万个请求。那么对于需要每秒处理几十万个请求的企业来说,如果不采用集群技术,唯一的选择就是购买更加高档的中、小型计算机。如果这样做,虽然系统性能只提高了十倍,但其购买价格和维护费用就将会上升几十倍甚至更多。
集群技术的出现和发展则很好的解决了这两个问题。
一.集群
集群就是由一些互相连接在一起的计算机构成的一个并行或分布式系统,从外部来看,它们仅仅是一个系统,对外提供统一的服务。
集群技术本身有很多种分类,市场上的产品也很多,都没有很标准的定义。一般可以分为以下几种:
1 基于冗余的集群
严格来讲,这种冗余系统并不能叫做真正的集群,因为它只能够提高系统的可用性,却无法提高系统的整体性能。
有以下几种类型。
A 容错机
特点是在一台机器内部对其所有的硬件部件都进行冗余(包括硬盘、控制卡、总线、电源等等)。
能够基本做到与软件系统无关,而且可实现无缝切换,但价格极其昂贵。
典型市场产品:Compaq NonStop(Tandem),Micron(NetFrame),Straus
B 基于系统镜像的双机系统
特点是利用双机,将系统的数据和运行状态(包括内存中的数据)进行镜像,从而实现热备份的目的。
能够做到无缝切换,但因为采用软件控制,占用系统资源较大,而且由于两台机器需要完全一样的配置,所以性能价格比太低。
典型市场产品:Novell SFT III,Marathon Endurance 4000 for NT
C 基于系统切换的双机系统
特点是利用双机,将系统的数据(仅指硬盘数据)进行镜像,在主机失效的情况下从机将进行系统一级的切换。
性能价格比适中,但无法实现无缝切换。
典型市场产品:Legato(Vinca) StandbyServer for NetWare,Savoir(WesternMicro)SavWareHA(Sentinel),Compaq StandbyServer
2 基于应用程序切换的集群
特点是当集群中的某个节点故障时,其它节点可以进行应用程序一级的切换,所以所有节点在正常状态下都可以对外提供自己的服务,也被成为静态的负载均衡方式。
性能价格比高,但也无法实现无缝切换,而且对单个应用程序本身无法做到负载均衡。
典型市场产品:Legato(Vinca) Co-StandbyServer for NT,Novell HA Server,Microsoft Cluster Server,DEC Cluster for NT,Legato Octopus,Legato FullTime,NeoHigh Rose HA,SUN Clusters, Veritas Cluster Server (FirstWatch),CA SurvivIT,1776
3 基于并行计算的集群
主要应用于科学计算、大任务量的计算等环境。有并行编译、进程通讯、任务分发等多种实现方法。
典型市场产品:TurboLinux enFuzion,Beowulf,Supercomputer Architectures,Platform
4 基于动态负载均衡的集群
所有节点对外提供相同的服务,这样可以实现对单个应用程序的负载均衡,而且同时提供了高可用性。
性能价格比极高,但目前无法支持数据库。
典型市场产品:TurboCluster Server,Linux Virtual Server,F5 BigIP,Microsoft Windows NT Load Balance Service
二.负载均衡
负载均衡是提高系统性能的一种前沿技术。还是沿用前面的例子,一台IA服务器的处理能力是每秒几万个,显然无法在一秒钟内处理几十万个请求,但如果我们能够有10台这样的服务器组成一个系统,如果有办法将所有的请求平均分配到所有的服务器,那么这个系统就拥有了每秒处理几十万个请求的能力。这就是负载均衡的基本思想。
实际上,目前市场上有多家厂商的负载均衡产品。由于其应用的主要技术的不同,也就有着不同的特点和不同的性能。
1轮询DNS
轮询DNS方案可以说是技术上最简单也最直观的一种方案。当然,这种方案只能够实现负载均衡的功能,却无法实现对高可用性的保证。
它的原理是在DNS服务器中设定对同一个Internet主机名的多个IP地址的映射。这样,在DNS收到查询主机名的请求时,会循环的将所有对应的IP地址逐个返回。这样,就能够将不同的客户端连接定位到不同的IP主机上,也就能够实现比较简单的负载均衡功能。但是,这种方案有两个比较致命的缺点:
l 只能够实现对基于Internet主机名请求的负载均衡,如果是直接基于IP地址的请求则无能为力。
l 在集群内有节点发生故障的情况下,DNS服务器仍会将这个节点的IP地址返回给查询方,也就仍会不断的有客户请求试图与已故障的节电建立连接。这种情况下,即使你手工修改DNS服务器的对应设置,将故障的IP地址删除,由于Internet上所有的DNS服务器都有缓存机制,仍会有成千上万的客户端连接不到集群,除非等到所有的DNS缓存都超时。
2硬件解决方案
有些厂商提供对负载均衡的硬件解决方案,制造出带有NAT(网络地址转换)功能的高档路由器或交换机来实现负载均衡功能。NAT本身的原理就是实现多个私有IP地址对单个公共IP地址的转换。代表产品是Cicso公司和Alteon公司的某些高档硬件交换机系列。这种方案有如下缺点:
l 由于采用了特殊的硬件,使得整个系统中存在非工业标准部件,极大的影响系统的扩充和维护、升级工作。
l 价格极其昂贵,和软件的解决方案根本是数量级上的差别。
l 一般只能实现对节点系统一级的状态检查,无法细化到服务一级的检查。
l 由于采用NAT机制,集群管理节点本身要完成的工作量很大,很容易成为整个系统的瓶颈。
l 此特殊硬件本身就是单一故障点。
l 实现异地节点的集群非常困难。
3协商式处理(并行过滤)
这种方案的原理是客户请求会同时被所有的节点所接收,然后所有节点按照一定的规则协商决定由哪个节点处理这个请求。此种方案中比较显著的特点就是整个集群中没有显著的管理节点,所有决定由全体工作节点共同协商作出。代表产品是Microsoft公司的Microsoft Load Balancing Service这种方案的特点是:
l 由于各节点间要进行的通讯量太大,加重了网络的负担,一般需要增加节点通讯的专用网络,也就加大了安装和维护的难度和费用。
l 由于每个节点都要接收所有的客户请求并进行分析,极大的加大了网络驱动层的负担,也就减低了节点本身的工作效率,同时也时网络驱动层很容易成为节点系统的瓶颈。
l 由于要更改网络驱动层的程序,所以并不是一个通用的方案,只能够实现对特殊平台的支持。
l 在小量节点的情况下协商的效率还可以接受,一旦节点数量增加,通讯和协商将变得异常复杂和低效,整个系统的性能会有非线性的大幅度下降。所以此类方案,一般在理论上也只允许最多十几个的节点。
l 无法实现异地节点的集群。
l 由于集群内没有统一的管理者,所以可能出现混乱的异常现象。
4流量分发
流量分发的原理是所有的用户请求首先到达集群的管理节点,管理节点可以根据所有服务节点的处理能力和现状来决定将这个请求分发给某个服务节点。当某个服务节点由于硬件或软件原因故障时,管理节点能够自动检测到并停止向这个服务节点分发流量。这样,既通过将流量分担而增加了整个系统的性能和处理能力,又可以很好的提高系统的可用性。
通过将管理节点本身做一个子集群可以消除由于管理节点自身的单一性带来的单一故障点。有些传统技术人员认为,因为所有的客户流量都将通过管理节点,所以管理节点很容易成为整个系统的瓶颈。但TurboCluster Server通过先进的直接路由或IP隧道转发机制巧妙的解决了问题。使得所有对客户响应的流量都由服务节点直接返回给客户端,而并不需要再次通过管理节点。众所周知,对于服务提供商而言,进入的流量要远远小于流出的流量,所以管理节点本身将不再是瓶颈。
流量分发的具体实现方法有直接路由、IP隧道和网络地址转换三种方法。TurboCluster Server目前支持效率最高的前两种。由于这种先进的结构和技术,使得TurboCluster Server集群内的服务节点数并没有上限,而且对大量节点的协同工作的效率也能够非常好的保证。
三.市场前景
集群技术已经发展了多年,其中的分支也非常多。目前集群技术正逐渐走向分层结构,以后也肯定会有专门用户前端、后端的集群产品出现。
随着计算机应用地位的逐渐提升,系统安全和重要性的日益增加,集群技术必将会有着极为广阔的应用前景。
0条评论