linux学习记录
分类:
2010-05-31 10:11:39
一.高可用概念:
图一
图一显示了Heartbeat2.0结构的关键元素。
Consensus Cluster Membership服务使用选举机制允许集群节点决定指定的协调器(Designated Cooridnator-DC),它来帮助建立仲裁,管理集群节点成员关系和分配。DC维护集群的状态和管理策略。其他的节点必须转发状态改变请求到DC处理。Heartbeat服务检查节点和连接状态来决定失效是否发生,集群事件日志服务(ha-logd)提供集群套件中所有服务的日志功能。
为了控制集群,本地资源管理器(Local Resource Manager-LRM)启动,停止和监控代
理。LRM守护进程(lrmd)负责和DC的集群时间通信。节点的fence代理是一种特殊的资源,由node-fencing进程stonithd控
制。stonith的意思是"Shoot the Other Node in the
Head",主要是使出现问题的节点从集群环境中脱离。fence设备包括串行或者基于网络的电源切换设备或者远程管理硬件。
当节点不能正常通信时,fence防止不同子集的节点运行相同的资源。这种情况叫做裂脑。裂脑通过使用应用设计,节点fencing或者资源指定的fencing来避免。
CRM守护进程(crmd)管理CIB,它允许对节点和资源的行为的高级限制和依赖。集群策略引擎(pengine)解释和实施这些限制和依赖。集群转移引擎(tengine)管理CRM的状态和在出现失效事件时协调在另一个节点上进程的重新启动和资源转移。
2.3)配置工具
Heartbeat2.0.5,包含在SLES10中,引入了GUI工具用于集群的管理和监控。它包括监控脚本样本来协助通用Linux服务和应用的配
置,包括基于xinetd的服务,Apache服务,IBM DB2数据库,IBM
WebSphere应用服务器。许多其他的应用,例如NFS,Samba也可以进行配置。Heartbeeat2.0 遵循Open Cluster
Framework (OCF)资源代理应用编程接口,允许使用通用的LSB初始化脚本和集群相关的OCF资源初始化脚本。
每个版本的Heartbeat也可以配置为结合Linux Virtual
Server功能的用于IP负载均衡的功能。这取决于被配置的服务和资源的需求,
共享存储,是否使用集群文件系统的并发访问机制等等,与Oracle的OCFS的结合会在Heartbeat的下一个版本中集成。
在SLES10中包含在Heartbeat2.0.5中的GUI工具简化了配置。同时,Novell也计划使用Heartbeat2.0的核心服务作为将
来Novell Cluster
Services(NCS)软件的基础。NCS是独立license的,包括了预先定义的资源类型,GUI配置工具和监控工具。
三.Red Hat Cluster Suite (RHCS) 和 Red Hat Enterprise Linux 4
RHCS专门为Red Hat Enterprise Linux设计包含了下面两个不同类型的集群
应用和服务切换:创建关键应用和服务的多节点服务器的集群环境
IP 负载均衡:对于进来的IP网络请求在一群服务器组中做负载均衡
图二
集
群的主要元素包括Cluster Manager (CMAN),Cluster Configuration System (CCS) 和
Resource Group Manger (rgmanager).图二显示了在任何指定的时间运行在一个节点上的不同的服务和守护进程的关系
CCS提供访问位于每一个节点的单一集群配置文件/etc/cluster/cluster.conf.配置文件包括版本号,它在集群任何时候改变时都会更新。ccsd运行在每一个节点上。当ccsd启动后,它找到节点间最新版本的配置文件。
CMAN用于管理集群成员,消息和通知。CMAN包括一套内核补丁和一个用户空间程序 (cman_tool).
cman_tool用于使一个节点加入或者离开集群。改变集群的投票期望值。CMAN依赖于CCS.
组资源管理器进程(clurgmgrd)处理管理员指定的集群服务(也称之为资源),包括管理员的请求比如服务启动,服务禁止,服务重新加载和服务重启动。它也处理在服务失效时,服务的重新启动和服务重定向。
3.1 配置工具
RHCS支持16个节点的集群。GUI的配置工具是system-config-cluster.集群配置包括:资源信息,节点信息,fencing设备
信息和失效域信息。这些信息以XML的格式存储在每个节点的/etc/cluster/cluster.conf文件中。这些资源在一个服务下被组织成资
源组。
表一