红帽子RHCS套件安装与配置(一)

RHCS提供的三个核心功能 
  
高可用集群是RHCS的核心功能。当应用程序出现故障,或者系统硬件、网络出现故障时,应用能够经过RHCS提供的高可用性服务管理组件自动、快速从一个节点切换到另外一个节点,节点故障转移功能对客户端来讲是透明的,从而保证应用持续、不间断的对外提供服务,这就是RHCS高可用集群实现的功能。 
  
RHCS经过LVS(LinuxVirtualServer)来提供负载均衡集群,而LVS是一个开源的、功能强大的基于IP的负载均衡技术,LVS由负载调度器和服务访问节点组成,经过LVS的负载调度功能,能够将客户端请求平均的分配到各个服务节点,同时,还能够定义多种负载分配策略,当一个请求进来时,集群系统根据调度算法来判断应该将请求分配到哪一个服务节点,而后,由分配到的节点响应客户端请求,同时,LVS还提供了服务节点故障转移功能,也就是当某个服务节点不能提供服务时,LVS会自动屏蔽这个故障节点,接着将失败节点从集群中剔除,同时将新来此节点的请求平滑的转移到其它正常节点上来;而当此故障节点恢复正常后,LVS又会自动将此节点加入到集群中去。而这一系列切换动做,对用户来讲,都是透明的,经过故障转移功能,保证了服务的不间断、稳定运行。 
  
RHCS经过GFS文件系统来提供存储集群功能,GFS是GlobalFileSystem的缩写,它容许多个服务同时去读写一个单一的共享文件系统,存储集群经过将共享数据放到一个共享文件系统中从而消除了在应用程序间同步数据的麻烦,GFS是一个分布式文件系统,它经过锁管理机制,来协调和管理多个服务节点对同一个文件系统的读写操做。 如今用的最多的是gfs2版本,GFS文件系统必须运行在集群上。
   
RHCS集群的组成 
  RHCS是一个集群工具的集合,主要有下面几大部分组成: 
  1.集群构架管理器 
  
这是RHCS集群的一个基础套件,提供一个集群的基本功能,使各个节点组成集群在一块儿工做,具体包含分布式集群管理器(CMAN)、成员关系管理、锁管理(DLM)、配置文件管理(CCS)、栅设备(FENCE)。 
   2.高可用服务管理器 
  
提供节点服务监控和服务故障转移功能,当一个节点服务出现故障时,将服务转移到另外一个健康节点。 
   3.集群配置管理工具 
  
RHCS最新版本经过LUCI来配置和管理RHCS集群,LUCI是一个基于web的集群配置方式,经过luci能够轻松的搭建一个功能强大的集群系统。 节点主机可使用ricci来和luci管理端进行通讯。
  4.LinuxVirtualServer 
  
LVS是一个开源的负载均衡软件,利用LVS能够将客户端的请求根据指定的负载策略和算法合理的分配到各个服务节点,实现动态、智能的负载分担。 
  RHCS除了上面的几个核心构成,还能够经过下面一些组件来补充RHCS集群功能。 
  5.RedHatGFS(GlobalFileSystem) 
  
GFS是Redhat公司开发的一款集群文件系统,目前的最新版本是GFS2,GFS文件系统容许多个服务同时读写一个磁盘分区,经过GFS能够实现数据的集中管理,免去了数据同步和拷贝的麻烦,但GFS并不能孤立的存在,安装GFS须要RHCS的底层组件支持。 
  6.ClusterLogicalVolumeManager 
  
Cluster逻辑卷管理,即CLVM,是LVM的扩展,这种扩展容许cluster中的机器使用LVM来管理共享存储。 
  7.iSCSI 
  
iSCSI是一种在Internet协议上,特别是以太网上进行数据块传输的标准,它是一种基于IPStorage理论的新型存储技术,RHCS能够经过ISCSI技术来导出和分配共享存储的使用。 
   
mysql

RHCS集群结构web

图1是典型的RHCS集群拓扑结构:整个拓扑结构分为三个层面算法

最上层是LVS负载均衡层,中间一层是RealServer层,就是服务节点部分,最后一层是共享存储层,主要用于给GFS文件系统提供共享存储空间。sql

RHCS集群运行原理及功能介绍apache

一、分布式集群管理器(CMAN) 
  ClusterManager,简称CMAN,是一个分布式集群管理工具,它运行在集群的各个节点上,为RHCS提供集群管理任务。 
  CMAN用于管理集群成员、消息和通知。它经过监控每一个节点的运行状态来了解节点成员之间的关系,当集群中某个节点出现故障,节点成员关系将发生改变,CMAN及时将这种改变通知底层,进而作出相应的调整。
服务器

二、锁管理(DLM) 
  
DistributedLockManager,简称DLM,表示一个分布式锁管理器,它是RHCS的一个底层基础构件,同时也为集群提供了一个公用的锁运行机制,在RHCS集群系统中,DLM运行在集群的每一个节点上,GFS经过锁管理器的锁机制来同步访问文件系统元数据。CLVM经过锁管理器来同步更新数据到LVM卷和卷组。 
  
DLM不须要设定锁管理服务器,它采用对等的锁管理方式,大大的提升了处理性能。同时,DLM避免了当单个节点失败须要总体恢复的性能瓶颈,另外,DLM的请求都是本地的,不须要网络请求,于是请求会当即生效。最后,DLM经过分层机制,能够实现多个锁空间的并行锁模式。 
  三、配置文件管理(CCS) 
  
ClusterConfigurationSystem,简称CCS,主要用于集群配置文件管理和配置文件在节点之间的同步。有时候,luci管理界面可能因为网络等方面的以素并非那么畅快,CCS就显得很必要了。CCS运行在集群的每一个节点上,监控每一个集群节点上的单一配置文件/etc/cluster/cluster.conf的状态,当这个文件发生任何变化时,都将此变化更新到集群中的每一个节点,时刻保持每一个节点的配置文件同步。例如,管理员在节点A上更新了集群配置文件,CCS发现A节点的配置文件发生变化后,立刻将此变化传播到其它节点上去。 
  rhcs的配置文件是cluster.conf,它是一个xml文件,具体包含集群名称、集群节点信息、集群资源和服务信息、fence设备等,这个会在后面讲述。
网络

        四、栅设备(FENCE) 
  
FENCE设备是RHCS集群中必不可少的一个组成部分,经过FENCE设备能够避免因出现不可预知的状况而形成的“脑裂”现象,FENCE设备的出现,就是为了解决相似这些问题,Fence设备主要就是经过服务器或存储自己的硬件管理接口,或者外部电源管理设备,来对服务器或存储直接发出硬件管理指令,将服务器重启或关机,或者与网络断开链接。 
  FENCE的工做原理是:当意外缘由致使主机异常或者宕机时,备机会首先调用FENCE设备,而后经过FENCE设备将异常主机重启或者从网络隔离,当FENCE操做成功执行后,返回信息给备机,备机在接到FENCE成功的信息后,开始接管主机的服务和资源。这样经过FENCE设备,将异常节点占据的资源进行了释放,保证了资源和服务始终运行在一个节点上。 

  
RHCS的FENCE设备能够分为两种:内部FENCE和外部FENCE,经常使用的内部FENCE有IBMRSAII卡,HP的iLO卡,还有IPMI的设备等,外部fence设备有UPS、SANSWITCH、NETWORKSWITCH等 
  五、高可用服务管理器 
  高可用性服务管理主要用来监督、启动和中止集群的应用、服务和资源。它提供了一种对集群服务的管理能力,当一个节点的服务失败时,高可用性集群服务管理进程能够将服务从这个失败节点转移到其它健康节点上来,而且这种服务转移能力是自动、透明的。 
  RHCS经过rgmanager来管理集群服务,rgmanager运行在每一个集群节点上,在服务器上对应的进程为clurgmgrd。 

  在一个RHCS集群中,高可用性服务包含集群服务和集群资源两个方面,集群服务其实就是应用服务,例如apache、mysql等,集群资源有不少种,例如一个IP地址、一个运行脚本、ext3/GFS文件系统等。 
   
  在RHCS集群中,高可用性服务是和一个失败转移域结合在一块儿的
,所谓失败转移域是一个运行特定服务的集群节点的集合。在失败转移域中,能够给每一个节点设置相应的优先级,经过优先级的高低来决定节点失败时服务转移的前后顺序,若是没有给节点指定优先级,那么集群高可用服务将在任意节点间转移。所以,经过建立失败转移域不但能够设定服务在节点间转移的顺序,并且能够限制某个服务仅在失败转移域指定的节点内进行切换。 
   
  六、集群配置管理工具 
  
Conga是一种新的基于网络的集群配置工具,Conga是经过web方式来配置和管理集群节点的。Conga有两部分组成,分别是luci和ricci,luci安装在一台独立的计算机上,用于配置和管理集群,ricci安装在每一个集群节点上,Luci经过ricci和集群中的每一个节点进行通讯。 
   
  RHCS也提供了一些功能强大的集群命令行管理工具,常用的有clustat、cman_tool、ccs_tool、fence_tool、clusvcadm等,这些命令的用法将在下面讲述。 
   
  七、RedhatGFS 
  
GFS是RHCS为集群系统提供的一个存储解决方案,它容许集群多个节点在块级别上共享存储,每一个节点经过共享一个存储空间,保证了访问数据的一致性,更切实的说,GFS是RHCS提供的一个集群文件系统,多个节点同时挂载一个文件系统分区,而文件系统数据不受破坏,这是单一的文件系统不能实现的。 
  为了实现多个节点对于一个文件系统同时读写操做,GFS使用锁管理器来管理I/O操做,当一个写进程操做一个文件时,这个文件就被锁定,此时不容许其它进程进行读写操做,直到这个写进程正常完成才释放锁,只有当锁被释放后,其它读写进程才能对这个文件进行操做,另外,当一个节点在GFS文件系统上修改数据后,这种修改操做会经过RHCS底层通讯机制当即在其它节点上可见。 

   
  
在搭建RHCS集群时,GFS通常做为共享存储,运行在每一个节点上,而且能够经过RHCS管理工具对GFS进行配置和管理。这些须要说明的是RHCS和GFS之间的关系,通常初学者很容易混淆这个概念:运行RHCS,GFS不是必须的,只有在须要共享存储时,才须要GFS支持,而搭建GFS集群文件系统,必需要有RHCS的底层支持,因此安装GFS文件系统的节点,必须安装RHCS组件。负载均衡


在下一节中,将会讲解简单的rhcs部署以及管理。分布式

相关文章
相关标签/搜索