本章说明如何使用 scrgadm(1M) 命令管理群集中的资源、资源组和资源类型。 请参见数据服务资源管理的工具以确定您是否可以使用其他工具来完成过程。
本章包含以下过程。
有关资源类型、资源组和资源的概述信息,请参见第 1 章,规划 Sun Cluster 数据服务 和《Sun Cluster 概念指南(适用于 Solaris OS) 》 文档。
表 2–1 列出了说明数据服务资源的管理任务的各节。
表 2–1 任务图: 数据服务管理
任务 |
有关说明,请转到… |
---|---|
注册资源类型 | |
升级资源类型 | |
创建故障转移或可伸缩资源组 | |
将逻辑主机名或共享地址和数据服务资源添加到资源组中 | |
启用资源和资源监视器、管理资源组、使资源组及其相关的资源联机 | |
禁用和启用独立于资源的资源监视器 | |
从群集中删除资源类型 | |
从群集中删除资源组 | |
从资源组中删除资源 | |
切换资源组的主节点 | |
禁用资源,并将其资源组转为 UNMANAGED 状态 | |
显示资源类型、资源组和资源配置信息 | |
更改资源类型、资源组和资源特性 | |
清除失败的 Resource Group Manager (RGM) 进程的错误标志 | |
重新注册内置资源类型 LogicalHostname 和 SharedAddress | |
更新网络资源的网络接口 ID 列表,并更新资源组的节点列表 | |
从资源组中删除节点 | |
为资源组设置 HAStorage 或 HAStoragePlus,以便在这些资源组和磁盘设备组之间同步启动 | |
设置 HAStoragePlus,为具有高 I/O 磁盘强度的故障转移数据服务启用高可用性的本地文件系统 | |
配置资源类型以自动释放节点供关键数据服务使用。 |
本章中的过程说明如何使用scrgadm(1M) 命令来完成这些任务。 您也可以使用其他工具管理资源。 有关这些选项的详细信息,请参见数据服务资源管理的工具。
配置 Sun Cluster 数据服务是由若干个过程组成的单个任务。 您可以使用这些过程执行以下任务。
注册资源类型。
升级资源类型。
创建资源组。
将资源添加到资源组中。
使资源联机。
在初始配置之后,请使用本章中的过程更新您的数据服务配置。 例如,要更改资源类型、资源组和资源特性,请转到更改资源类型、资源组和资源特性。
资源类型提供了适用于所有给定类型资源的常用特性和回叫方法的规范。 在创建该类型资源之前,必须注册资源类型。 有关资源类型的详细信息,请参见第 1 章,规划 Sun Cluster 数据服务 。
要完成此过程,必须提供要注册的资源类型的名称。 资源类型名称是数据服务名称的缩写。 有关随 Sun Cluster 提供的数据服务的资源类型名称的信息,请参见关于您的 Sun Cluster 发行版本的发行说明。
有关附加信息,请参见scrgadm(1M) 手册页。
请通过任一群集节点执行此过程。
成为某个群集成员的超级用户。
注册资源类型。
# scrgadm -a -t resource-type |
添加指定的资源类型。
指定要添加的资源类型的名称。 请参见您的 Sun Cluster 发行版本的发行说明,以确定要提供的预定义名称。
检验是否已经注册该资源类型。
# scrgadm -pv -t resource-type |
下例注册 Sun Cluster HA for Sun Java System Web Server(内部名称 iws)。
# scrgadm -a -t SUNW.iws # scrgadm -pv -t SUNW.iws Res Type name: SUNW.iws (SUNW.iws) Res Type description: None registered (SUNW.iws) Res Type base directory: /opt/SUNWschtt/bin (SUNW.iws) Res Type single instance: False (SUNW.iws) Res Type init nodes: All potential masters (SUNW.iws) Res Type failover: False (SUNW.iws) Res Type version: 1.0 (SUNW.iws) Res Type API version: 2 (SUNW.iws) Res Type installed on nodes: All (SUNW.iws) Res Type packages: SUNWschtt |
注册资源类型之后,您可以创建资源组并将资源添加到该资源组中。 有关详细信息,请参见创建资源组。
发行更新版本的资源类型时,您需要安装和注册升级的资源类型。 您可能还需要将现有资源升级到更新的资源类型版本。 本节提供了以下过程,可用于安装和注册升级的资源类型以及将现有资源升级到新的资源类型版本。
此过程也可以使用 scsetup 的“资源组”选项来执行。 有关 scsetup 的信息,请参见 scsetup(1M) 手册页。
在所有群集节点上安装资源类型升级软件包。
如果未在所有节点上安装资源类型软件包,则需要执行附加步骤(步骤 3)。
升级文档会指示是否需要以非群集模式引导节点以安装资源类型升级软件包。 为避免停机时间,请以滚动升级方式添加新软件包(一次一个节点)。当该节点以非群集模式引导时,其他节点处于群集模式中。
注册新的资源类型版本。
scrgadm -a -t resource_type -f path_to_new_RTR_file |
新的资源类型将具有以下格式的名称。
vendor_id.rtname:version |
使用 scrgadm —p 或 scrgadm —pv(冗余)可显示新注册的资源类型。
如果未在所有节点上安装新资源类型,请将 Installed_nodes 特性设置为实际已安装新资源类型的节点。
scrgadm -c -t resource_type -h installed_node_list |
新版本的资源类型可能在以下方面与以前的版本不同。
资源类型特性的设置可能会更改。
声明的资源特性(包括标准特性和扩展特性)集可能会更改。
资源特性的属性(例如缺省值、最小值、最大值、数组最小值、数组最大值或可调性)可能会更改。
声明的方法集可能不同。
方法和/或监视器的实现可能会更改。
此过程也可以使用 scsetup 的“资源组”选项来执行。 有关 scsetup 的信息,请参见 scsetup (1M) 手册页。
现有资源类型版本和新版本中的更改确定了如何迁移到新版本类型。 资源类型升级文档会告知您是否可以进行迁移。 如果不支持迁移,请考虑删除该资源并用升级版本的新资源替换它,或以旧版本的资源类型保留该资源。
迁移现有资源时,以下值可能会更改。
如果升级版本的资源类型声明了缺省特性的新缺省值,则新的缺省值将由现有资源继承。
新资源类型版本的 VALIDATE 方法将进行检查以确保现有特性的设置是否适当。 如果设置不适当,请将现有资源的特性编辑为适当的值。 要编辑特性,请参见步骤 3。
RTR 文件包含用于构成资源类型的全限定名称的以下特性。
Vendor_id
Resource_type
RT_Version
注册升级版本的资源类型时,其名称将存储为 vendor_id.rtname:version。 已经迁移到新版本的资源将具有新的 Type 特性,该特性由以上列出的特性组成。
标准资源特性 Type_version 存储资源类型的 RT_Version 特性。 Type_Version 特性不显示在 RTR 文件中。 使用以下命令可编辑 Type_Version 特性。
scrgadm -c -j resource -y Type_version=new_version |
将现有资源迁移到新版本的资源类型之前,请阅读附带新资源类型的升级文档以确定是否可以进行迁移。
该文档将指定何时必须进行迁移。
任何时候
在资源未被监视时
在资源脱机时
当资源被禁止时
在资源组未受管理时
如果不支持迁移,则必须删除该资源并用升级版本的新资源替换它,或以旧版本的资源类型保留该资源。
对于属于要迁移资源类型的每个资源,请将资源或其资源组的状态更改为升级文档所指示的适当状态。
例如,如果资源需要不被监视
scswitch -M -n -j resource |
如果资源需要脱机
scswitch -n -j resource |
如果资源需要被禁用
scswitch -n -j resource |
如果资源组需要不受管理
scsswitch -n -j resource-group scswitch -F -g resource_group scswitch -u -g resource_group |
对于属于要迁移资源类型的每个资源,请编辑资源,将其 Type_version 特性更改为新版本。
scrgadm -c -j resource -y Type_version=new_version \ -x extension_property=new_value -y extension_property=new_value |
如果需要,可以通过在命令行中添加附加的 -x 和/或 -y 选项,使用同一命令将同一资源的其他特性编辑为适当的值。
通过执行与在步骤 2 中键入的命令相反的命令,恢复资源或资源组的先前状态。
例如,使资源重新被监视
scswitch -M -e -j resource |
重新启用资源
scswitch -e -j resource |
使资源组受管理并联机
scswitch -o -g resource_group scswitch -Z -g resource_group |
此例说明了现有资源向新资源类型版本的迁移。 请注意,新资源类型软件包包含的方法位于新路径中。 因为在安装期间方法不会被覆写,所以在安装升级的资源类型之前,资源无需被禁用。
此例假定以下条件。
新资源类型版本为 2.0
前一版本的可调性为“when_offline”
资源名称为“myresource”
资源类型名称为“myrt”
新 RTR 文件位于 /opt/XYZmyrt/etc/XYZ.myrt
与要迁移的资源没有相关性
要迁移资源处于脱机状态而包含该要迁移资源的资源组处于联机状态
(按照供应商的说明在所有节点上安装新软件包。) # scrgadm -a -t myrt -f /opt/XYZmyrt/etc/XYZ.myrt # scswitch -n -j myresource # scrgadm -c -j myresource -y Type_version=2.0 # scswitch -e -j myresource |
此例说明了现有资源向新资源类型版本的迁移。 请注意,新资源类型软件包仅包含监视器和 RTR 文件。 因为在安装期间监视器会被覆写,所以在安装升级的资源类型之前,资源必须被禁用。
此例假定以下条件。
新资源类型版本为 2.0
前一版本的可调性为“when_unmonitored”
资源名称为“myresource”
资源类型名称为“myrt”
新 RTR 文件位于 /opt/XYZmyrt/etc/XYZ.myrt
# scswitch -M -n -j myresource (按照供应商的说明安装新软件包。) # scrgadm -a -t myrt -f /opt/XYZmyrt/etc/XYZ.myrt # scrgadm -c -j myresource -y Type_version=2.0 # scswitch -M -e -j myresource |
您可以将资源降级为其资源类型的早期版本。 将资源降级为资源类型的早期版本比升级到资源类型的更新版本所需的条件更受限制。 首先必须使资源组不受管理。 此外,只能将资源降级到资源类型的可升级版本。 可以通过使用 scrgadm -p 命令标识支持升级的版本。 在输出中,支持升级的版本包含后缀 :version。
您可以将资源降级为其资源类型的早期版本。 将资源降级为资源类型的早期版本比升级到资源类型的更新版本所需的条件更受限制。 首先必须使资源组不受管理。 此外,只能将资源降级到资源类型的可升级版本。 可以通过使用 scrgadm -p 命令标识可升级的版本。 在输出中,支持升级的版本包含后缀 :version。
将包含要降级资源的资源组切换为脱机状态。
scswitch -F -g resource_group |
禁用要降级的资源以及资源组中的所有资源。
scswitch -n -j resource_to_downgrade scswitch -n -j resource1 scswitch -n -j resource2 scswitch -n -j resource3 ... |
按相关性的顺序禁用资源,从相关性最强的资源(应用程序资源)开始,到相关性最弱的资源(网络地址资源)结束。
使资源组不受管理。
scswitch -u -g resource_group |
如果是,请转到下一步。
如果否,请重新注册所需的旧版本。
scrgadm -a -t resource_type_name |
通过为 Type_version 指定所需的旧版本来降级资源。
scrgadm -c -j resource_to_downgrade -y Type_version=old_version |
如果需要,请使用同一命令将同一资源的其他特性编辑为适当的值。
使包含已降级资源的资源组转为受管理状态,启用所有资源并将组切换为联机状态。
scswitch -Z -g resource_group |
一个资源组包含一组资源,所有这些资源在给定节点或节点集上一起联机或脱机。 必须先创建一个空资源组,然后再将资源放入该资源组。
两种资源组类型是故障转移和可伸缩。 故障转移资源组在任何时候只能在一个节点上联机,而可伸缩资源组可以同时在多个节点上联机。
以下过程说明如何使用 scrgadm(1M) 命令注册和配置数据服务。
请参见第 1 章,规划 Sun Cluster 数据服务 和《Sun Cluster 概念指南(适用于 Solaris OS)》文档以获得有关资源组的概念信息。
故障转移资源组包含网络地址(例如内置资源类型 LogicalHostname 和 SharedAddress)和故障转移资源(例如故障转移数据服务的数据服务应用程序资源)。 当数据服务进行故障转移或切换时,网络资源及其相关数据服务资源在群集节点之间移动。
有关附加信息,请参见scrgadm(1M) 手册页。
请通过任一群集节点执行此过程。
成为某个群集成员的超级用户。
创建故障转移资源组。
# scrgadm -a -g resource-group [-h nodelist] |
添加指定的资源组。
指定要添加的故障转移资源组的名称。 此名称必须以 ASCII 字符开头。
指定可控制此资源组的节点的可选的、有序的列表。 如果未指定此列表,缺省值将为群集中所有的节点。
检验是否已经创建该资源组。
# scrgadm -pv -g resource-group |
此例说明了故障转移资源组 (resource-group-1) 的添加,两个节点(phys-schost-1 和 phys-schost-2)可控制该资源组。
# scrgadm -a -g resource-group-1 -h phys-schost1,phys-schost-2 # scrgadm -pv -g resource-group-1 Res Group name: resource-group-1 (resource-group-1) Res Group RG_description: <NULL> (resource-group-1) Res Group management state: Unmanaged (resource-group-1) Res Group Failback: False (resource-group-1) Res Group Nodelist: phys-schost-1 phys-schost-2 (resource-group-1) Res Group Maximum_primaries: 1 (resource-group-1) Res Group Desired_primaries: 1 (resource-group-1) Res Group RG_dependencies: <NULL> (resource-group-1) Res Group mode: Failover (resource-group-1) Res Group network dependencies: True (resource-group-1) Res Group Global_resources_used: All (resource-group-1) Res Group Pathprefix: |
创建故障转移资源组之后,您可以将应用程序资源添加到此资源组。 有关过程,请参见将资源添加到资源组。
可伸缩资源组与可伸缩服务一起使用。 共享地址功能是 Sun Cluster 的联网工具,可以使可伸缩服务的多个实例显示为单个服务。 必须先创建包含可伸缩资源所依赖的共享地址的故障转移资源组。 然后再创建可伸缩资源组,并将可伸缩资源添加到该组。
有关附加信息,请参见scrgadm(1M) 手册页。
请通过任一群集节点执行此过程。
成为某个群集成员的超级用户。
创建用于保存可伸缩资源要使用的共享地址的故障转移资源组。
创建可伸缩资源组。
# scrgadm -a -g resource-group \ -y Maximum_primaries=m \ -y Desired_primaries=n \ -y RG_dependencies=depend-resource-group \ -h nodelist] |
添加可伸缩资源组。
指定要添加的可伸缩资源组的名称。
指定此资源组的活动主节点的最大数目。
指定尝试启动资源组的活动主节点的数目。
标识包含共享地址资源(正在创建的资源组所依赖)的资源组。
指定其中此资源组即将可用的节点的可选列表。 如果未指定此列表,缺省值将为所有节点。
检验是否已经创建该可伸缩资源组。
# scrgadm -pv -g resource-group |
此例说明了可伸缩资源组 (resource-group-1) 的添加,该资源组将在两个节点(phys-schost-1、phys-schost-2)上托管。 可伸缩资源组依赖于包含共享地址的故障转移资源组 (resource-group-2)。
# scrgadm -a -g resource-group-1 \ -y Maximum_primaries=2 \ -y Desired_primaries=2 \ -y RG_dependencies=resource-group-2 \ -h phys-schost-1,phys-schost-2 # scrgadm -pv -g resource-group-1 Res Group name: resource-group-1 (resource-group-1) Res Group RG_description: <NULL> (resource-group-1) Res Group management state: Unmanaged (resource-group-1) Res Group Failback: False (resource-group-1) Res Group Nodelist: phys-schost-1 phys-schost-2 (resource-group-1) Res Group Maximum_primaries: 2 (resource-group-1) Res Group Desired_primaries: 2 (resource-group-1) Res Group RG_dependencies: resource-group-2 (resource-group-1) Res Group mode: Scalable (resource-group-1) Res Group network dependencies: True (resource-group-1) Res Group Global_resources_used: All (resource-group-1) Res Group Pathprefix: |
创建可伸缩资源组之后,您可以将可伸缩应用程序资源添加到该资源组。 有关详细信息,请参见如何将可伸缩应用程序资源添加到资源组 。
资源是资源类型的实例。 必须先将资源添加到资源组,RGM 才能管理资源。 本节说明了以下三种资源类型。
逻辑主机名资源
共享地址资源
数据服务(应用程序)资源
请始终将逻辑主机名资源和共享地址资源添加到故障转移资源组。 将用于故障转移数据服务的数据服务资源添加到故障转移资源组。 故障转移资源组包含用于数据服务的逻辑主机名资源和应用程序资源。 可伸缩资源组仅包含用于可伸缩服务的应用程序资源。 可伸缩服务所依赖的共享地址资源必须位于单独的故障转移资源组中。 必须指定可伸缩应用程序资源与共享地址资源之间的相关性,以便数据服务在各群集节点间伸缩。
有关资源的详细信息,请参见《Sun Cluster 概念指南(适用于 Solaris OS)》文档和第 1 章,规划 Sun Cluster 数据服务 。
要向其中添加资源的故障转移资源组的名称
要添加到资源组的主机名
有关附加信息,请参见scrgadm(1M) 手册页。
请通过任一群集节点执行此过程。
成为某个群集成员的超级用户。
将逻辑主机名资源添加到资源组。
# scrgadm -a -L [-j resource] -g resource-group -l hostnamelist, … [-n netiflist] |
添加逻辑主机名资源。
指定命令的逻辑主机名资源格式。
指定您选择的可选的资源名称。 如果未指定此选项,则缺省名称为使用 -l 选项指定的第一个主机名。
指定此资源所在的资源组的名称。
指定一个用逗号分隔的 UNIX 主机名(逻辑主机名)的列表,客户机使用该主机名与资源组中的服务进行通信。
指定一个可选的、用逗号分隔的列表,该列表标识各节点上的 IP 网络多路径处理 组。 netiflist 中的每个元素的格式必须为 netif@node。 netif 可被指定为 IP 网络多路径处理 组的名称,例如 sc_ipmp0。 节点可由节点名称或节点 ID 标识,例如 sc_ipmp0@1 或 sc_ipmp@phys-schost-1。
Sun Cluster 目前不支持将适配器名称用作 netif。
检验是否已经添加该逻辑主机名资源。
# scrgadm -pv -j resource |
添加资源会使 Sun Cluster 软件验证该资源。 如果验证成功,则您可以启用该资源,并可以将资源组转为 RGM 可对其进行管理的状态。 如果验证失败,则 scrgadm 命令将生成错误消息并退出。 如果验证失败,请针对错误消息查看每个节点上的 syslog。 错误消息显示在执行验证的节点上,不一定显示在运行 scrgadm 命令的节点上。
此例说明了将逻辑主机名资源 (resource-1) 添加到资源组 (resource-group-1)。
# scrgadm -a -L -j resource-1 -g resource-group-1 -l schost-1 # scrgadm -pv -j resource-1 Res Group name: resource-group-1 (resource-group-1) Res name: resource-1 (resource-group-1:resource-1) Res R_description: (resource-group-1:resource-1) Res resource type: SUNW.LogicalHostname (resource-group-1:resource-1) Res resource group name: resource-group-1 (resource-group-1:resource-1) Res enabled: False (resource-group-1:resource-1) Res monitor enabled: True |
添加逻辑主机名资源之后,请使用过程如何使资源组联机 使其联机。
要向其中添加资源的资源组的名称。 此组必须是先前创建的故障转移资源组。
要添加到资源组的主机名。
有关附加信息,请参见scrgadm(1M) 手册页。
请通过任一群集节点执行此过程。
成为某个群集成员的超级用户。
将共享地址资源添加到资源组。
# scrgadm -a -S [-j resource] -g resource-group -l hostnamelist, … \ [-X auxnodelist] [-n netiflist] |
添加共享地址资源。
指定命令的共享地址资源格式。
指定您选择的可选的资源名称。 如果未指定此选项,则缺省名称为使用 -l 选项指定的第一个主机名。
指定资源组名称。
指定一个用逗号分隔的共享地址主机名的列表。
指定一个用逗号分隔的物理节点名称或 ID 的列表,这些节点名称或 ID 标识可托管共享地址但在发生故障转移时从不作为主节点的群集节点。 这些节点与资源组的节点列表中标识为潜在主节点的节点相互排斥。
指定一个可选的、用逗号分隔的列表,该列表标识各节点上的 IP 网络多路径处理 组。 netiflist 中的每个元素的格式必须为 netif@node。 netif 可被指定为 IP 网络多路径处理 组的名称,例如 sc_ipmp0。 节点可由节点名称或节点 ID 标识,例如 sc_ipmp0@1 或 sc_ipmp@phys-schost-1。
Sun Cluster 目前不支持将适配器名称用作 netif。
检验是否已经添加并验证了共享地址资源。
# scrgadm -pv -j resource |
添加资源会使 Sun Cluster 软件验证该资源。 如果验证成功,则您可以启用该资源,并可以将资源组转为 RGM 可对其进行管理的状态。 如果验证失败,则 scrgadm 命令将生成错误消息并退出。 如果验证失败,请针对错误消息查看每个节点上的 syslog。 错误消息显示在执行验证的节点上,不一定显示在运行 scrgadm 命令的节点上。
此例说明了将共享地址资源 (resource-1) 添加到资源组 (resource-group-1)。
# scrgadm -a -S -j resource-1 -g resource-group-1 -l schost-1 # scrgadm -pv -j resource-1 (resource-group-1) Res name: resource-1 (resource-group-1:resource-1) Res R_description: (resource-group-1:resource-1) Res resource type: SUNW.SharedAddress (resource-group-1:resource-1) Res resource group name: resource-group-1 (resource-group-1:resource-1) Res enabled: False (resource-group-1:resource-1) Res monitor enabled: True |
添加共享资源之后,请使用过程如何使资源组联机 启用该资源。
故障转移应用程序资源是使用先前在故障转移资源组中创建的逻辑主机名的应用程序资源。
要向其中添加资源的故障转移资源组的名称
资源的资源类型名称
应用程序资源使用的逻辑主机名资源,即先前包含在同一资源组中的逻辑主机名
有关附加信息,请参见scrgadm(1M) 手册页。
请通过任一群集节点执行此过程。
成为某个群集成员的超级用户。
将故障转移应用程序资源添加到资源组。
# scrgadm -a -j resource -g resource-group -t resource-type \ [-x Extension_property=value, …] [-y Standard_property=value, …] |
添加资源。
指定要添加的资源的名称。
指定先前创建的故障转移资源组的名称。
指定资源的资源类型名称。
指定一个用逗号分隔的依赖于特定数据服务的扩展特性的列表。 请参见有关各数据服务的章节以确定该数据服务是否需要此特性。
指定一个用逗号分隔的依赖于特定数据服务的标准特性的列表。 请参见有关各数据服务的章节和附录 A,标准特性 以确定该数据服务是否需要此特性。
您可以设置其他特性。 有关详细信息,请参见附录 A,标准特性 和本书中有关如何安装和配置故障转移数据服务的章节。
检验是否已经添加并验证了故障转移应用程序资源。
# scrgadm -pv -j resource |
添加资源会使 Sun Cluster 软件验证该资源。 如果验证成功,则您可以启用该资源,并可以将资源组转为 RGM 可对其进行管理的状态。 如果验证失败,则 scrgadm 命令将生成错误消息并退出。 如果验证失败,请针对错误消息查看每个节点上的 syslog。 错误消息显示在执行验证的节点上,不一定显示在运行 scrgadm 命令的节点上。
此例说明了将资源 (resource-1) 添加到资源组 (resource-group-1)。 该资源依赖于逻辑主机名资源(schost-1、schost-2),逻辑主机名资源必须位于先前定义的同一故障转移资源组中。
# scrgadm -a -j resource-1 -g resource-group-1 -t resource-type-1 \ -y Network_resources_used=schost-1,schost2 \ # scrgadm -pv -j resource-1 (resource-group-1) Res name: resource-1 (resource-group-1:resource-1) Res R_description: (resource-group-1:resource-1) Res resource type: resource-type-1 (resource-group-1:resource-1) Res resource group name: resource-group-1 (resource-group-1:resource-1) Res enabled: False (resource-group-1:resource-1) Res monitor enabled: True |
添加故障转移应用程序资源之后,请使用过程如何使资源组联机 启用该资源。
可伸缩应用程序资源是使用故障转移资源组中的共享地址的应用程序资源。
要向其中添加资源的可伸缩资源组的名称
资源的资源类型名称
可伸缩服务资源使用的共享地址资源,即先前包含在故障转移资源组中的共享地址
有关附加信息,请参见scrgadm(1M) 手册页。
请通过任一群集节点执行此过程。
成为某个群集成员的超级用户。
将可伸缩应用程序资源添加到资源组。
# scrgadm -a -j resource -g resource-group -t resource-type \ -y Network_resources_used=network-resource[,network-resource...] \ -y Scalable=True [-x Extension_property=value, …] [-y Standard_property=value, …] |
添加资源。
指定要添加的资源的名称。
指定先前创建的可伸缩服务资源组的名称。
指定此资源的资源类型名称。
指定此资源所依赖的网络资源(共享地址)的列表。
指定此资源是可伸缩的。
指定一个用逗号分隔的依赖于特定数据服务的扩展特性的列表。 请参见有关各数据服务的章节以确定该数据服务是否需要此特性。
指定一个用逗号分隔的依赖于特定数据服务的标准特性的列表。 请参见有关各数据服务的章节和附录 A,标准特性 以确定该数据服务是否需要此特性。
指定一个用逗号分隔的依赖于特定数据服务的标准特性的列表。 请参见有关各数据服务的章节和附录 A,标准特性 以确定该数据服务是否需要此特性。
您可以设置其他特性。 有关其他可配置特性的信息,请参见附录 A,标准特性 和本书中有关如何安装和配置可伸缩数据服务的章节。 尤其对于可伸缩服务,通常设置 Port_list、Load_balancing_weights 和 Load_balancing_policy 特性,这在附录 A,标准特性 中进行了说明。
检验是否已经添加并验证了可伸缩应用程序资源。
# scrgadm -pv -j resource |
添加资源会使 Sun Cluster 软件验证该资源。 如果验证成功,则您可以启用该资源,并可以将资源组转为 RGM 可对其进行管理的状态。 如果验证失败,则 scrgadm 命令将生成错误消息并退出。 如果验证失败,请针对错误消息查看每个节点上的 syslog。 错误消息显示在执行验证的节点上,不一定显示在运行 scrgadm 命令的节点上。
此例说明了将资源 (resource-1) 添加到资源组 (resource-group-1)。 请注意,resource-group-1 依赖于包含使用中的网络地址(下例中的 schost-1 和 schost-2)的故障转移资源组。 该资源依赖于共享地址资源(schost-1、schost-2),共享地址资源必须位于先前定义的一个或多个故障转移资源组中。
# scrgadm -a -j resource-1 -g resource-group-1 -t resource-type-1 \ -y Network_resources_used=schost-1,schost-2 \ -y Scalable=True # scrgadm -pv -j resource-1 (resource-group-1) Res name: resource-1 (resource-group-1:resource-1) Res R_description: (resource-group-1:resource-1) Res resource type: resource-type-1 (resource-group-1:resource-1) Res resource group name: resource-group-1 (resource-group-1:resource-1) Res enabled: False (resource-group-1:resource-1) Res monitor enabled: True |
添加可伸缩应用程序资源之后,请按照过程如何使资源组联机 启用该资源。
要启用资源以开始提供 HA 服务,必须启用资源组中的资源、启用资源监视器、使资源组受管理并使资源组联机。 您可以分别执行这些任务,也可以使用以下一步过程执行这些任务。 有关详细信息,请参见scswitch(1M) 手册页。
请通过任一群集节点执行此过程。
成为某个群集成员的超级用户。
启用资源,并使资源组联机。
如果资源监视器已被禁用,也将启用资源监视器。
# scswitch -Z -g resource-group |
通过先启用资源组的资源和故障监视器来使资源组联机。
指定要联机的资源组的名称。 该组必须是现有资源组。
检验资源是否已联机。
在任一群集节点上运行以下命令,并查看资源组状态字段以检验资源组是否已在节点列表中指定的节点上联机。
# scstat -g |
此例说明了如何使资源组 (resource-group-1) 联机并检验其状态。
# scswitch -Z -g resource-group-1 # scstat -g |
使资源组联机之后,将配置该资源组,然后便可以使用。 如果资源或节点失败,RGM 将在其他节点上使资源组联机以维护资源组的可用性。
以下过程禁用或启用资源故障监视器,而不是资源本身。 当资源的故障监视器被禁用时,该资源可以继续正常运行。 但是,如果故障监视器被禁用并且数据服务发生故障,则不会启动自动故障恢复。
有关附加信息,请参见scswitch(1M) 手册页。
请通过任一群集节点运行此过程。
成为某个群集成员的超级用户。
禁用资源故障监视器。
# scswitch -n -M -j resource |
禁用资源或资源监视器。
禁用指定资源的故障监视器。
资源的名称。
检验是否已经禁用资源故障监视器。
在每个群集节点上运行以下命令,并查看监视字段 (RS Monitored)。
# scrgadm -pv |
此例说明了如何禁用资源故障监视器。
# scswitch -n -M -j resource-1 # scrgadm -pv ... RS Monitored: no... |
成为某个群集成员的超级用户。
启用资源故障监视器。
# scswitch -e -M -j resource |
启用资源或资源监视器。
启用指定资源的故障监视器。
指定资源的名称。
检验是否已经启用资源故障监视器。
在每个群集节点上运行以下命令,并查看监视字段 (RS Monitored)。
# scrgadm -pv |
此例说明了如何启用资源故障监视器。
# scswitch -e -M -j resource-1 # scrgadm -pv ... RS Monitored: yes... |
您无需删除未使用的资源类型。 但是,如果要删除资源类型,可以使用此过程来执行操作。
有关附加信息,请参见scrgadm(1M) 和scswitch(1M) 手册页。
请通过任一群集节点执行此过程。
在删除资源类型之前,必须在群集的所有资源组中禁用和删除属于该类型的所有资源。 使用 scrgadm -pv 命令可标识群集中的资源和资源组。
成为某个群集成员的超级用户。
禁用属于要删除的资源类型的每个资源。
# scswitch -n -j resource |
禁用资源。
指定要禁用的资源的名称。
删除属于要删除的资源类型的每个资源。
# scrgadm -r -j resource |
删除指定的资源。
指定要删除的资源的名称。
删除资源类型。
# scrgadm -r -t resource-type |
删除指定的资源类型。
指定要删除的资源类型的名称。
检验是否已经删除该资源类型。
# scrgadm -p |
此例说明了如何禁用和删除属于某一资源类型 (resource-type-1) 的所有资源,然后再删除资源类型本身。 在此例中,resource-1 是资源类型为 resource-type-1 的资源。
# scswitch -n -j resource-1 # scrgadm -r -j resource-1 # scrgadm -r -t resource-type-1 |
要删除资源组,必须先删除资源组中的所有资源。
关于附加信息,请参见scrgadm(1M) 和scswitch(1M) 手册页。
请通过任一群集节点执行此过程。
成为某个群集成员的超级用户。
运行以下命令以将资源组切换为脱机状态。
# scswitch -F -g resource-group |
将资源组切换为脱机状态。
指定要脱机的资源组的名称。
禁用属于资源组的所有资源。
您可以使用 scrgadm -pv 命令查看资源组中的资源。 禁用要删除的资源组中的所有资源。
# scswitch -n -j resource |
禁用资源。
指定要禁用的资源的名称。
如果资源组中存在任何相关数据服务资源,则在禁用依赖于该资源的所有资源之前,您不能禁用该资源。
从资源组中删除所有资源。
删除资源。
删除资源组。
# scrgadm -r -j resource # scrgadm -r -g resource-group |
删除指定的资源或资源组。
指定要删除的资源的名称。
指定要删除的资源组的名称。
检验是否已经删除该资源组。
# scrgadm -p |
此例说明了如何在删除资源组 (resource-group-1) 的资源 (resource-1) 之后删除该资源组。
# scswitch -F -g resource-group-1 # scrgadm -r -j resource-1 # scrgadm -r -g resource-group-1 |
在从资源组删除资源之前,请先禁用该资源。
有关附加信息,请参见scrgadm(1M) 和scswitch(1M) 手册页。
请通过任一群集节点执行此过程。
成为某个群集成员的超级用户。
禁用要删除的资源。
# scswitch -n -j resource |
禁用资源。
指定要禁用的资源的名称。
删除资源。
# scrgadm -r -j resource |
删除指定的资源。
指定要删除的资源的名称。
检验是否已经删除该资源。
# scrgadm -p |
此例说明了如何禁用和删除资源 (resource-1)。
# scswitch -n -j resource-1 # scrgadm -r -j resource-1 |
请使用以下过程将资源组从其当前主节点切换到将成为新主节点的另一个节点。
有关附加信息,请参见scrgadm(1M) 和scswitch(1M) 手册页。
请通过任一群集节点执行此过程。
要完成此过程,必须提供以下信息。
要切换的资源组的名称。
要使资源组在其上联机或保持联机的节点的名称。 这些节点必须是已经设置为要切换的资源组的潜在主节点的群集节点。 要查看资源组的潜在主节点的列表,请使用 scrgadm -pv 命令。
成为某个群集成员的超级用户。
将主节点切换为潜在主节点。
# scswitch -z -g resource-group -h nodelist |
将指定的资源组切换为联机状态。
指定要切换的资源组的名称。
指定要使资源组在其上联机或保持联机的一个或多个节点。 随后此资源组在所有其他节点上被切换为脱机状态。
检验资源组是否已切换到新的主节点。
运行以下命令,并查看已切换资源组的状态输出。
# scstat -g |
此例说明了如何将资源组 (resource-group-1) 从其当前主节点 (phys-schost-1) 切换到潜在主节点 (phys-schost-2)。 首先,检验资源组在 phys-schost-1 上是否处于联机状态。 其次,执行切换。 最后,检验该组是否在 phys-schost-2 上被切换为联机状态。
phys-schost-1# scstat -g ... Resource Group Name: resource-group-1 Status Node Name: phys-schost-1 Status: Online Node Name: phys-schost-2 Status: Offline ... phys-schost-1# scswitch -z -g resource-group-1 -h phys-schost-2 phys-schost-1# scstat -g ... Resource Group Name: resource-group-1 Status Node Name: phys-schost-2 Status: Online Node Name: phys-schost-1 Status: Offline ... |
有时,必须使资源组转为 UNMANAGED 状态,才能在其上执行管理过程。 在将资源组转为 UNMANAGED 状态之前,必须禁用属于资源组的所有资源并使资源组脱机。
有关附加信息,请参见scrgadm(1M) 和scswitch(1M) 手册页。
请通过任一群集节点执行此过程。
要完成此过程,必须提供以下信息。
要禁用的资源的名称
要转为 UNMANAGED 状态的资源组的名称
要确定此过程所需的资源和资源组的名称,请使用 scrgadm -pv 命令。
成为某个群集成员的超级用户。
禁用资源。
对资源组中的所有资源重复此步骤。
# scswitch -n -j resource |
禁用资源。
指定要禁用的资源的名称。
运行以下命令以将资源组切换为脱机状态。
# scswitch -F -g resource-group |
将资源组切换为脱机状态。
指定要脱机的资源组的名称。
将资源组转为 UNMANAGED 状态。
# scswitch -u -g resource-group |
将指定的资源组转为 UNMANAGED 状态。
指定要转为 UNMANAGED 状态的资源组的名称。
检验是否已禁用资源并且资源组是否处于 UNMANAGED 状态。
# scrgadm -pv -g resource-group |
此例说明了如何禁用资源 (resource-1),然后将资源组 (resource-group-1) 转为 UNMANAGED 状态。
# scswitch -n -j resource-1 # scswitch -F -g resource-group-1 # scswitch -u -g resource-group-1 # scrgadm -pv -g resource-group-1 Res Group name: resource-group-1 (resource-group-1) Res Group RG_description: <NULL> (resource-group-1) Res Group management state: Unmanaged (resource-group-1) Res Group Failback: False (resource-group-1) Res Group Nodelist: phys-schost-1 phys-schost-2 (resource-group-1) Res Group Maximum_primaries: 2 (resource-group-1) Res Group Desired_primaries: 2 (resource-group-1) Res Group RG_dependencies: <NULL> (resource-group-1) Res Group mode: Failover (resource-group-1) Res Group network dependencies: True (resource-group-1) Res Group Global_resources_used: All (resource-group-1) Res Group Pathprefix: (resource-group-1) Res name: resource-1 (resource-group-1:resource-1) Res R_description: (resource-group-1:resource-1) Res resource type: SUNW.apache (resource-group-1:resource-1) Res resource group name: resource-group-1 (resource-group-1:resource-1) Res enabled: True (resource-group-1:resource-1) Res monitor enabled: False (resource-group-1:resource-1) Res detached: False |
在对资源、资源组或资源类型执行管理过程之前,请使用以下过程查看这些对象的当前配置设置。
有关附加信息,请参见scrgadm(1M) 和scswitch(1M) 手册页。
请通过任一群集节点执行此过程。
scrgadm 命令提供了以下三个级别的配置状态信息。
使用 -p 选项,输出将显示资源类型、资源组和资源的非常有限的一组特性值。
使用 -pv 选项,输出将显示有关其他资源类型、资源组和资源特性的详细信息。
使用 -pvv 选项,输出将提供详细视图,包括资源类型方法、扩展特性以及所有资源和资源组特性。
您也可以使用 -t、-g 和 -j (分别用于资源类型、资源组和资源)选项,后跟要查看的对象的名称,以查看有关特定资源类型、资源组和资源的状态信息。 例如,以下命令仅指定要查看有关资源 apache-1 的特定信息。
# scrgadm -p[v[v]] -j apache-1 |
有关详细信息,请参见scrgadm(1M) 手册页。
资源组和资源具有您可以更改的标准配置特性。 以下过程说明如何更改这些特性。
资源还具有您不能更改的扩展特性,其中一些扩展特性由数据服务开发者预定义。 有关各数据服务的扩展特性的列表,请参见本文档中各个数据服务的章节。
有关资源组和资源的标准配置特性的信息,请参见scrgadm(1M) 手册页。
要完成此过程,必须提供以下信息。
要更改的资源类型的名称。
要更改的资源类型特性的名称。 对于资源类型,您只能更改一种特性,即此类型的资源在其上可作为实例的节点的列表。
请通过任一群集节点执行此过程。
成为某个群集成员的超级用户。
运行 scrgadm 命令以确定此过程所需的资源类型的名称。
# scrgadm -pv |
更改资源类型特性。
资源类型的可更改的唯一特性是 Installed_node_list 特性。
# scrgadm -c -t resource-type -h installed-node-list |
更改指定的资源类型特性。
指定资源类型的名称。
指定安装了此资源类型的节点的名称。
检验是否已经更改资源类型特性。
# scrgadm -pv -t resource-type |
此例说明了如何更改 SUNW.apache 特性以定义在两个节点(phys-schost-1 和 phys-schost-2)上安装此资源类型。
# scrgadm -c -t SUNW.apache -h phys-schost-1,phys-schost-2 # scrgadm -pv -t SUNW.apache Res Type name: SUNW.apache (SUNW.apache) Res Type description: Apache Resource Type (SUNW.apache) Res Type base directory: /opt/SUNWscapc/bin (SUNW.apache) Res Type single instance: False (SUNW.apache) Res Type init nodes: All potential masters (SUNW.apache) Res Type failover: False (SUNW.apache) Res Type version: 1.0 (SUNW.apache) Res Type API version: 2 (SUNW.apache) Res Type installed on nodes: phys-schost1 phys-schost-2 (SUNW.apache) Res Type packages: SUNWscapc |
要完成此过程,必须提供以下信息。
要更改的资源组的名称
要更改的资源组特性的名称及其新值
此过程说明了更改资源组特性的步骤。 有关资源组特性的完整列表,请参见附录 A,标准特性。
请通过任一群集节点执行此过程。
成为某个群集成员的超级用户。
更改资源组特性。
# scrgadm -c -g resource-group -y property=new_value |
更改指定的特性。
指定资源组的名称。
指定要更改的特性的名称。
检验是否已经更改资源组特性。
# scrgadm -pv -g resource-group |
此例说明了如何更改资源组 (resource-group-1) 的 Failback 特性。
# scrgadm -c -g resource-group-1 -y Failback=True # scrgadm -pv -g resource-group-1 |
要完成此过程,必须提供以下信息。
具有要更改特性的资源的名称
要更改的特性的名称
此过程说明了更改资源特性的步骤。 有关资源组特性的完整列表,请参见附录 A,标准特性。
请通过任一群集节点执行此过程。
成为某个群集成员的超级用户。
运行 scrgadm -pvv 命令以查看当前资源特性设置。
# scrgadm -pvv -j resource |
更改资源特性。
# scrgadm -c -j resource -y property=new_value | -x extension_property=new_value |
更改指定的特性。
指定资源的名称。
指定要更改的标准特性的名称。
指定要更改的扩展特性的名称。 对于 Sun 提供的数据服务,请参见有关如何安装和配置各个数据服务的章节中说明的扩展特性。
检验是否已经更改资源特性。
# scrgadm pvv -j resource |
此例说明了如何更改资源 (resource-1) 的系统定义的 Start_timeout 特性。
# scrgadm -c -j resource-1 -y start_timeout=30 # scrgadm -pvv -j resource-1 |
此例说明了如何更改资源 (resource-1) 的扩展特性 (Log_level)。
# scrgadm -c -j resource-1 -x Log_level=3 # scrgadm -pvv -j resource-1 |
如果将 Failover_mode 资源特性设置为 NONE 或 SOFT 并且资源的 STOP 失败,则单个资源将进入 STOP_FAILED 状态,资源组将进入 ERROR_STOP_FAILED 状态。 您不能使处于此状态的资源组在任一节点上联机,也不能编辑该资源组(创建或删除资源,或者更改资源组或资源特性)。
要完成此过程,必须提供以下信息。
其中资源为 STOP_FAILED 的节点的名称
处于 STOP_FAILED 状态的资源和资源组的名称
有关附加信息,请参见scswitch(1M) 手册页。
请通过任一群集节点执行此过程。
成为某个群集成员的超级用户。
标识哪些资源已经进入 STOP_FAILED 状态并位于哪些节点上。
# scstat -g |
在资源处于 STOP_FAILED 状态的节点上手动停止资源及其监视器。
此步骤可能需要您终止进程,或者运行针对资源类型的命令或其他命令。
在手动停止了资源的所有节点上将这些资源的状态手动设置为 OFFLINE。
# scswitch -c -h nodelist -j resource -f STOP_FAILED |
清除标志。
指定曾运行资源的节点名称。
指定要切换为脱机状态的资源的名称。
指定标志名称。
查看在步骤 4 中清除了STOP_FAILED 标志的节点上的资源组状态。
资源组状态此时应为 OFFLINE 或 ONLINE。
# scstat -g |
命令 scstat -g 表示资源组是否保持 ERROR_STOP_FAILED 状态。 如果资源组仍处于 ERROR_STOP_FAILED 状态,则运行以下 scswitch 命令以在适合的节点上将资源组切换为脱机状态。
# scswitch -F -g resource-group |
在可以控制组的所有节点上将资源组切换为脱机状态。
指定要切换为脱机状态的资源组的名称。
如果 STOP 方法失败,并且无法停止的资源与资源组中的其他资源具有相关性,则在将资源组切换为脱机状态时会发生此种情况。 否则,在对所有 STOP_FAILED 资源运行步骤 4 中的命令后,资源组将自动恢复为 ONLINE 或 OFFLINE 状态。
此时您可以将资源组切换为 ONLINE 状态。
两种预注册的资源类型是 SUNW.LogicalHostname 和 SUNW.SharedAddress。 所有逻辑主机名和共享地址资源都使用这两种资源类型。 您从不需要注册这两种资源类型,但是可能会意外地删除它们。 如果您无意中删除了这两种资源类型,请使用以下过程重新注册它们。
有关附加信息,请参见scrgadm(1M) 手册页。
请通过任一群集节点执行此过程。
重新注册资源类型。
# scrgadm -a -t SUNW.resource-type |
添加资源类型。
指定要添加(重新注册)的资源类型。 资源类型可以是 SUNW.LogicalHostname 或 SUNW.SharedAddress。
此例说明了如何重新注册 SUNW.LogicalHostname 资源类型。
# scrgadm -a -t SUNW.LogicalHostname |
本节中的过程使您可以执行以下任务。
将群集节点配置为资源组的附加主节点。
从资源组中删除节点。
根据您是在故障转移资源组中添加或删除节点还是在可伸缩资源组中添加或删除节点,过程会稍有不同。
故障转移资源组包含故障转移服务和可伸缩服务使用的网络资源。 每个连接到群集的 IP 子网均具有自己的网络资源,该资源在故障转移资源组中指定并包含在其中。 网络资源是逻辑主机名资源或共享地址资源。 每个网络资源包括其使用的 IP 网络多路径处理组的列表。 对于故障转移资源组,必须更新资源组包括的每个网络资源的 IP 网络多路径处理组的完整列表(netiflist 资源特性)。
对于可伸缩资源组,除了将可伸缩组更改为在新的主机集上受控制以外,还必须重复用于故障转移组(包含可伸缩资源所用的网络资源)的过程。
有关附加信息,请参见scrgadm(1M) 手册页。
请通过任一群集节点运行以上过程之一。
将节点添加到资源组要遵循的步骤取决于资源组是可伸缩资源组还是故障转移资源组。 有关详细说明,请参见以下章节:
要完成此过程,必须提供以下信息。
所有群集节点的名称和节点 ID
要向其中添加节点的资源组的名称
将托管由所有节点上的资源组使用的网络资源的 IP 网络多路径处理组的名称
此外,请确保检验新节点已经是群集成员。
对于资源组中的可伸缩资源所用的每个网络资源,使网络资源所在的资源组在新节点上运行。
将新节点添加到可控制可伸缩资源组的节点的列表(nodelist 资源组特性)。
此步骤将覆写 nodelist 的先前的值,因此必须在此处包括可控制资源组的所有节点。
# scrgadm -c -g resource-group -h nodelist |
更改资源组。
指定要向其中添加节点的资源组的名称。
指定一个用逗号分隔的可控制资源组的节点的列表。
(可选的) 更新可伸缩资源的 Load_balancing_weights 特性,以便为要添加到资源组的节点指定权数。
否则,权数缺省值将为 1。 有关详细信息,请参见scrgadm(1M) 手册页。
显示当前节点列表以及为资源组中的每个资源配置的 IP 网络多路径处理组的当前列表。
# scrgadm -pvv -g resource-group | grep -i nodelist # scrgadm -pvv -g resource-group | grep -i netiflist |
nodelist 和 netiflist 的命令行输出用节点名称标识节点。 要标识节点 ID,请运行命令 scconf -pv | grep -i node_id。
更新节点添加操作所影响的网络资源的 netiflist。
此步骤将覆写 netiflist 的先前的值,因此必须在此处包括所有 IP 网络多路径处理组。
# scrgadm -c -j network-resource -x netiflist=netiflist |
更改网络资源。
指定 netiflist 项托管的网络资源(逻辑主机名或共享地址)的名称。
指定一个用逗号分隔的列表,该列表标识各节点上的 IP 网络多路径处理组。 netiflist 中每个元素的格式必须为 netif@node。 netif 可被指定为 IP 网络多路径处理 组的名称,例如 sc_ipmp0。 节点可由节点名称或节点 ID 标识,例如 sc_ipmp0@1 或 sc_ipmp@phys-schost-1。
更新节点列表以包括当前可控制此资源组的所有节点。
此步骤将覆写 nodelist 的先前的值,因此必须在此处包括可控制资源组的所有节点。
# scrgadm -c -g resource-group -h nodelist |
更改资源组。
指定要向其中添加节点的资源组的名称。
指定一个用逗号分隔的可控制资源组的节点的列表。
检验更新的信息。
# scrgadm -pvv -g resource-group | grep -i nodelist # scrgadm -pvv -g resource-group | grep -i netiflist |
此例说明了如何将节点 (phys-schost-2) 添加到包含逻辑主机名资源 (schost-2) 的资源组 (resource-group-1)。
# scrgadm -pvv -g resource-group-1 | grep -i nodelist (resource-group-1) Res Group Nodelist: phys-schost-1 phys-schost-3 # scrgadm -pvv -g resource-group-1 | grep -i netiflist (resource-group-1:schost-2) Res property name: NetIfList (resource-group-1:schost-2:NetIfList) Res property class: extension (resource-group-1:schost-2:NetIfList) List of IP 网络多路径处理 interfaces on each node (resource-group-1:schost-2:NetIfList) Res property type: stringarray (resource-group-1:schost-2:NetIfList) Res property value: sc_ipmp0@1 sc_ipmp0@3 (Only nodes 1 and 3 have been assigned IP 网络多路径处理 groups. You must add a IP 网络多路径处理 group for node 2.) # scrgadm -c -j schost-2 -x netiflist=sc_ipmp0@1,sc_ipmp0@2,sc_ipmp0@3 # scrgadm -c -g resource-group-1 -h phys-schost-1,phys-schost-2,phys-schost-3 # scrgadm -pvv -g resource-group-1 | grep -i nodelist (resource-group-1) Res Group Nodelist: phys-schost-1 phys-schost-2 phys-schost-3 # scrgadm -pvv -g resource-group-1 | grep -i netiflist (resource-group-1:schost-2:NetIfList) Res property value: sc_ipmp0@1 sc_ipmp0@2 sc_ipmp0@3 |
从资源组删除节点要遵循的步骤取决于该资源组是可伸缩资源组还是故障转移资源组。 有关详细说明,请参见以下章节:
有关示例,请参见示例 – 从资源组删除节点。
要完成此过程,必须提供以下信息。
所有群集节点的节点名称和节点 ID
# scconf -pv | grep “Node ID” |
要从中删除节点的一个或多个资源组的名称
# scrgadm -pv | grep “Res Group Nodelist” |
将托管由所有节点上的资源组使用的网络资源的 IP 网络多路径处理组的名称
# scrgadm -pvv | grep “NetIfList.*value” |
此外,请确保检验资源组不受要删除的节点控制。 如果资源组受要删除的节点控制,请运行 scswitch 命令以从该节点上将资源组切换为脱机状态。 以下 scswitch 命令将使资源组从给定节点上脱机(如果 new-masters 不包含该节点)。
# scswitch -z -g resource-group -h new-masters |
指定要将其切换为脱机状态的资源组(受要删除的节点控制)的名称。
指定当前控制资源组的节点。
有关附加信息,请参见scswitch(1M) 手册页。
如果要从所有资源组删除某个节点,并且您使用的是可伸缩服务配置,请先从可伸缩资源组删除该节点。 然后,再从故障转移组删除该节点。
一个资源组是包含可伸缩服务资源的可伸缩组。
一个资源组是包含可伸缩服务资源使用的共享地址资源的故障转移组。
此外,将设置可伸缩资源组的 RG_dependencies 特性,以配置与故障转移资源组具有相关性的可伸缩组。 有关此特性的详细信息,请参见附录 A,标准特性。
有关可伸缩服务配置的详细信息,请参见《Sun Cluster 概念指南(适用于 Solaris OS)》文档。
从可伸缩资源组删除节点会使可伸缩服务在该节点上不再联机。 要从可伸缩资源组删除节点,请执行以下步骤。
从可控制可伸缩资源组的节点的列表(nodelist 资源组特性)中删除节点。
# scrgadm -c -g scalable-resource-group -h nodelist |
更改资源组。
指定要从中删除节点的资源组的名称。
指定一个用逗号分隔的可控制此资源组的节点的列表。
(可选)从包含共享地址资源的故障转移资源组中删除节点。
有关详细信息,请参见如何从包含共享地址资源的故障转移资源组删除节点 。
(可选)更新可伸缩资源的 Load_balancing_weights 特性,以删除要从资源组中删除的节点的权数。
有关附加信息,请参见scrgadm(1M) 手册页。
请执行以下步骤以从故障转移资源组中删除节点。
如果要从所有资源组删除某个节点,并且您使用的是可伸缩服务配置,请先从可伸缩资源组删除该节点。 然后,使用此过程从故障转移组中删除该节点。
如果故障转移资源组包含可伸缩服务所使用的共享地址资源,请参见如何从包含共享地址资源的故障转移资源组删除节点 。
更新节点列表以包括当前可控制此资源组的所有节点。
此步骤将删除节点并覆写节点列表的先前的值。 请确保在此处包括可控制资源组的所有节点。
# scrgadm -c -g failover-resource-group -h nodelist |
更改资源组。
指定要从中删除节点的资源组的名称。
指定一个用逗号分隔的可控制此资源组的节点的列表。
显示为资源组中的每个资源配置的 IP 网络多路径处理组的当前列表。
# scrgadm -pvv -g failover-resource-group | grep -i netiflist |
更新节点删除操作所影响的网络资源的 netiflist。
此步骤将覆写 netiflist 的先前的值。 请确保在此处包括所有 IP 网络多路径处理组。
# scrgadm -c -j network-resource -x netiflist=netiflist |
上一命令行的输出用节点名称标识节点。 运行命令行 scconf -pv | grep “Node ID” 可查找节点 ID。
更改网络资源。
指定 netiflist 项托管的网络资源的名称。
指定一个用逗号分隔的列表,该列表标识各节点上的 IP 网络多路径处理组。 netiflist 中每个元素的格式必须为 netif@node。 netif 可被指定为 IP 网络多路径处理组的名称,例如 sc_ipmp0。 节点可由节点名称或节点 ID 标识,例如 sc_ipmp0@1 或 sc_ipmp@phys-schost-1。
Sun Cluster 目前不支持将适配器名称用作 netif。
检验更新的信息。
# scrgadm -pvv -g failover-resource-group | grep -i nodelist # scrgadm -pvv -g failover-resource-group | grep -i netiflist |
在包含可伸缩服务使用的共享地址资源的故障转移资源组中,节点可以显示在以下位置。
故障转移资源组的节点列表
共享地址资源的 auxnodelist
要从故障转移资源组的节点列表中删除节点,请按照过程如何从故障转移资源组删除节点 进行操作。
要修改共享地址资源的 auxnodelist,必须删除并重新创建共享地址资源。
如果从故障转移组的节点列表中删除节点,您可以继续使用该节点上的共享地址资源以提供可伸缩服务。 要执行此操作,您必须将节点添加到共享地址资源的 auxnodelist。 要将节点添加到 auxnodelist,请执行以下步骤。
您也可以使用以下过程从共享地址资源的 auxnodelist 中删除节点。 要从 auxnodelist 中删除节点,必须删除并重新创建共享地址资源。
使可伸缩服务资源切换为脱机状态。
从故障转移资源组删除共享地址资源。
创建共享地址资源。
将从故障转移资源组删除的节点的节点 ID 或节点名称添加到 auxnodelist。
# scrgadm -a -S -g failover-resource-group\ -l shared-address -X new-auxnodelist |
用于包含共享地址资源的故障转移资源组的名称。
共享地址的名称。
添加或删除了所需节点的、已修改的新 auxnodelist。
此例说明了如何从包含逻辑主机名资源 (schost-1) 的资源组 (resource-group-1) 删除节点 (phys-schost-3)。
# scrgadm -pvv -g resource-group-1 | grep -i nodelist (resource-group-1) Res Group Nodelist: phys-schost-1 phys-schost-2 phys-schost-3 # scrgadm -c -g resource-group-1 -h phys-schost-1,phys-schost-2 # scrgadm -pvv -g resource-group-1 | grep -i netiflist (resource-group-1:schost-1) Res property name: NetIfList (resource-group-1:schost-1:NetIfList) Res property class: extension (resource-group-1:schost-1:NetIfList) List of IP 网络多路径处理 interfaces on each node (resource-group-1:schost-1:NetIfList) Res property type: stringarray (resource-group-1:schost-1:NetIfList) Res property value: sc_ipmp0@1 sc_ipmp0@2 sc_ipmp0@3 (sc_ipmp0@3 is the IP 网络多路径处理 group to be removed.) # scrgadm -c -j schost-1 -x netiflist=sc_ipmp0@1,sc_ipmp0@2 # scrgadm -pvv -g resource-group-1 | grep -i nodelist (resource-group-1) Res Group Nodelist: phys-schost-1 phys-schost-2 # scrgadm -pvv -g resource-group-1 | grep -i netiflist (resource-group-1:schost-1:NetIfList) Res property value: sc_ipmp0@1 sc_ipmp0@2 |
在群集引导或服务故障转移到其他节点后,可能需要等一会儿才可以使用全局设备和群集文件系统。 但是,在数据服务所依赖的全局设备和群集文件系统实现联机之前,该数据服务可以运行其 START 方法。 在此实例中,START 方法超时,您必须重置数据服务使用的资源组的状态并手动重新启动该数据服务。 资源类型 HAStorage 和 HAStoragePlus 将监视全局设备和群集文件系统,并导致同一资源组中其他资源的 START 方法等待直到其可用。 (要确定要创建哪个资源类型,请参见在 HAStorage 和 HAStoragePlus 之间进行选择 。) 为避免附加的管理任务,请为所有资源组设置 HAStorage 或 HAStoragePlus,这些资源组的数据服务资源取决于全局设备或群集文件系统。
要创建 HAStorage 资源类型,请参见如何为新资源设置 HAStorage 资源类型 。
要创建 HAStoragePlus 资源类型,请参见如何设置 HAStoragePlus 资源类型。
Sun Cluster 的未来发行版可能不支持 HAStorage。 HAStoragePlus 支持相同的功能。 要从 HAStorage 升级到 HAStoragePlus,请参见从 HAStorage 升级到 HAStoragePlus。
在下例中,资源组 resource-group-1 包含三种数据服务。
Sun Java System Web Server,它依赖于 /global/resource-group-1
Oracle,它依赖于 /dev/global/dsk/d5s2
NFS,它依赖于 dsk/d6
要为 resource-group-1 中的新资源创建类型为 HAStorage 的资源 hastorage-1,请阅读使资源组和磁盘设备组之间的启动同步 ,然后再执行以下步骤。
要创建 HAStoragePlus 资源类型,请参见启用具有高可用性的本地文件系统 。
成为某个群集成员的超级用户。
创建资源组 resource-group-1。
# scrgadm -a -g resource-group-1 |
确定是否已注册资源类型。
使用以下命令可显示已注册资源类型的列表。
# scrgadm -p | egrep Type |
如果需要,请注册资源类型。
# scrgadm -a -t SUNW.HAStorage |
创建类型为 HAStorage 的资源 hastorage-1,并定义服务路径。
# scrgadm -a -j hastorage-1 -g resource-group-1 -t SUNW.HAStorage \ -x ServicePaths=/global/resource-group-1,/dev/global/dsk/d5s2,dsk/d6 |
全局设备组名称,例如 nfs-dg
全局设备的路径,例如 /dev/global/dsk/d5s2 或 dsk/d6
群集文件系统装载点,例如 /global/nfs
如果 ServicePaths 包含群集文件系统路径,则全局设备组可能与对应的资源组不在同一位置。
启用 hastorage-1 资源。
# scswitch -e -j hastorage-1 |
将资源(Sun Java System Web Server、Oracle 和 NFS)添加到 resource-group-1,并将其相关性设置为 hastorage-1。
例如,对于 Sun Java System Web Server,请运行以下命令。
# scrgadm -a -j resource -g resource-group-1 -t SUNW.iws \ -x Confdir_list=/global/iws/schost-1 -y Scalable=False \ -y Network_resources_used=schost-1 -y Port_list=80/tcp \ -y Resource_dependencies=hastorage-1 |
检验是否已经正确地配置了资源相关性。
# scrgadm -pvv -j resource | egrep strong |
将 resource-group-1 设置为 MANAGED 状态,并使 resource-group-1 联机。
# scswitch -Z -g resource-group-1 |
HAStorage 资源类型包含另一个扩展特性 AffinityOn,该特性是一个布尔值,用于指定 HAStorage 是否必须对 ServicePaths 中定义的全局设备和群集文件系统执行关系切换。 有关详细信息,请参见 SUNW.HAStorage(5) 手册页。
如果资源组可伸缩,则 HAStorage 和 HAStoragePlus 不允许将 AffinityOn 设置为 TRUE。 HAStorage 和 HAStoragePlus 将检查 AffinityOn 的值,并针对可伸缩资源组将该值内部重置为 FALSE。
Sun Cluster 的未来发行版可能不支持 HAStorage。 HAStoragePlus 支持相同的功能。 要从 HAStorage 升级到 HAStoragePlus,请参见从 HAStorage 升级到 HAStoragePlus。
要为现有资源创建类型为 HAStorage 的资源,请阅读使资源组和磁盘设备组之间的启动同步 ,然后执行以下步骤。
确定是否已注册资源类型。
使用以下命令可显示已注册资源类型的列表。
# scrgadm -p | egrep Type |
如果需要,请注册资源类型。
# scrgadm -a -t SUNW.HAStorage |
创建类型为 HAStorage 的资源 hastorage-1。
# scrgadm -a -g resource-group -j hastorage-1 -t SUNW.HAStorage \ -x ServicePaths= … -x AffinityOn=True |
启用 hastorage-1 资源。
# scswitch -e -j hastorage-1 |
根据需要为每个现有资源设置相关性。
# scrgadm -c -j resource -y Resource_Dependencies=hastorage-1 |
检验是否已经正确地配置了资源相关性。
# scrgadm -pvv -j resource | egrep strong |
Sun Cluster 的未来发行版可能不支持 HAStorage。 HAStoragePlus 支持相同的功能。 要从 HAStorage 升级到 HAStoragePlus,请参见以下各节。
Sun Cluster 的未来发行版可能不支持 HAStorage。 HAStoragePlus 支持相同的功能。 要在使用设备组或 CFS 时从 HAStorage 升级到 HAStoragePlus,请完成以下步骤。
下例使用通过 HAStorage 激活的简单 HA-NFS 资源。 ServicePaths 是磁盘组 nfsdg,AffinityOn 特性为 TRUE。 并且,HA-NFS 资源已将 Resource_Dependencies 设置为 HAStorage 资源。
删除应用程序资源与 HAStorage 的相关性。
# scrgadm -c -j nfsserver-rs -y Resource_Dependencies="" |
禁用 HAStorage 资源。
# scswitch -n -j nfs1storage-rs |
从应用程序资源组删除 HAStorage 资源。
# scrgadm -r -j nfs1storage-rs |
取消注册 HAStorage 资源类型。
# scrgadm -r -t SUNW.HAStorage |
注册 HAStoragePlus 资源类型。
# scrgadm -a -t SUNW.HAStoragePlus |
创建 HAStoragePlus 资源。
要指定文件系统装载点,请输入以下文本。
# scrgadm -a -j nfs1-hastp-rs -g nfs1-rg -t \ SUNW.HAStoragePlus -x FilesystemMountPoints=/global/nfsdata -x \ AffinityOn=True |
要指定全局设备路径,请输入以下文本。
# scrgadm -a -j nfs1-hastp-rs -g nfs1-rg -t \ SUNW.HAStoragePlus -x GlobalDevicePaths=nfsdg -x AffinityOn=True |
您必须使用 HAStoragePlus 的 GlobalDevicePaths 或 FilesystemMountPoints 特性,而不要使用 HAStorage 的 ServicePaths 特性。 FilesystemMountPoint 扩展特性必须与 /etc/vfstab 中指定的序列相匹配。
启用 HAStoragePlus 资源。
# scswitch -e -j nfs1-hastp-rs |
在应用服务器和 HAStoragePlus 之间设置相关性。
# scrgadm -c -j nfsserver-rs -y \ Resource_Depencencies=nfs1=hastp-rs |
Sun Cluster 的未来发行版可能不支持 HAStorage。 HAStoragePlus 支持相同的功能。 要从带有 CFS 的 HAStorage 升级到带有故障转移文件系统 (FFS) 的 HAStoragePlus,请完成以下步骤。
下例使用通过 HAStorage 激活的简单 HA-NFS 资源。 ServicePaths 是磁盘组 nfsdg,AffinityOn 特性为 TRUE。 并且,HA-NFS 资源已将 Resource_Dependencies 设置为 HAStorage 资源。
删除应用程序资源与 HAStorage 资源的相关性。
# scrgadm -c -j nfsserver-rs -y Resource_Dependencies=""' |
禁用 HAStorage 资源。
# scswitch -n -j nfs1storage-rs |
从应用程序资源组删除 HAStorage 资源。
# scrgadm -r -j nfs1storage-rs |
取消注册 HAStorage 资源类型。
# scrgadm -r -t SUNW.HAStorage |
修改 /etc/vfstab 以删除全局标志,并将“引导时装载”更改为“否”。
创建 HAStoragePlus 资源。
要指定文件系统装载点,请输入以下文本。
# scrgadm -a -j nfs1-hastp-rs -g nfs1-rg -t \ SUNW.HAStoragePlus -x FilesystemMountPoints=/global/nfsdata -x \ AffinityOn=True |
要指定全局设备路径,请输入以下文本。
# scrgadm -a -j nfs1-hastp-rs -g nfs1-rg -t \ SUNW.HAStoragePlus -x GlobalDevicePaths=nfsdg -x AffinityOn=True |
您必须使用 HAStoragePlus 的 GlobalDevicePaths 或 FilesystemMountPoints 特性,而不要使用 HAStorage 的 ServicePaths 特性。 FilesystemMountPoint 扩展特性必须与 /etc/vfstab 中指定的序列相匹配。
启用 HAStoragePlus 资源。
# scswitch -e -j nfs1-hastp-rs |
在应用服务器和 HAStoragePlus 之间设置相关性。
# scrgadm -c -j nfsserver-rs -y \ Resource_Depencencies=nfs1=hastp-rs |
HAStoragePlus 资源类型可用于使本地文件系统在 Sun Cluster 环境中具有高可用性。 本地文件系统的各个分区必须位于启用了关系切换的全局磁盘组中,并且必须对 Sun Cluster 环境进行配置以进行故障转移。 这将使用户能够实现以下目的:即让多主机磁盘上的任何文件系统都可通过与多主机磁盘直接相连的任何主机进行访问。 (无法通过 HAStoragePlus 使根文件系统高度可用。) 资源组和设备组的故障恢复设置必须相同。
强烈建议您对某些 I/O 密集型数据服务使用高可用性的本地文件系统,有关如何配置 HAStoragePlus 资源类型的过程已经添加到这些数据服务的注册和配置过程。 有关如何为这些数据服务设置 HAStoragePlus 资源类型的过程,请参见以下各节。
《用于 Oracle 的 Sun Cluster 数据服务指南(适用于 Solaris OS)》中的“注册和配置 Sun Cluster HA for Oracle”。
《用于 Sybase ASE 的 Sun Cluster 数据服务指南(适用于 Solaris OS)》中的“注册和配置 Sun Cluster HA for Sybase ASE”
有关为其他数据服务设置 HAStoragePlus 资源类型的过程,请参见如何设置 HAStoragePlus 资源类型。
在 Sun Cluster 3.0 5/02 中新增了 HAStoragePlus 资源类型。这种新的资源类型与 HAStorage 执行相同的功能,并且同步资源组和磁盘设备组之间的启动。 HAStoragePlus 还具有使本地文件系统具有高可用性的附加功能。 (有关使本地文件系统高度可用的背景信息,请参见启用具有高可用性的本地文件系统 。) 要使用这两个特性,请设置 HAStoragePlus 资源类型。
要设置 HAStoragePlus,本地文件系统的各个分区必须位于启用了关系切换的全局磁盘组中,并且必须对 Sun Cluster 环境进行配置以进行故障转移。
下例使用了简单 NFS 服务,该服务从本地装载的 /global/local-fs/nfs/export/home 目录分配起始目录数据。 此例假定以下条件:
使用装载点 /global/local-fs/nfs 将 UFS 本地文件系统装载到 Sun Cluster 全局设备分区中。
/global/local-fs/nfs 文件系统的 /etc/vfstab 项应将该文件系统指定为本地文件系统,并且将装载引导标志指定为无。
PathPrefix 目录(HA-NFS 将此目录用于维护管理信息和状态信息)位于要装载的同一文件系统的根目录中(例如 /global/local-fs/nfs)。
成为某个群集成员的超级用户。
确定是否已注册资源类型。
使用以下命令可显示已注册资源类型的列表。
# scrgadm -p | egrep Type |
如果需要,请注册资源类型。
# scrgadm -a -t SUNW.nfs |
创建故障转移资源组 nfs-r
# scrgadm -a -g nfs-rg -y PathPrefix=/global/local-fs/nfs |
创建类型为 SUNW.LogicalHostname 的逻辑主机资源。
# scrgadm -a -j nfs-lh-rs -g nfs-rg -L -l log-nfs |
向群集注册 HAStoragePlus 资源类型。
# scrgadm -a -t SUNW.HAStoragePlus |
创建类型为 HAStoragePlus 的资源 nfs-hastp-rs。
# scrgadm -a -j nfs-hastp-rs -g nfs-rg -t SUNW.HAStoragePlus\ -x FilesystemMountPoints=/global/local-fs/nfs \ -x AffinityOn=TRUE |
FilesystemMountPoints 扩展特性可用于指定一个或多个文件系统装载点的列表。 此列表可以由本地和全局文件系统装载点组成。 对于全局文件系统,HAStoragePlus 将忽略引导时装载的标志。
在某个群集节点上使资源组 nfs-rg 联机。
此节点将成为 /global/local-fs/nfs 文件系统的基础全局设备分区的主节点。 文件系统 /global/local-fs/nfs 随后将在此节点上进行本地装载。
# scswitch -Z -g nfs-rg |
向群集注册 SUNW.nfs 资源类型。 创建类型为 SUNW.nfs 的资源 nfs-rs,并指定其与资源 nfs-hastp-rs 的资源相关性。
dfstab.nfs-rs 将显示在 /global/local-fs/nfs/SUNW.nfs 中。
# scrgadm -a -t SUNW.nfs # scrgadm -a -g nfs-rg -j nfs-rs -t SUNW.nfs \ -y Resource_dependencies=nfs-hastp-rs |
必须先使 nfs-hastp-rs 资源联机,然后才能在 nfs 资源中设置相关性。
使资源 nfs-rs 联机。
# scswitch -Z -g nfs-rg |
请确保仅以资源组级别进行切换。 以设备组级别进行切换会使资源组处于混乱状态,从而导致资源组进行故障转移。
这样,只要将服务迁移到新的节点上,/global/local-fs/nfs 的主 I/O 路径就将始终处于联机状态,并与 NFS 服务器处于相同的位置。 在启动 NFS 服务器之前,文件系统 /global/local-fs/nfs 将进行本地装载。
Prioritized Service Management (RGOffload) 允许群集为关键的数据服务自动释放某个节点的资源。 如果启动关键的故障转移数据服务时需要先使非关键的可伸缩数据服务或故障转移数据服务脱机,则请使用 RGOffload。 RGOffload 可用于卸载包含非关键数据服务的资源组。
关键的数据服务必须是故障转移数据服务。所要卸载的数据服务可以是故障转移数据服务,也可以是可伸缩数据服务。
成为某个群集成员的超级用户。
确定是否已注册 RGOffload 资源类型。
使用以下命令可显示一个资源类型列表。
# scrgadm -p|egrep SUNW.RGOffload |
如果需要,请注册资源类型
# scrgadm -a -t SUNW.RGOffload |
在要由 RGOffload 资源卸载的每个资源组中,将 Desired_primaries 设置为零。
# scrgadm -c -g offload-rg -y Desired_primaries=0 |
将 RGOffload 资源添加到关键的故障转移资源组中,并设置扩展特性。
请勿将一个资源组放在多个资源的 rg_to_offload 列表中。 如果将一个资源组放在多个 rg_to_offload 列表中,可能会使该资源组脱机然后再返回联机状态,并反复重复此过程。
有关扩展特性的说明,请参见配置 RGOffload 扩展特性。
# scrgadm -aj rgoffload-resource\ -t SUNW.RGOffload -g critical-rg \ -x rg_to_offload=offload-rg-1, offload-rg-2, ...\ -x continue_to_offload=TRUE \ -x max_offload_retry=15 |
此处列出的是除 rg_to_offload 以外的扩展特性及其缺省值。 rg_to_offload 是一个用逗号分隔的资源组的列表,其中各个资源组之间相互保持独立。 此列表中不能包含正要向其中添加 RGOffload 资源的资源组。
启用 RGOffload 资源。
# scswitch -ej rgoffload-resource |
设置关键的故障转移资源与 RGOffload 资源的相关性。
# scrgadm -c -j critical-resource \ -y Resource_dependencies=rgoffload-resource |
也可以使用 Resource_dependencies_weak。 如果对 RGOffload 资源类型使用 Resource_dependencies_weak,即使在卸载 offload-rg 过程中出现错误,也会启动关键的故障转移资源。
使要卸载的资源组联机。
# scswitch -z -g offload-rg, offload-rg-2, ... -h [nodelist] |
在关键资源组已经脱机的所有节点上,该资源组将保持联机状态。 故障监视器可防止该资源组在具有以下特点的节点上运行:其中的关键资源组仍处于联机状态。
因为要卸载的资源组的 Desired_primaries 已设置为 0(请参见步骤 4),所以“-Z”选项不能使这些资源组联机。
如果关键的故障转移资源组没有联机,请使其联机。
# scswitch -Z -g critical-rg |
此例说明了如何配置 RGOffload 资源 (rgofl)、包含 RGOffload 资源 (oracle_rg) 的关键资源组以及在关键资源组联机时被卸载的可伸缩资源组(IWS-SC、IWS-SC-2)。 此例中的关键资源为 oracle-server-rs。
在此例中,可以在群集“triped”的任何一个节点(phys-triped-1、phys-triped-2、phys-triped-3)上控制 oracle_rg、IWS-SC 和 IWS-SC-2 。
[确定是否已注册 SUNW.RGOffload 资源类型。] # scrgadm -p|egrep SUNW.RGOffload [如果需要,请注册资源类型。] # scrgadm -a -t SUNW.RGOffload [在要由 RGOffload 资源卸载的每个资源组中,将 Desired_primaries 设置为零。] |
通常,在创建 RGOffload 资源时使用命令行 scrgadm -x parameter=value 来配置扩展特性。 有关所有 Sun Cluster 标准特性的详细信息,请参见附录 A,标准特性。
表 2–2 说明了可为 RGOffload 配置的各种扩展特性。 “可调”条目说明何时可以更新该特性。
表 2–2 RGOffload 扩展特性
名称/数据类型 |
缺省值 |
---|---|
rg_to_offload(字符串) |
一个用逗号分隔的资源组的列表。当关键的故障转移资源组在某个节点上启动时,需要在该节点上卸载列表中的资源组。 此列表不应包含相互依赖的资源组。 此特性没有缺省值,因此必须进行设置。
RGOffload 不检查 rg_to_offload 扩展特性中所设置的资源组列表中的相关性循环。 例如,如果资源组 RG-B 在某个方面依赖于 RG-A,则 RG-A 和 RG-B 都不应包含在 rg_to_offload 中。
缺省值: 无 可调:任何时候 |
continue_to_offload(布尔值) |
布尔值,它表示是否在卸载资源组时出错后继续卸载 rg_to_offload 列表中的剩余资源组。
此特性仅用于 START 方法。
缺省值: True 可调:任何时候 |
max_offload_retry(整数) |
如果因重新配置群集或资源组而出现失败,在启动期间尝试卸载资源组的次数。 在连续两次重试之间有 10 秒钟的间隔。
请设置 max_offload_retry,以便
(要卸载的资源组的数目 * max_offload_retry * 10 秒)
小于 RGOffload 资源的 Start_timeout。 如果此数值接近或大于 Start_timeout 的数值,则 RGOffload 资源的 START 方法可能会在完成最大卸载尝试次数之前便超时。
此特性仅用于 START 方法。
缺省值: 15 可调:任何时候 |
RGOffload 资源的故障监视器探测可用于使 rg_to_offload 扩展特性中指定的资源组在控制关键资源的节点上保持脱机状态。 在每个探测周期内,故障监视器将检验所要卸载的资源组 (offload-rg) 在控制关键资源的节点上是否为脱机状态。 如果 offload-rg 在控制关键资源的节点上处于联机状态,则故障监视器将在除控制关键资源的那个节点之外的某个节点上尝试启动 offload-rg,从而使得 offload-rg 在控制关键资源的那个节点上脱机。
因为 offload-rg 的 desired_primaries 被设置为 0,所以在后来变得可用的节点上不会再启动已卸载的资源组。 因此,在使 offload-rg 在控制关键资源的节点上保持脱机的同时,RGOffload 故障监视器会在尽可能多的主节点上尝试启动 offload-rg,直到达到 maximum_primaries 限制。
RGOffload 会尝试启动所有已卸载的资源组,除非它们处于 MAINTENANCE 或 UNMANAGED 状态。 要将资源组置于 UNMANAGED 状态,请使用 scswitch 命令。
# scswitch -u -g resourcegroup |
在每个 Thorough_probe_interval 之后,都将调用故障监视器探测循环。