crm_resource
crm_resource命令对资源执行各种资源相关的操作。它可以修改已配置资源的定义、启动和停止资源,以及在节点间删除和迁移资源。
crm_resource [-?|-V|-S] -L|-Q|-W|-D|-C|-P|-p [options]
示例
列出所有资源:
crm_resource -L
检查正在运行资源的位置(以及是否在运行):
crm_resource -W -r my_first_ip
如果 my_first_ip 资源正在运行,此命令的输出中会显示正在运行资源的节点。如果资源没有在运行,输出中会显示此情况。
启动或停止资源:
crm_resource -r my_first_ip -p target_role -v started
crm_resource -r my_first_ip -p target_role -v stopped
查询资源的定义:
crm_resource -Q -r my_first_ip
将资源迁离当前位置:
crm_resource -M -r my_first_ip
将资源迁移到指定的位置:
crm_resource -M -r my_first_ip -H c001n02
允许资源返回其常规位置:
crm_resource -U -r my_first_ip
注: resource_stickiness 和 default_resource_stickiness 的值可能会意味着资源没有移回。在这种情况下,应先使用 -M 将资源移回,再运行此命令。
从 CRM 删除资源:
crm_resource -D -r my_first_ip -t primitive
从 CRM 删除资源组:
crm_resource -D -r my_first_group -t group
为 CRM 中的资源禁用资源管理:
crm_resource -p is-managed -r my_first_ip -t primitive -v off
为 CRM 中的资源启用资源管理:
crm_resource -p is-managed -r my_first_ip -t primitive -v on
在手动清理后,重设置有故障的资源:
crm_resource -C -H c001n02 -r my_first_ip
重新检查所有节点,以找出从 CRM 之外启动的资源:
crm_resource -P
重新检查一个节点,以找出从 CRM 之外启动的资源:
crm_resource -P -H c001n02
crm_resource的详细参数配置可参见
http://www.novell.com/zh-cn/documentation/sle_ha/book_sleha/?page=/zh-cn/documentation/sle_ha/book_sleha/data/man_crmresource.html
crm_mon
crm_mon:crm_mon
命令允许您监视群集的状态和配置。其输出包括节点数、uname、uuid、状态、群集中配置的资源及其各自的当前状态。crm_mon
的输出可以显示在控制台上或打印到 HTML 文件。当具有不包含状态部分的群集配置文件时,crm_mon
会按文件中所指定的方式创建节点和资源概览。
示例
显示群集的状态并每隔 15 秒获取一次更新后的列表:
crm_mon
显示群集的状态并在 -i 中指定的间隔后获取一次更新后的列表。如果 -i 未指定,则采用 15 秒的默认刷新间隔:
crm_mon -i interval[s]
在控制台上显示群集状态:
crm_mon -c
在控制台上显示一次群集状态,然后退出:
crm_mon -1
显示群集的状态并按节点对资源分组:
crm_mon -n
显示群集的状态,按节点对资源分组,并在列表中包括不活动的资源:
crm_mon -n -r
将群集的状态写入 HTML 文件:
crm_mon -h filename
在后台作为守护程序运行 crm_mon,指定守护程序的 pid 文件以更轻松地控制守护程序进程,并创建 HTML 输出。此选项允许您持续创建 HTML 输出,该输出可以由其他监视应用程序轻松处理:
crm_mon -d -p filename -h filename
在现有群集配置文件(文件名)中显示群集配置,按节点对资源分组,并包括不活动的资源:此命令用于群集在线前的群集配置测试。
crm_mon -r -n -X filename
crm_mon的详细参数配置可参见
http://www.novell.com/zh-cn/documentation/sle_ha/book_sleha/?page=/zh-cn/documentation/sle_ha/book_sleha/data/man_crmmon.html
crm_failcount
crm_failcount:Heartbeat 实施了一种精密的计算方法,当资源在当前节点上趋向失败时强制将该资源故障转移到其他节点。资源携带了一个 resource-stickiness 属性以确定它希望在某个节点上运行的自愿程度。它还具有 migration-threshold 属性,可用于确定资源应故障转移到其他节点的阈值。
可将 failcount 属性添加到资源,它的值将根据资源监视到的故障而递增。将 failcount 的值与 migration-threshold 的值相乘,可确定该资源的故障转移分数。如果此数字超过该资源的自选设置,则该资源将被移到其他节点并且不会在原始节点上再次运行,直到重设置故障计数。
crm_failcount 命令可查询指定节点上每个资源的故障计数。此工具还可用于重设置故障计数,并允许资源在它多次失败的节点上再次运行。
示例
重设置节点 node1 上资源 myrsc 的故障计数:
crm_failcount -D -U node1 -r my_rsc
查询节点 node1 上资源 myrsc 的当前故障计数:
crm_failcount -G -U node1 -r my_rsc
查看资源的积分
# 2>&1 /usr/heartbeat/sbin/ptest -LVVVVVVVV|grep -E "dump_node_scores"
crm_failcount的详细参数配置可参见
http://www.novell.com/zh-cn/documentation/sle_ha/book_sleha/?page=/zh-cn/documentation/sle_ha/book_sleha/data/man_crmfailcount.html
cibadmin
cibadmin:cibadmin 是用于操作 Heartbeat CIB 的低级管理命令。它可以用来转储、更新或修改所有或部分 CIB,删除整个 CIB 或执行各种 CIB 管理操作。
cibadmin 在 CIB 的 XML 树上运行,基本上不清楚所执行的更新或查询的含义。这意味着对于理解 XML 树中的元素含义的人来说很常见的快捷方式无法用于 cibadmin。它在输入和输出时要求消除不明确性,并且只能处理有效的 XML 子树(标记和元素)。
注: 使用 cibadmin 应始终优先于手动编辑 cib.xml 文件,特别是在群集活动的情况下。群集会竭尽全力检测和阻止此做法,从而确保您的数据不会丢失或损坏。
示例
要获取递送到 stdout 的整个活动 CIB(包含状态部分等)的副本,请发出以下命令:
cibadmin -Q
要向资源部分添加 IPaddr2 资源,首先要使用以下内容创建一个文件 foo:
<primitive id="R_10.10.10.101" class="ocf" type="IPaddr2"
provider="heartbeat">
<instance_attributes id="RA_R_10.10.10.101">
<attributes>
<nvpair id="R_ip_P_ip" name="ip" value="10.10.10.101"/>
<nvpair id="R_ip_P_nic" name="nic" value="eth0"/>
</attributes>
</instance_attributes>
</primitive>
然后发出以下命令:
cibadmin --obj_type resources -U -x foo
要更改先前添加的 IPaddr2 资源的 IP 地址,请发出以下命令:
cibadmin -M -X '<nvpair id="R_ip_P_ip" name="ip" value="10.10.10.102"/>'
注: 此命令不会更改资源名称以匹配新的 IP 地址。要执行该操作,请先删除资源再重新添加带有新ID标记的资源。
要停止(禁用)先前添加的 IP 地址资源而不将它删除,请创建包含以下内容的名为 bar 的文件:
<primitive id="R_10.10.10.101">
<instance_attributes id="RA_R_10.10.10.101">
<attributes>
<nvpair id="stop_R_10.10.10.101" name="target-role" value="Stopped"/>
</attributes>
</instance_attributes>
</primitive>
然后发出以下命令:
cibadmin --obj_type resources -U -x bar
要重启动上一步中停止的 IP 地址资源,请发出以下命令:
cibadmin -D -X '<nvpair id="stop_R_10.10.10.101">'
要将此 IP 地址资源从 CIB 中彻底删除,请发出以下命令:
cibadmin -D -X '<primitive id="R_10.10.10.101"/>'
要将 CIB 替换为新的手动编辑版本,请使用以下命令:
cibadmin -R -x $HOME/cib.xml
cibadmin的详细参数配置可参见
http://www.novell.com/zh-cn/documentation/sle_ha/book_sleha/?page=/zh-cn/documentation/sle_ha/book_sleha/data/man_cibadmin.html
crm_verify
crm_verify:crm_verify 用于检查配置数据库 (CIB) 的一致性和其他问题。它可用来检查包含配置的文件,并可连接到正在运行的群集。它报告两类问题:错误和警告。必须修复错误,Heartbeat 才能正常工作。但是,应让管理员来决定警告是否也应修复。
crm_verify 可帮助创建新的或已修改的配置。您可以在运行的群集中获取 CIB 的本地副本,编辑它,使用 crm_verify 验证它,然后使用 cibadmin 使新配置生效。
示例
检查运行的群集中配置的一致性,并生成详细输出:
crm_verify -VL
检查指定文件中的配置的一致性,并生成详细输出:
crm_verify -Vx file1
将配置传送到 crm_verify,并生成详细输出:
cat file1.xml | crm_verify -Vp
crm_verify的详细参数配置可参见
http://www.novell.com/zh-cn/documentation/sle_ha/book_sleha/?page=/zh-cn/documentation/sle_ha/book_sleha/data/man_crmverify.html
crm_diff
crm_diff:命令协助创建和应用 XML 增补程序。这对可视化两个版本的群集配置之间的更改或保存更改可能非常有用,以便以后使用 cibadmin
应用更改。
示例
使用 crm_diff 确定各种 CIB 配置文件的区别并创建增补程序。通过增补程序的方式,轻松重用各个配置部分,而不必对每个部分使用 cibadmin 命令。
通过对要比较的两个群集设置运行 cibadmin 命令,获取两个不同的配置文件:
cibadmin -Q > cib1.xml
cibadmin -Q > cib2.xml
确定是区分所有文件还是只比较配置子集。
要将文件间的区别打印到 stdout,请使用以下命令:
crm_diff -o cib1.xml -n cib2.xml
要将文件间的区别打印到某个文件并创建增补程序,请使用以下命令:
crm_diff -o cib1.xml -n cib2.xml > patch.xml
将增补程序应用于原始文件:
crm_diff -o cib1.xml -p patch.xml
crm_diff的详细参数配置可参见
http://www.novell.com/zh-cn/documentation/sle_ha/book_sleha/?page=/zh-cn/documentation/sle_ha/book_sleha/data/man_crmdiff.html
参考至:http://www.novell.com/zh-cn/documentation/sle_ha/book_sleha/?page=/zh-cn/documentation/sle_ha/book_sleha/data/man_crmresource.html
http://www.novell.com/zh-cn/documentation/sle_ha/book_sleha/?page=/zh-cn/documentation/sle_ha/book_sleha/data/man_crmfailcount.html
http://www.novell.com/zh-cn/documentation/sle_ha/book_sleha/?page=/zh-cn/documentation/sle_ha/book_sleha/data/man_cibadmin.html
http://www.novell.com/zh-cn/documentation/sle_ha/book_sleha/?page=/zh-cn/documentation/sle_ha/book_sleha/data/man_crmverify.html
http://www.novell.com/zh-cn/documentation/sle_ha/book_sleha/?page=/zh-cn/documentation/sle_ha/book_sleha/data/man_crmdiff.html
http://www.novell.com/zh-cn/documentation/sle_ha/book_sleha/?page=/zh-cn/documentation/sle_ha/book_sleha/data/man_crmmon.html
本文原创,转载请注明出处、作者
如有错误,欢迎指正
邮箱:czmcj@163.com
分享到:
相关推荐
在IT行业中,Linux高可用性方案是确保关键业务系统持续运行的关键技术,尤其是在企业级服务器环境中。RHEL5(Red Hat Enterprise Linux 5)提供了高可用集群解决方案,通过Heartbeat实现集群间的通信和故障转移,以...
利用VMware 实验基于heartbeat 的Debian Linux 高可用性集群服务
本文将深入探讨基于Heartbeat的Debian Linux高可用性集群服务,这是一种利用开源工具Heartbeat构建的HA集群解决方案。 #### 什么是Heartbeat? Heartbeat是一个开源的高可用性解决方案,用于监控节点状态并在检测...
在 Linux 平台下,高可用集群方案有很多,本文介绍的是性价比比较高的一种,即使用 Heartbeat 2.0 配置 Linux 高可用性集群。高可用性(HA)集群是指可以避免单点失效的计算机集群系统,即使某个节点出现故障,集群...
总之,DRBR、Heartbeat和Apache的结合提供了强大的高可用性解决方案,它们相互协作,确保即使在单个服务器出现问题时,网站服务也能持续运行,为用户提供不间断的体验。对于任何需要保障服务稳定性的企业或组织来说...
Haproxy+Heartbeat高可用集群方案是一种非常实用的解决方案,通过合理的配置和实施,可以在保证服务高可用性的同时,大幅提升系统的整体性能。对于需要高度可靠性的应用场景而言,这种方案具有重要的价值。通过对...
在上述高可用性方案的实践中,涉及到的几个关键点包括Mysql的安装配置、主主同步配置、Lvs和Keepalived的安装与配置、Heartbeat的配置以及DRBD的管理和维护等。每一步操作都需要按照指南仔细完成,并通过实际测试来...
总结来说,"Heartbeat MySQL DRBD构建高可用MySQL方案"是一种结合了软件层面的心跳监控与硬件级别的数据复制的高可用性解决方案。它通过DRBD的实时数据同步和Heartbeat的故障检测及资源管理,实现了MySQL数据库的高...
### 使用Heartbeat实现MySQL高可用性 #### 一、引言 随着业务需求的增长和技术的发展,数据服务的稳定性成为衡量企业技术能力的重要指标之一。在众多数据库系统中,MySQL因其性能稳定、开源免费等特点,被广泛应用...
在【网络管理】方面,基于Linux的高可用性群集方案简化了管理流程,降低了维护复杂性。由于所有服务器共享数据存储空间并使用内部局域网通信,故障转移过程快速且透明,对用户的影响最小。 总结起来,基于Linux的高...
《Pro Linux High Availability Clustering》是一本专注于Linux操作系统下的高可用集群技术的专著。这本书深入探讨了在企业环境中如何构建稳定、可靠的系统,确保关键服务的不间断运行,从而提高业务连续性和数据...
总之,Heartbeat 是构建基于 Linux 的高可用性集群的重要工具之一。无论是 Heartbeat 1.x 还是 2.0 版本,都为中/高级 Linux 系统管理员、企业 IT 决策者和方案架构师提供了强大的技术支持,帮助他们在服务器出现...
在这些技术方案中,Heartbeat+DRBD+MySQL组合因其在高可用性和数据一致性方面的优势而备受关注。 #### Heartbeat介绍 Heartbeat是一款开源的高可用性集群管理软件,它主要用于监控系统状态并在出现故障时进行自动...