scha_cluster_get -O optag [-Z zone-cluster-name] [args]
scha_cluster_get 命令用于访问和生成群集相关信息。您可以访问有关群集、节点、主机名、资源组、资源类型和状态的信息。
该命令仅供在资源类型回调方法的 shell 脚本实现中使用。资源类型的这些回调方法代表群集的资源组管理器 (Resource Group Manager, RGM) 所控制的服务。此命令可与 scha_resource_get() 函数提供相同的信息。
此命令可在单独的行中以格式化字符串的形式将输出发送到标准输出 (stdout),如 scha_cmds(1HA) 手册页中所述。可以将输出存储在 shell 变量中。还可以使用 shell 命令(例如 awk 命令)解析输出。
支持以下选项:
optag 参数指示要访问的信息。可能需要一个附加参数,用于指示要检索其信息的群集节点,具体取决于 optag。
支持以下 optag 值:
在连续的行上生成全局群集或区域群集中定义的所有 loadlimit 名称。
在连续的行上生成群集中所有节点的数字节点标识符。
在连续的行上生成群集中所有节点的名称。
在连续的行上生成在群集互连上定位所有群集节点所需的主机名。
在连续的行上生成群集中所有专用字符串的名称(而不是值)。有关专用字符串的更多信息,请参见 clpstring(1CL) 手册页。
在连续的行上生成群集中要管理的所有资源组的名称。
在连续的行上生成群集中已注册的所有资源类型的名称。
生成群集名称。
在连续的行上生成为全局群集或区域群集中所有节点设置的具有特定 limit-name 的硬限制。这需要一个不带标志的附加 string 参数(为负载限制名称字符串)。
字符串数组输出的每个元素的格式均为 "%s=%d",其中,左侧字符串是 nodename 或 nodename:zonename,右侧整数是该节点上指定的限制名称的硬负载限制值。如果没有指定硬限制,将显示值 -1 作为硬限制。
在连续的行上生成全局群集或区域群集中所有节点的硬限制和软限制(用 / 分隔)。这需要一个不带标志的附加 string 参数(为负载限制名称字符串)。
字符串数组输出的每个元素都是 "%s=%d/%d" 格式的字符串,其中,左侧的字符串是 nodename 或 nodename:zonename,第一个整数是软限制,第二个整数是硬限制。如果没有指定硬限制,将显示值 -1 作为硬限制。如果没有指定软限制,将显示值 0 作为软限制。
在连续的行上生成为特定节点设置的负载限制(用 / 分隔)设置。这需要一个不带标志的附加 string 参数(为负载限制名称字符串)。
字符串数组输出的每个元素都是 "%s=%d/%d" 格式的字符串,其中,字符串是指定节点上定义的限制名称,第一个整数是软限制值,第二个整数是硬限制值。如果没有指定硬限制,将显示值 -1 作为硬限制。如果没有指定软限制,将显示值 0 作为软限制。
生成执行命令的节点的数字节点标识符。
生成名称所指示的节点的数字节点标识符。需要一个不带标志的附加参数(为群集节点的名称)。
生成执行命令的群集节点的名称。
生成数字标识符所指示的群集节点的名称。需要一个不带标志的附加参数(为数字群集节点标识符)。
根据执行命令的节点的状态生成 UP 或 DOWN。
根据指定节点的状态生成 UP 或 DOWN。需要一个不带标志的附加参数(为群集节点的名称)。
生成在整个群集互连上定位运行命令的节点所需的主机名。
生成在群集互连上定位指定节点所需的主机名。需要一个不带标志的附加参数(为群集节点的名称)。
生成专用字符串的明文值。需要一个不带标志的附加参数(为专用字符串的名称)。超级用户以外的用户需要具有 solaris.cluster.modify 基于角色的访问控制 (role-based access control, RBAC) 授权才能使用该查询标记。有关专用字符串的更多信息,请参见 clpstring(1CL) 手册页。
生成 resource_security 群集属性的当前设置。
为在群集上配置的资源组生成最近的故障转移日志和手动切换事件。接受一个额外的不带标志的参数,它是一个从 1 到 7(含)的无符号整数,表示要从日志中检索的历史记录天数。如果未指定天数,将使用默认值一天。
输出中的每个日志条目都包含以下分号分隔的字段:
resource-group-name;source-nodes;target-nodes;time-stamp
source-nodes 字段是以下节点的逗号分隔的列表,资源组从这些节点进行故障转移或手动切换。空的 source-nodes 字段表示以手动方式或在群集引导过程中将资源组切换为联机的事件。
target-nodes 字段是以下节点的逗号分隔的列表,资源组故障转移或手动切换到这些节点。空的 target-nodes 字段表示资源组已脱机。
time-stamp 值以 ctime 格式写入。有关 ctime() 函数的更多信息,请参见 ctime(3C) 手册页。
有关 RG_FAILOVER_LOG 输出的样例,请参见示例 3。
在连续的行上生成为群集中所有节点设置的具有特定 limit-name 的软负载限制。这需要一个不带标志的附加 string 参数(为负载限制名称字符串)。
字符串数组输出的每个元素的格式均为 "%s=%d",其中,左侧字符串是 nodename 或 nodename:zonename,右侧整数是该节点上指定的限制名称的软负载限制值。如果没有指定软限制,将显示值 0 作为软限制。
生成 RGM 用于日志消息的 syslog(3C) 设备号。该值为 24,对应于 daemon 设备。您可以在 logger(1) 命令中使用该值作为设备级别,以在群集日志中记录消息。
指定要对其执行操作的群集。当命令是在全局区域中执行但却需要在指定区域群集上进行操作时,此选项适用。无法在某区域群集内执行该命令来访问其他区域群集。
指定在名为 zone-cluster-name 的区域群集中执行查询。
如果省略 –Z 选项,则将在执行命令的群集中执行查询。
以下 shell 脚本使用 scha_cluster_get 命令显示每个群集节点是处于运行状态还是停机状态:
#!/bin/sh nodenames=`scha_cluster_get -O All_Nodenames` for node in $nodenames do state=`scha_cluster_get -O NodeState_Node $node` printf "State of node: %s\n exit: %d\n value: %s\n" "$node" $? "$state" done示例 2 使用 scha_cluster_get 命令显示节点的负载限制
以下命令显示为节点 node1 定义的所有负载限制。
# scha_cluster_get -O LOADLIMITS_NODE node1 factor1=50/100 factor2=0/4示例 3 使用 scha_cluster_get 命令显示事件日志
以下命令显示过去三天群集的故障转移和手动切换事件日志。输出以 resource-group-name;source-nodes;target-nodes;time-stamp 格式列出。
# scha_cluster_get -O RG_FAILOVER_LOG 3 geo-infrastructure;schost1c;;Mon Jul 21 15:50:51 2014 geo-clusterstate;schost2c,schost1c;schost2c;Mon Jul 21 15:50:51 2014 oracle-rg;schost1c;;Mon Jul 21 15:58:04 2014 asm-dg-rg;schost2c,schost1c;schost2c;Mon Jul 21 15:58:04 2014 asm-inst-rg;schost2c,schost1c;schost2c;Mon Jul 21 15:58:51 2014 oracle-rg;;schost2c;Mon Jul 21 15:58:51 2014 geo-infrastructure;;schost2c;Mon Jul 21 15:59:19 2014 geo-clusterstate;schost2c;schost2c,schost1c;Mon Jul 21 16:01:51 2014 asm-inst-rg;schost2c;schost2c,schost1c;Mon Jul 21 16:02:10 2014 asm-dg-rg;schost2c;schost2c,schost1c;Mon Jul 21 16:02:10 2014 oracle-rg;schost2c;;Tue Jul 22 16:58:02 2014 oracle-rg;;schost1c;Tue Jul 22 16:59:05 2014 oracle-rg;schost1c;schost1c;Tue Jul 22 17:05:33 2014
返回以下退出状态代码:
成功完成。
发生错误。
scha_calls(3HA) 中介绍了错误代码。
有关下列属性的说明,请参见 attributes(5):
|
awk(1)、logger(1)、sh(1)、scha_cmds(1HA)、syslog(3C)、scha_calls(3HA)、scha_cluster_open(3HA)、attributes(5)、rg_properties(5)