集群
1、集群含义:
集群是一组协同工作的服务集合,用来提供比单一服务更稳定 、更高效、更具扩展性的服务平台。
2、集群组成:
在集群内部,有两个货两个以上服务器组建而成,每个服务器被称为一个集群节点,集群节点之间可以相互通信。
通信的方式有两种:
第一种:基于RS232线的心跳监控。
第二种:用一块单独的网卡来跑心跳。
3、集群功能:
1>高可用性与可扩展性
.高可用:在服务出现故障时,集群系统可以自动将服务从故障节点切换到另一个备用节点,从而提供不间断性服务,
保证了业务的持续运行。
.可扩展性:现有的集群服务实体不能满足需求时,可以向此集群中动态加入一个或多个服务节点,从而满足应用的需要,
增强集群的整体性能。
2>负载均衡与错误恢复
.负载均衡:集群系统最大的特点是可以灵活、有效地分担系统负载,通过集群自身定义的负载分担侧罗,将客户端的访问
分配到各个服务节点。还可以定义最小负载分配策略,当一个请求进来时,集群系统判断哪个服务节点比较清闲,
就将此请求分发到这个节点。
.错误恢复:当一个人任务在一个节点上还没有完成时,由于某种原因,执行失败,此时,另一个服务节点应该能接着完成此
任务,这就是集群提供的错误恢复功能,通过错误的重定向,保证了每个执行任务都能有效完成。
3>心跳检测与漂移IP
.心跳监测:是通过心跳线实现的,可以做心跳线的设备有RS 232串口线,也可以用独立的一块网卡来跑心跳,还可以是共享磁盘这列等。
心跳线的数量应该为集群节点数减1 (心跳线=集群数-1)。
如果通过网卡来做心跳的话,每个节点需要两块网卡:
其中一块作为私有网络直接连接到对方机器相应的网卡,用来检测对方心跳。
另一块连接到公共网络对外提供服务,同时心跳网卡和服务网卡的IP地址尽量不要在一个网段内。
心跳监控的效率直接影响故障切换时间的长短,集群系统正是通过心跳技术保持者节点间的内部有效通信。
.漂移IP地址:这个IP地址并不固定。
例如在两个节点双击热备中,正常状态下,这个漂移IP位于主节点上,当主节点出现故障后,漂移IP地址自从切换到
备用节点上。
为了保证服务的不间断性,在集群系统中,对外提供的服务IP一定要是这个漂移IP地址,虽然节点本身的IP也能对外提供
服务,但是此节点失效后,服务IP切换到了另一个节点,服务IP仍然是故障节点的IP地址,此时,服务就随之中断了。
一个集群必须拥有共享的数据存储,因为集群对外提供的服务时一致的,任何一个集群节点运行一个应用时,应用的数据都
集中存储在节点共享空间内,而每个节点的操作系统上仅运行应用的服务,同时存储应用程序文件。
4、构建集群所需的设备
至少需要两台服务器,同时还需要有串口线、集群软件和共享存储设备(例如磁盘阵列)等。
5、集群的分类
1>高可用集群
.高可用概念(High Availability Cluster,简称HA Cluster),是最大限度地可以使用。
此类集群实现的功能是保障用户的应用程序持久、不间断地提供服务。当应用程序出现故障,或者系统硬件、网络出现故障时,
应用可以自动、快速地从一个节点切换到另一个节点,从而保证应用持续、不间断地对外提供服务。
.常见的HA Cluster
例如:双机热备、双机互备和多机互备等偶属于高可用集群的范畴。这累集群一般都有两个或两个以上节点组成。
HOST A ----------------RS-232心跳监测--------------- HOST B
----------------TCP/IP网络-------------------
Action Server Standby Server
双机热备结构
双机热备:即active/standby(备用)方式。
它使用两台服务器,一台作为主服务器(active),另一台作为备机(standby),安装和主服务器一样的应用程序,
但是并不启动服务,处于待机状。 主机和备机之间通过心跳技术相互监控,监控的资源可以是网络、操作系统,也可以是
服务,用户可以根据自己的需要,选择需要监控的资源。当备机监控到主机的某个资源出现故障时,根据预先设定好的策略
首先将IP切换过来,然后将应用程序服务也接管过来,接着就由备机对外提供服务。切换的过程的时间非常短,用户根本感觉
不到程序出了问题,而且还进行了切换,从而保障了应用持久、不间断地服务。
优点:节省了设备资源,两个应用的双机热备至少需要4台服务器,而双机互备仅需两台服务器,即可完成高可用集群功能。
缺点:在某个节点故障切换后,另一个节点上就同时运行了两个应用的服务,有可能出现负载过大的情况。
.高可用集群软件
有:Heartbeat HA、Red Hat提供的RHCH、商业软件ROSE、keepalived等。
2>负载均衡集群
负载均衡系统的英文全称(Load Balance Cluster,简称LB Cluster)
负载均衡集群也是由两台或者两台以上的服务器组成,分为两个部分:
.前端负载调度:负责把客户端的请求按照不同的策略分配给后端服务节点
.后端节点服务:真正提供应用程序服务的部分。处理活动状态。对外提供服务,分摊系统的工作负载。
优点:负载均衡集群可以把一个高负荷的应用分散到多个节点来共同完成,适用于业务繁忙、大负荷访问的应用系统。
缺点:当一个节点出现故障时,前端调度系统并不知道此节点已经不能提供服务,仍然会把客户端的请求调度到故障节点上来。
这样访问就会失败。
.节点监控系统:位于前端负载调度机上,负责监控下面的服务节点,当某个节点出现故障后,节点监控系统会自动将故障节点
从集群中剔除,当此节点恢复正常后,节点监控系统又会自动将其加入集群中,而这一切,对用户来说是完全透明的。
-----------www服务器