scha_cluster_get -O optag [-Z zoneclustername] [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) 手册页。
在连续的行上生成群集中要管理的所有资源组的名称。
在连续的行上生成群集中已注册的所有资源类型的名称。
在连续的行上生成群集中所有节点上的所有区域(包括全局区域)的 nodename:zonename 字符串。
仅当发生以下情况时,此查询的输出中才会包括非全局区域:
自群集联机后,至少引导过一次非全局区域。
非全局区域已成功启动服务管理工具 (Service Management Facility, SMF) 服务 /system/cluster/sc_ng_zones。
不执行 SMF 服务 /system/cluster/sc_ng_zones 的非全局区域无法控制资源组,因此不包括在输出中。
在连续的行上生成已将其数字节点标识符指定为参数的群集节点上所有区域(包括全局区域)的 nodename:zonename 字符串。
仅当发生以下情况时,此查询的输出中才会包括非全局区域:
自群集联机后,至少引导过一次非全局区域。
非全局区域已成功启动服务管理工具 (Service Management Facility, SMF) 服务 /system/cluster/sc_ng_zones。
不执行 SMF 服务 /system/cluster/sc_ng_zones 的非全局区域无法控制资源组,因此不包括在输出中。
生成群集名称。
在连续的行上生成为全局群集或区域群集中所有节点设置的具有特定 limitname 的硬限制。这需要一个不带标志的附加 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 群集属性的当前设置。
为在群集上配置的资源组生成故障转移和手动切换事件日志。该选项后跟您要检索日志的天数。您最多可以检索七天的日志文件。如果未指定天数,将使用默认值一天。请参见 Example 3。
在连续的行上生成为群集中所有节点设置的具有特定 limitname 的软负载限制。这需要一个不带标志的附加 string 参数(为负载限制名称字符串)。
字符串数组输出的每个元素的格式均为 "%s=%d",其中,左侧字符串是 nodename 或 nodename:zonename,右侧整数是该节点上指定的限制名称的软负载限制值。如果没有指定软限制,将显示值 0 作为软限制。
生成 RGM 用于日志消息的 syslog(3C) 设备号。该值为 24,对应于 daemon 设备。您可以在 logger(1) 命令中使用该值作为设备级别,以在群集日志中记录消息。
指定要对其执行操作的群集。当命令是在全局区域中执行但却需要在指定区域群集上进行操作时,此选项适用。无法在某区域群集内执行该命令来访问其他区域群集。
指定在名为 zoneclustername 的区域群集中执行查询。
如果省略 –Z 选项,则将在执行命令的群集中执行查询。
如果要在全局群集中查询每区域属性(例如,节点状态)的值,请勿使用 –Z 选项,而应使用查询标记的每区域格式。 例如,使用 NODESTATE_NODE 而不是 NODESTATE,并提供 nodename:zonename 格式的附加命令行参数。
以下 shell 脚本使用 scha_cluster 命令显示每个群集节点是处于运行状态还是停机状态:
#!/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 命令显示节点的负载限制
以下命令显示为节点 node1 定义的所有负载限制。
# scha_cluster_get -O LOADLIMITS_NODE node1 factor1=50/100 factor2=0/4示例 3 使用 scha_cluster 命令显示事件日志
以下命令显示过去七天群集的故障转移和手动切换事件日志。输出以 rg_name、资源组故障转移或手动切换到的 node_name 和 timestamp 的格式列出。
# scha_cluster_get -O RG_FAILOVER_LOG 7 rg1,psnow4,Thu Oct 17 04:17:31 2013 rg2,psnow4,Thu Oct 17 04:17:31 2013 rg1,psnow4,Thu Oct 17 04:30:56 2013 rg2,psnow4,Thu Oct 17 04:30:56 2013 rg_fo_nfs,psnow4,Tue Oct 22 22:42:43 2013 rg_fo_nfs,psnow4,Tue Oct 22 22:46:08 2013 testrg-lh-1,psnow4,Tue Oct 22 22:47:43 2013 rg_test,psnow4,Tue Oct 22 22:51:50 2013 rg_test,psnow4,Tue Oct 22 22:51:55 2013 rg_test,psnow4,Tue Oct 22 22:52:01 2013 RG1,psnow4,Tue Oct 22 23:09:14 2013 RG1,psnow4,Tue Oct 22 23:15:39 2013 RG4,psnow4,Tue Oct 22 23:16:10 2013 RG3,psnow4,Tue Oct 22 23:16:16 2013 RG2,psnow4,Tue Oct 22 23:16:20 2013 RG1,psnow4,Tue Oct 22 23:16:26 2013 RG4,psnow4,Tue Oct 22 23:16:51 2013 RG2,psnow4,Tue Oct 22 23:16:51 2013 RG1,psnow4,Tue Oct 22 23:17:07 2013 RG3,psnow4,Tue Oct 22 23:17:10 2013 RG1,psnow4,Tue Oct 22 23:18:08 2013 RG2,psnow4,Tue Oct 22 23:18:08 2013 RG3,psnow4,Tue Oct 22 23:18:08 2013
返回以下退出状态代码:
成功完成。
发生错误。
scha_calls(3HA) 中介绍了错误代码。
有关下列属性的说明,请参见 attributes(5):
|
awk(1)、logger(1)、sh(1)、scha_cmds(1HA)、syslog(3C)、scha_calls(3HA)、scha_cluster_get(3HA)、attributes(5)、rg_properties(5)