导读管理和维护RHCS集群是一个非常复杂和繁琐的工作,要维护好一个RHCS集群,必须熟悉RHCS的基本运行原理,在集群管理方面,RHCS提供了两种方式:即Luci图形界面方式和命令行方式,这儿重点讲述在命令行下如何管理RHCS集群。

启动RHCS集群

RHCS集群的核心进程有cman和rgmanager。要启动集群,依次启动cman,然后再启动rgmanager,操作如下:
在主机web1上启动集群服务:

[root@web1 ~]# service cman start
Starting cluster:
Loading modules... done
Mounting configs... done
Starting ccsd... done
Starting cman... done
Starting qdiskd...done
Starting daemons...done
Starting fencing... done
[ OK ]

等cman在其它节点成功启动后,开始启动rgmanager服务,具体操作如下:

[root@web1 ~]# service rgmanager start
Starting Cluster Service Manager: [ OK ]
关闭RHCS集群

与启动集群服务器刚好相反,关闭RHCS集群的命令如下:

[root@web1 ~]# service rgmanager stop
[root@web1 ~]# service cman stop

有时在关闭cman服务时,可能会提示失败,此时可以检查本机的共享存储GFS2文件系统是否已经卸载,也可以检查其它节点的rgmanager服务是否全部已经正常关闭。

管理应用服务

集群系统启动后,默认自动启动应用服务,但是,如果某个应用服务没有自动启动,就需要手动来启动。管理应用服务的命令是clusvcadm,通过这些命令可以启动、关闭、重启、切换集群服务中德尔应用服务。

启动某个应用程序

可以通过以下方式启动某个节点上的应用服务,以启动wrbserver为例:

[root@web1 ~]#clusvcadm -e webserver -m web1
Member web1 trying to enable service:webserver...Success
service:webserver is now running on web1
关闭某个应用程序

可以通过以下方式关闭某个节点上的应用服务,以启动mysqlserver为例:

[root@mysql1 ~]#clusvcadm -s mysqlserver -m web1
Member mysql1 stopping service:mysqlserver...Success
重启某个应用程序

可以通过以下方式重启某个节点上的应用服务,以启动wrbserver为例:

[root@web2 ~]#clusvcadm -R wrbserver -m web1
Member web1 trying to restart service:wrbserver...Success

这个命令是在web2节点上执行的,也能将web1节点上的wrbserver进行重启,由此可知,clusvcadm命令可以在集群任意节点上执行都是可以的。

切换某个应用程序

可以通过以下方式切换某个节点上的应用服务,以在节点web1的服务切换到节点web2上为例:

[root@web1 ~]# clusvcadm -r wrbserver -m web2
Trying to relocate service:webserver to web2...Success
service:webserver is now running on web2
监控RHCS集群状态

通过对RHCS的监控,有助于了解集群每个节点的健康状态,发现问题并及时解决问题。RHCS集群提供了丰富的状态查看命令,这里主要介绍cman_tool、clustat、ccs_tool的使用方法。

cman_tool命令

cman_tool参数比较多,但使用方法比较简单,这儿介绍两个参数的使用方法:

[root@web1 ~]# cman_tool  nodes -a
Node Sts Inc Joined Name
0 M 0 2010-08-23 01:24:00 /dev/sdb7
1 M 2492 2010-08-23 01:22:43 web2
Addresses: 192.168.12.240
2 M 2492 2010-08-23 01:22:43 Mysql1
Addresses: 192.168.12.231
3 M 2492 2010-08-23 01:22:43 Mysql2
Addresses: 192.168.12.232
4 M 2488 2010-08-23 01:22:43 web1
Addresses: 192.168.12.230

此命令显示了节点名称,以及对应的节点IP地址和加入集群的时间。
如果要了解更多集群节点信息,可以通过如下命令:

[root@web1 ~]# cman_tool   status
Version: 6.2.0
Config Version: 35 #集群配置文件版本号
Cluster Name: mycluster #集群名称
Cluster Id: 56756
Cluster Member: Yes
Cluster Generation: 2764
Membership state: Cluster-Member
Nodes: 4 #集群节点数
Expected votes: 6 #期望的投票数
Quorum device votes: 2 #表决磁盘投票值
Total votes: 6 #集群中所有投票值大小
Quorum: 4 #集群法定投票值,低于这个值,集群将停止服务
Active subsystems: 9
Flags: Dirty
Ports Bound: 0 177
Node name: web1
Node ID: 4 #本节点在集群中的ID号
Multicast addresses: 239.192.221.146 #集群广播地址
Node addresses: 192.168.12.230 #本节点对应的IP地址
clustat命令

clustat命令使用非常简单,详细的使用方法可以通过“clustat -h”获取帮助信息,这里仅仅列举几个例子。

[root@web1 ~]#clustat  -i 3
Cluster Status for mycluster @ Mon Aug 23 18:54:15 2010
Member Status: Quorate
Member Name ID Status
------ ---- ---- ------
web2 1 Online, rgmanager
Mysql1 2 Online, rgmanager
Mysql2 3 Online, rgmanager
web1 4 Online, Local, rgmanager
/dev/sdb7 0 Online, Quorum Disk
Service Name Owner (Last) State
------- ---- ----- ------ --------
service:mysqlserver Mysql1 started
service:webserver web1 started

对输出内容含义如下:
clustat的“-i”参数可以实时的显示集群系统中每个节点以及服务的运行状态,“-i 3”表示每三秒刷新一次集群状态。
在这个输出中,可以看到每个节点都处于“Online”状态,表明每个节点都运行正常,如果某个节点退出了集群,对应的状态应该是“Offline”,同时还可以看到,集群的两个服务也处于“started”状态,分别运行在Mysql1节点和web1节点。
另外,通过“ID”一列可以知道集群节点的对应关系,例如,web2在此集群中对应的就是“Node 1”节点,同理,web1对应的是“Node 4”节点。了解集群节点顺序有助于对集群日志的解读。

ccs_tool命令

ccs_tool主要用来管理集群配置文件cluster.conf,通过ccs_tool可以在集群中增加/删除节点、增加/删除fence设备、更新集群配置文件等操作。
下面是ccs_tool的几个应用实例:
当在一个节点修改完配置文件后,可以执行“ccs_tool update”指令将配置文件在所有节点进行更新,例如:

[root@web1 cluster]# ccs_tool  update /etc/cluster/cluster.conf
Proposed updated config file does not have greater version number.
Current config_version :: 35
Proposed config_version:: 35
Failed to update config file.

ccs_tool是根据cluster.conf中的“config_version”值来决定是否进行更新的,因此在修改完cluster.conf文件后,一定要将cluster.conf的config_version值进行更新,这样执行ccs_tool时才能更新配置文件。

[root@web1 cluster]# ccs_tool  update /etc/cluster/cluster.conf
Config file updated from version 35 to 36
Update complete.

免费提供最新Linux技术教程书籍,为开源技术爱好者努力做得更多更好:https://www.linuxprobe.com/

管理和维护RHCS集群的更多相关文章

  1. RHCS集群理论暨最佳实践

    RHCS集群理论暨 最佳实践 什么是集群?     集群是一组(>2)相互独立的,通过高速网络互联的计算机组成的集合.群集一般可以分为科学集群,负载均衡集群,高可用性集群三大类.     科学集 ...

  2. 又是干货,这个春节感觉吃饱了。各方面---RHCS集群理论

    什么是集群?    集群是一组(>2)相互独立的,通过高速网络互联的计算机组成的集合.群集一般可以分为科学集群,负载均衡集群,高可用性集群三大类.    科学集群是并行计算的基础.它对外就好象一 ...

  3. [Colony]RHCS集群理论

    什么是集群?     集群是一组(>2)相互独立的,通过高速网络互联的计算机组成的集合.群集一般可以分为科学集群,负载均衡集群,高可用性集群三大类.     科学集群是并行计算的基础.它对外就好 ...

  4. centos6.5环境基于conga的web图形化界面方式配置rhcs集群

    一.简介 RHCS 即 RedHat Cluster Suite ,中文意思即红帽集群套件.红帽集群套件(RedHat Cluter Suite, RHCS)是一套综合的软件组件,可以通过在部署时采用 ...

  5. linux RHCS集群 高可用web服务器

    RHCS集群,高可用服务器 高可用 红帽集群套件,提供高可用性,高可靠性,负载均衡,快速的从一个节点切换到另一个节点(最多16个节点)负载均衡 通过lvs提供负载均衡,lvs将负载通过负载分配策略,将 ...

  6. Centos6.5搭建RHCS集群-实现GFS+iSCSI网络共享存储

    RHCS集群配置 需要用到的各组件功能:RHCS(Red Hat Cluster Suite):能够提供高可用性.高可靠性.负载均衡.存储共享且经济廉价的集群工具集合.LUCI:是一个基于web的集群 ...

  7. 利用 Puppet 实现自动化管理配置 Linux 计算机集群

    随着虚拟化和云计算技术的兴起,计算机集群的自动化管理和配置成为了数据中心运维管理的热点.对于 IaaS.Paas.Saas 来说,随着业务需求的提升,后台计算机集群的数量也会线性增加.对于数据中心的运 ...

  8. 使用SolrJ客户端管理SolrCloud(Solr集群)

    1.使用SolrJ客户端管理SolrCloud(Solr集群). package com.taotao.search.service; import java.io.IOException; impo ...

  9. Cluster基础(四):创建RHCS集群环境、创建高可用Apache服务

    一.创建RHCS集群环境 目标: 准备四台KVM虚拟机,其三台作为集群节点,一台安装luci并配置iSCSI存储服务,实现如下功能: 使用RHCS创建一个名为tarena的集群 集群中所有节点均需要挂 ...

随机推荐

  1. 轻松学习Linux之认识Shell

            Shell是一个命令解释器提供了用户与内核进行交互操作的一种接口shell,编程对於系统管理员或是一般使用者都相当有用,除了自动化,还可写出一些有趣的小工具,Linux本身有各种版本一 ...

  2. DataGrid loadData loadFilter

    <!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>Cl ...

  3. Hadoop HDFS概念学习系列之分布式文件管理系统(二十五)

    数据量越来越多,在一个操作系统管辖的范围存在不了,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,因此迫切需要一种系统来 管理多台机器上的文件,这就是分布式文件管理系统. 是一种允许文件 ...

  4. Powershell导入订阅号(以Azure中国版为例)

    1. 首先,您需要安装Windows Azure Powershell.下载的链接为:http://go.microsoft.com/?linkid=9811175&clcid=0x409 2 ...

  5. JXTA+JavaFX实现的网络黑白棋测试地址

    http://www.qhdbaobao.com/dist/secondegg-reversi.html ——————————————————————————————————————————————— ...

  6. html5 +css3 第一章学习和笔记

    各位同学.身为本版的斑竹.,希望各位童鞋都能学到Html5 .特此没两天更新一个学习笔记和大家一起学习Html5.... 语法改变       1.新增的元素和废除的元素       2.新增的属性和 ...

  7. datareader几种用法总结

    1.本人常用: if (reader["字段名"] != DBNull.Value) { userRegisterInfo.OrgCode = reader["字段名&q ...

  8. 几种连接不同数据库的ADO.NET字符串

    Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;或者 Ser ...

  9. Generic【Pluralsight】

    prepare Employee Structure namespace CollectIt { public class Employee { public string Name { get; s ...

  10. vss使用详解

    下面已VSS6.0为主: 一:安装VSS6.0 安装过程中可能会提示 退出,禁止(abort)  重试(retry)  忽略,跳过(Ignore)  ,我们选 Ignore  跳过此项, 路径自己选择 ...