转:RHEL6.1上安装配置RHCS
2012-11-13 14:19
274 查看
RHEL6.1上安装配置RHCS(红帽集群套件)2012年08月30日 ⁄ linux高级特性 ⁄ 暂无评论Red Hat 高可用性附加组件可让您连接到作为集群使用的一组计算机(称之为节点或者成员)。您可使用 Red Hat 高可用性附加组件适应您的集群需要(例如:为 GFS2 文件系统中的共享文件设置集群,或者设置服务故障切换)。
1、红帽企业版 Linux 6.1 中新的和更改的功能
红帽企业版 Linux 6.1 包括以下文档和功能更新及更改:
(1)从红帽企业版 Linux 6.1 发行本开始,红帽高可用性附加组件提供 SNMP 陷阱支持。
(2)从红帽企业版 Linux 6.1 发行本开始,红帽高可用性附加组件支持 ccs 集群配置命令。
(3)已更新使用 Conga 配置和管理红帽高可用性附加组件软件的文档,包括更新的 Conga 页面和功能支
持。
(4)从红帽企业版 Linux 6.1 发行本开始,使用 ricci 需要在您第一次在任意节点中传播更新的集群配
置文件时输入密码。
(5)您现在可为服务指定 Restart-Disable 失败策略,表明该系统应该在其失败的地方尝试重启,但如
果重启服务失败,则会禁用该服务而不是将其移动到该集群的另一台主机中。
(6)您现在可以将独立子树配置为 non-critical,表示如果该资源失败,只禁用那个资源。
2、RHCS(Red Hat Cluster Suite)工作原理:
图中各组件说明:
(1)cman集群管理器
cman是一个基于内核的对称通用集群管理器。它由两部分组成:连接管理器 (cnxman),用于处理成员、消息、投票数、事件通知和过渡;服务管理器(SM),用于处理那些需要通过各种方式进行集群管理的应用及外部系统。 cman是RHCS中最核心的服务,可通过系统中的serivce命令进行启/停操作;DLM、GFS、CLVM及Fence都依赖于cman群集管理 器。
(2)rgmanager资料组管理器
rgmanager(Resource Group Manager)基于cman并使用DLM动态锁管理机制。与cman一样,rgmanager也是RHCS中的一个核心服务,可通过系统中的 serivce命令进行启/停操作;rgmanager管理并为集群中的Service(服务)和Resources(资源)提供Failover错误切 换功能。
(3)Service(服务)
每个服务都被指定存在于一个Failover Domain中,并与多个Resources(资源)关联。每个服务可以理解为实际操作中的一个应用,如Web服务器、Java中间件、数据库、文件共享 系统、邮件系统等。这些应用在运行时不但对应用程序本身有要求(如某个运行指令或多个运行脚本的组合),还要提供对诸如虚拟IP、文件系统等资源的支持。
(4)Failover Domain(错误切换域)
每 个Failover Domain都与两个或两个以上的Node(服务器节点)进行绑定,Failover Domain指定了集群中某个Service运行时的范围,也就是指定此Service将会由哪些服务器提供Failover错误切换功能。每个Node 都允许与多个Failover Domain进行绑定,也就是说每个Node都可以为多个Service服务,因此可以实现"主动/主动(双活动)"方式的集群配置。
(5)Resources(资源)
Resources 指的是组成一个应用所需的各种组件,通常包括:应用程序、虚拟IP、文件系统。资源与Service组合时,往往还会体现出一定的层次关系,例如:通常系 统都要求确认虚拟IP及文件系统都已经正常连接及挂载后,才可以运行某个应用程序,这个顺序一旦调转,就会使应用程序运行出错。
(6)Fence机制
在 RHCS集群运行时,为了避免因出现不可预知的情况而造成的"脑裂"现象(如:心跳线断连,此时两台服务器都无法找到对方,无法向对方发出操作指令,都各 自认为自己是主节点;又或者主服务器系统崩溃,系统能接收到备用服务器的操作指令,但无法返回运行情况的确认信号,导致备用服务器无法获知系统资源的使用 情况),系统要求通过Fence机制来保障系统切换时的I/O使用安全。
Fence主要就是通过服务器或存储本身的硬件管理接 口,又或者是外部电源管理设备,来对服务器或存储发起直接的硬件管理指令,控制服务器或存储链路的开关。因此,Fence机制也被称为"I/O屏障"技 术。当"脑裂"发生时彻底断开问题服务器的所有I/O连接,保证问题服务器不能对集群中的I/O资源(共享的文件系统资源)进行任何操作,严格保证集群环 境中企业核心数据的完整性。
3、RHCS安装过程
1)、
4)、创建cluster.conf文件 生成集群配置文件
<cluster config_version="5" name="my_cluster">
<fence_daemon post_fail_delay="0" post_join_delay="3"/>
<clusternodes>
<clusternode name="node1.lampbo.org" nodeid="1" votes="1">
<fence>
<method name="1">
<device name="Fence1" nodename="node1.lampbo.org"/>
</method>
</fence>
</clusternode>
<clusternode name="node2.lampbo.org" nodeid="2" votes="1">
<fence>
<method name="1">
<device name="Fence2" nodename="node2.lampbo.org"/>
</method>
</fence>
</clusternode>
</clusternodes>
<cman expected_votes="1" two_node="1"/>
<fencedevices>
<fencedevice agent="fence_ilo" ipaddr="192.168.101.15" login="root" name="Fence1" passwd="admin123"/>
<fencedevice agent="fence_ilo" ipaddr="192.168.101.16" login="root" name="Fence2" passwd="admin123"/>
</fencedevices>
<rm>
<failoverdomains>
<failoverdomain name="fail-domain" ordered="0" restricted="0">
<failoverdomainnode name="node1.lampbo.org" priority="1"/>
<failoverdomainnode name="node2.lampbo.org" priority="2"/>
</failoverdomain>
</failoverdomains>
<resources>
<script file="/etc/init.d/postgresql-9.1" name="postgresql"/>
<ip address="192.168.100.99" monitor_link="1"/>
</resources>
<service autostart="1" domain="fail-domain" exclusive="0" max_restarts="3" name="XXX" recovery="restart(or, relocate)" restart_expire_time="300">
<script ref="postgresql"/>
<ip ref="192.168.100.99"/>
</service>
</rm>
</cluster>
注:在这个例子中fence 代理使用的是HP fence_ilo,还有其他很多的fence agent ,可以参见:https://access.redhat.com/knowledge/articles/28603
5)、启动服务
至此linux集群就创建好了
说明:
1)、RHEL6.1版本中fence device不再支持hostname参数,可以使用ipaddr 代替,具体使用方法可以参考man fence_ilo
2)、集群的名称不能超过15个字符,也不能为空,最好选择容易记忆的集群名。
3)、如果节点无法加入集群,最好检查下iptables和selinux 的设置
4)、启动集群:service cman start, service rgmanager start
关闭集群:service rgmanager stop, service cman stop
要注意启动和关闭集群的顺序。
1、红帽企业版 Linux 6.1 中新的和更改的功能
红帽企业版 Linux 6.1 包括以下文档和功能更新及更改:
(1)从红帽企业版 Linux 6.1 发行本开始,红帽高可用性附加组件提供 SNMP 陷阱支持。
(2)从红帽企业版 Linux 6.1 发行本开始,红帽高可用性附加组件支持 ccs 集群配置命令。
(3)已更新使用 Conga 配置和管理红帽高可用性附加组件软件的文档,包括更新的 Conga 页面和功能支
持。
(4)从红帽企业版 Linux 6.1 发行本开始,使用 ricci 需要在您第一次在任意节点中传播更新的集群配
置文件时输入密码。
(5)您现在可为服务指定 Restart-Disable 失败策略,表明该系统应该在其失败的地方尝试重启,但如
果重启服务失败,则会禁用该服务而不是将其移动到该集群的另一台主机中。
(6)您现在可以将独立子树配置为 non-critical,表示如果该资源失败,只禁用那个资源。
2、RHCS(Red Hat Cluster Suite)工作原理:
图中各组件说明:
(1)cman集群管理器
cman是一个基于内核的对称通用集群管理器。它由两部分组成:连接管理器 (cnxman),用于处理成员、消息、投票数、事件通知和过渡;服务管理器(SM),用于处理那些需要通过各种方式进行集群管理的应用及外部系统。 cman是RHCS中最核心的服务,可通过系统中的serivce命令进行启/停操作;DLM、GFS、CLVM及Fence都依赖于cman群集管理 器。
(2)rgmanager资料组管理器
rgmanager(Resource Group Manager)基于cman并使用DLM动态锁管理机制。与cman一样,rgmanager也是RHCS中的一个核心服务,可通过系统中的 serivce命令进行启/停操作;rgmanager管理并为集群中的Service(服务)和Resources(资源)提供Failover错误切 换功能。
(3)Service(服务)
每个服务都被指定存在于一个Failover Domain中,并与多个Resources(资源)关联。每个服务可以理解为实际操作中的一个应用,如Web服务器、Java中间件、数据库、文件共享 系统、邮件系统等。这些应用在运行时不但对应用程序本身有要求(如某个运行指令或多个运行脚本的组合),还要提供对诸如虚拟IP、文件系统等资源的支持。
(4)Failover Domain(错误切换域)
每 个Failover Domain都与两个或两个以上的Node(服务器节点)进行绑定,Failover Domain指定了集群中某个Service运行时的范围,也就是指定此Service将会由哪些服务器提供Failover错误切换功能。每个Node 都允许与多个Failover Domain进行绑定,也就是说每个Node都可以为多个Service服务,因此可以实现"主动/主动(双活动)"方式的集群配置。
(5)Resources(资源)
Resources 指的是组成一个应用所需的各种组件,通常包括:应用程序、虚拟IP、文件系统。资源与Service组合时,往往还会体现出一定的层次关系,例如:通常系 统都要求确认虚拟IP及文件系统都已经正常连接及挂载后,才可以运行某个应用程序,这个顺序一旦调转,就会使应用程序运行出错。
(6)Fence机制
在 RHCS集群运行时,为了避免因出现不可预知的情况而造成的"脑裂"现象(如:心跳线断连,此时两台服务器都无法找到对方,无法向对方发出操作指令,都各 自认为自己是主节点;又或者主服务器系统崩溃,系统能接收到备用服务器的操作指令,但无法返回运行情况的确认信号,导致备用服务器无法获知系统资源的使用 情况),系统要求通过Fence机制来保障系统切换时的I/O使用安全。
Fence主要就是通过服务器或存储本身的硬件管理接 口,又或者是外部电源管理设备,来对服务器或存储发起直接的硬件管理指令,控制服务器或存储链路的开关。因此,Fence机制也被称为"I/O屏障"技 术。当"脑裂"发生时彻底断开问题服务器的所有I/O连接,保证问题服务器不能对集群中的I/O资源(共享的文件系统资源)进行任何操作,严格保证集群环 境中企业核心数据的完整性。
3、RHCS安装过程
1)、
[root@node1 ~]# yum install update2)、
[root@node1 ~]# yum install -y cman luci ricci rgmanager3)、编辑hosts文件解析两个节点的主机名
vim /etc/hosts加入以下两行
192.168.100.11 node1.lampbo.org 192.168.100.12 node2.lampbo.org保存退出
4)、创建cluster.conf文件 生成集群配置文件
[root@node1 ~]# vim /etc/cluster/cluster.conf<?xml version="1.0"?>
<cluster config_version="5" name="my_cluster">
<fence_daemon post_fail_delay="0" post_join_delay="3"/>
<clusternodes>
<clusternode name="node1.lampbo.org" nodeid="1" votes="1">
<fence>
<method name="1">
<device name="Fence1" nodename="node1.lampbo.org"/>
</method>
</fence>
</clusternode>
<clusternode name="node2.lampbo.org" nodeid="2" votes="1">
<fence>
<method name="1">
<device name="Fence2" nodename="node2.lampbo.org"/>
</method>
</fence>
</clusternode>
</clusternodes>
<cman expected_votes="1" two_node="1"/>
<fencedevices>
<fencedevice agent="fence_ilo" ipaddr="192.168.101.15" login="root" name="Fence1" passwd="admin123"/>
<fencedevice agent="fence_ilo" ipaddr="192.168.101.16" login="root" name="Fence2" passwd="admin123"/>
</fencedevices>
<rm>
<failoverdomains>
<failoverdomain name="fail-domain" ordered="0" restricted="0">
<failoverdomainnode name="node1.lampbo.org" priority="1"/>
<failoverdomainnode name="node2.lampbo.org" priority="2"/>
</failoverdomain>
</failoverdomains>
<resources>
<script file="/etc/init.d/postgresql-9.1" name="postgresql"/>
<ip address="192.168.100.99" monitor_link="1"/>
</resources>
<service autostart="1" domain="fail-domain" exclusive="0" max_restarts="3" name="XXX" recovery="restart(or, relocate)" restart_expire_time="300">
<script ref="postgresql"/>
<ip ref="192.168.100.99"/>
</service>
</rm>
</cluster>
注:在这个例子中fence 代理使用的是HP fence_ilo,还有其他很多的fence agent ,可以参见:https://access.redhat.com/knowledge/articles/28603
5)、启动服务
service luci start service ricci start service cman start service rgmanagment start6)查看集群状态(clustat)
[root@centos6 ~]# clustat如果集群的所有节点状态都为online,说明集群创建成功了
至此linux集群就创建好了
说明:
1)、RHEL6.1版本中fence device不再支持hostname参数,可以使用ipaddr 代替,具体使用方法可以参考man fence_ilo
2)、集群的名称不能超过15个字符,也不能为空,最好选择容易记忆的集群名。
3)、如果节点无法加入集群,最好检查下iptables和selinux 的设置
4)、启动集群:service cman start, service rgmanager start
关闭集群:service rgmanager stop, service cman stop
要注意启动和关闭集群的顺序。
相关文章推荐
- RHEL6.1配置本地源以及VMTools的安装
- RHEL6实现RHCS集群的安装、配置、管理和维护
- rhel6.1安装配置EPEL6 yum源
- WebLogic6.1的安装、配置
- Citrix XenServer 6.1 安装与配置(下)
- RHEL6.1在字符模式下安装图形界面
- RHEL5下Cacti流量监控详细配置(-)安装篇
- 配置光盘为本地yum源(rhel6.1)
- RHEL 6.4 x86_64 更换自带yum并安装配置163 yum源
- RHEL6.1配置光盘为本地yum源
- CentOS SVN安装与配置 (RHEL5.4平台测试通过)
- Weblogic6.1安装及配置
- nginx的centos和rhel的yum配置安装
- 在RHEL5下构建LAMP网站服务平台之MySQL、PHP的安装与配置
- RHEL 7.0系统安装配置图解教程
- RHEL server 5.5 telnet安装和配置
- VirtualBox安装RHEL之后配置桥接网络
- RHEL 6.5系统安装配置图解教程(rhel-server-6.5)
- 红帽子RHCS套件安装与配置(二)
- Centos6.1安装配置java环境