本章提供在 Sun Cluster 中管理定额的过程。
以下是本章中包含的过程的列表。
本章中展示的多数示例来自一个由三个节点组成的群集。
有关定额和定额设备的概念性概述,请参见 Sun Cluster 3.0 概念 文档。
可以使用 scconf(1M) 命令来执行所有的定额管理过程。此外,有些 过程可通过使用 scsetup(1M) 交互式的公用程序来完成。在本章中适当的地方 使用了 scsetup 命令来描述定额设备。
如果任何与定额相关的 scconf 命令中断或发生失败,则定额配置信息可能在 群集配置数据库中变得不一致。如果发生这种情况,或者重新运行此命令,或者在 运行 scconf 命令时使用 reset 选项来重置定额配置。
scsetup(1M) 公用程序是 scconf(1M) 命令 的一个交互式的接口。当 scsetup 运行时,它生 成 scconf 命令。生成的这些命令展示在这些过程结束部分的示例中。
有两个命令可用来查看定额配置:scstat -q 选项和 scconf -p。本章中的多数验证步骤 使用 scconf,但如果您发现 scstat -q 的输出更有用,则可以使用后者。
表 4-1 任务图:管理定额
任务 |
有关说明,请转到... |
---|---|
为群集添加定额设备 - 使用 scsetup | |
从群集移除定额设备 - 使用 scsetup(以生成 scconf) | |
从群集中移除最后一个定额设备 - 使用 scsetup(以生成 scconf) | |
将定额设备重新放回到群集中 - 使用添加和移除过程 | |
让定额设备进入维护状态 (在维护状态下,定额设备不通过参与投票来建立定额。) - 使用 scsetup(以生成 scconf) | |
让群集节点进入维护状态 (在维护状态下,节点不参与为建立定额而进行的投票。) - 使用 scsetup(以生成 scconf) | |
将定额配置重置为缺省状态 - 使用 scsetup(以生成 scconf) | |
列出定额设备和投票计数 - 使用 scconf |
要完成此过程,请按各节点共享的设备 ID (DID) 来识别一个磁盘设备。使 用 scdidadm -L 命令来查看 DID 名称列表。有关详细信息,请参考 scdidadm(1M)。
有关此过程中使用的命令的信息,请参见 scsetup(1M) 和 scconf(1M)。
成为群集中一个节点上的超级用户。
输入 scsetup 公用程序。
# scsetup |
出现主菜单。
要使用定额设备,请输入 1(定额)。
出现定额菜单。
要添加一个定额设备,请输入 1(添加定额磁盘)。
按说明操作并输入将用作定额设备的设备。
检验是否已添加定额设备。
# scstat -q |
以下示例展示添加定额设备时由 scsetup 生成 的 scconf 命令和一个验证步骤。
# scconf -a -q globaldev=d20 # scstat -q -- Quorum Summary -- Quorum votes possible: 4 Quorum votes needed: 3 Quorum votes present: 4 -- Quorum Votes by Node -- Node Name Present Possible Status --------- ------- -------- ------ Node votes: phys-schost-1 1 1 Online Node votes: phys-schost-2 1 1 Online -- Quorum Votes by Device -- Device Name Present Possible Status Owner ----------- ------- -------- ------ ----- Device votes: /dev/did/rdsk/d3s2 1 1 Online phys-schost-1 Device votes: /dev/did/rdsk/d4s2 1 1 Online phys-schost-1 |
一个定额磁盘移除后,它便不再参与投票来建立定额。注意,所有由两个节点组成的群集均需要至少配置一个定额设备。如果要移除的是群集上的最后一个定额设备,则 scconf(1M) 将无法从配置中移除该设备。
如果打算移除的设备是群集中的最后一个定额设备,请参见"4.1.3 如何从群集中移除最后一个定额设备"中介绍的过程。
成为群集中一个节点上的超级用户。
确定要移除的定额设备。
# scconf -pv | grep Quorum |
执行 scsetup(1M) 公用程序。
# scsetup |
出现主菜单。
通过输入 1(定额)来访问定额菜单,以使用定额设备。
通过输入 2(移除定额磁盘)来移除定额设备。
回答移除进程中显示的问题。
退出 scsetup。
检验是否已移除定额设备。
# scstat -q |
此示例展示如何从配置了两个或更多定额设备的群集中移除一个定额设备。
[Become superuser on a node and place the node to be removed in maintenance state.] [Determine the quorum device to be removed:] # scconf -pv | grep Quorum [Execute the scsetup utility:] # scsetup [Select option 1:] *** Main Menu *** Please select from one of the following options: 1) Quorum ... Option: 1 [Select option 2:] *** Quorum Menu *** Please select from one of the following options: ... 2) Remove a quorum disk ... Option: 2 [Answer the questions when prompted:] >>> Remove a Quorum Disk <<< ... Is it okay to continue (yes/no) [yes]? <Return> Which quorum disk do you want to remove (d<N>)? d4 Is it okay to proceed with the update (yes/no) [yes]? <Return> scconf -r -q globaldev=d4 Command completed successfully. Hit ENTER to continue: [Quit the scsetup Quorum Menu and Main Menu:] ... Option: q [Verify the quorum device is removed:] # scstat -q -- Quorum Summary -- Quorum votes possible: 3 Quorum votes needed: 2 Quorum votes present: 3 -- Quorum Votes by Node -- Node Name Present Possible Status --------- ------- -------- ------ Node votes: phys-schost-1 1 1 Online Node votes: phys-schost-2 1 1 Online -- Quorum Votes by Device -- Device Name Present Possible Status Owner ----------- ------- -------- ------ ----- Device votes: /dev/did/rdsk/d3s2 1 1 Online phys-schost-1 |
如果打算移除的设备不是群集中的最后一个定额设备,请使用前面的 过程,即 "4.1.2 如何移除定额设备"。
所有由两个节点组成的群集均至少需要一个配置的定额设备。如果要移除的设备是由两个 节点组成的群集中的最后一个定额设备,则必须将群集置入安装模式,然 后 scconf(1M) 才允许您从配置中移除此设备。只有在从群集中移除一个节点时,才应当这样做。
成为群集中一个节点上的超级用户,并使要移除的节点进入维护模式。
使群集进入安装模式。
# scconf -c -q installmode |
使用 scconf 命令移除定额设备。
# scconf -r -q globaldev=device |
检验是否已移除定额设备。
# scstat -q |
此示例展示如何移除群集配置中所剩的最后一个定额设备。
[Become superuser on any node.] [Place the cluster in install mode:] # scconf -c -q installmode [Remove the quorum device:] # scconf -r -q globaldev=d3 [Verify the quorum device has been removed:] # scstat -q -- Quorum Summary -- Quorum votes possible: 2 Quorum votes needed: 2 Quorum votes present: 2 -- Quorum Votes by Node -- Node Name Present Possible Status --------- ------- -------- ------ Node votes: phys-schost-1 1 1 Online Node votes: phys-schost-2 1 1 Online -- Quorum Votes by Device -- Device Name Present Possible Status Owner ----------- ------- -------- ------ ----- |
在当前包括将被替换的磁盘的存储器群中配置一个新的定额设备。
需要首先将一个新的定额设备添加到配置中,来替换旧的设备。要为群集添加一个新的定额设备,请参 见"4.1.1 如何添加定额设备"。
移除用作定额设备的失败的磁盘。
要从配置中移除旧的定额设备,请参见"4.1.2 如何移除定额设备"。
替换失败的磁盘。
请参考 Sun Cluster 3.0 Hardware Guide 中适用于您的磁盘群的硬件操作过程。
如果在较长的一段时间内不使用一个定额设备,就请使它进入维护状态。这样,设备的定额投票计数就会设置为零,因而在维护该设备时不会增加投票计数。
要使定额设备进入维护状态,需要使用 scconf(1M) 命令。scsetup 公用 程序没有能力使定额设备进入维护状态。
所有由两个节点组成的群集均至少需要一个配置的定额设备。如果是由两个节点组成的群集 中的最后一个定额设备,则 scconf 将无法使该设备进入维护状态。
成为群集中一个节点上的超级用户。
使定额设备进入维护状态。
# scconf -c -q globaldev=device,maintstate |
指定 scconf 命令的更改形式。
管理定额选项。
指定要更改的磁盘设备的 DID 名称,例如 d4。
使节点进入维护状态。
检验定额设备当前是否处于维护状态。
您已使其进入维护模式的设备应当显示定额设备投票为零。
# scconf -p | grep -i quorum |
以下示例显示如何使定额设备进入维护状态及如何检验其结果。
# scconf -c -q globaldev=d20,maintstate # scconf -p | grep -i quorum Node quorum vote count: 1 Node quorum vote count: 1 Quorum devices: d20 Quorum device name: d20 Quorum device votes: 0 Quorum device enabled: no Quorum device path: /dev/did/rdsk/d20s2 Quorum device hosts (enabled): phys-schost-2 phys-schost-3 Quorum device hosts (disabled): |
当您完成定额设备上的维护过程后,如果想重新启用定额设备,请参 见"4.1.7 如何使节点脱离维护状态并重置定额"以将定额设备的选票重置为缺省值。
如果在较长的一段时间内不使用一个群集节点,就请使它进入维护状态。这样,在维护节点 时,节点不参与投票。要使群集节点进入维护状态,必须 使用 scswitch(1M) 和 shutdown(1M) 来关闭该节点。
使用 Solaris shutdown 命令来关闭单独一个节点。只有在关闭整个群集 时,才应使用scshutdown 命令。
当 关闭一个群集节点并使之进入维护状态后,则配置了到该节点的端口的所有定额设备的定额选票计数均减去 1。当节点脱离维护模式并返回联机状态后,节点和定额设备选票计数会增加 1。
要使群集节点进入维护状态,需要使用 scconf(1M)。scsetup 公用程序没有能力使定额设备进入维护状态。
成为要进入维护状态的节点上的超级用户。
在要进入维护状态的节点上,请使用 scswitch 来 使所有资源组和磁盘设备组撤离节点,然后使用 shutdown 关闭该节点并将它群集。
phys-schost-1# scswitch -S -h node phys-schost-1# shutdown -g 0 -y |
成为另一节点上的超级用户,并使步骤 2中关闭的节点进入维护状态。
phys-schost-2# scconf -c -q node=node,maintstate |
指定 scconf 命令的更改形式。
管理定额选项。
指定要更改的节点名称或节点 ID。
使节点进入维护状态。
检验群集节点目前是否处于维护状态。
phys-schost-2# scconf -p | grep -i vote |
以下示例使群集节点移入维护状态并检验其结果。
phys-schost-1# scswitch -S -h phys-schost-1 phys-schost-1# shutdown -g 0 -y phys-schost-2# scconf -c -q node=phys-schost-1,maintstate phys-schost-2# scconf -p | grep -i quorum Node quorum vote count: 1 Quorum devices: d20 Quorum device name: d20 Quorum device votes: 1 Quorum device enabled: yes Quorum device path: /dev/did/rdsk/d5s2 Quorum device hosts (disabled): phys-schost-1 Quorum device hosts (enabled): phys-schost-2 |
完成维护过程后,请参见"4.1.7 如何使节点脱离维护状态并重置定额"以将定额选票重置回缺省值。
当一个定额设备或节点进入维护状态后,如果要使其返回联机状态,请使用以下过程来将定额 选票计数重置为缺省值。对于群集节点,缺省定额计数为 1。对于定额设备,缺省定额计数 为 N-1,其中 N 是拥有非零选票计数的 节点数,这些节点拥有到定额设备的端口。
当一个节点进入维护状态后,节点的定额选票计数会减去 1。所有配置了到该节点的端口的定额 设备也将减少其定额选票计数。重置定额设备并使一个节点脱离维护状态后,节点的定额选票计数和 定额设备选票计数均会增加 1。
当一个定额设备进入维护状态后,如果您想使它脱离维护状态,则可随时运行此过程。
如果 globaldev 和 node 两个选项都不 指定,则会在整个群集范围内重置定额计数。
成为群集中一个节点上的超级用户。
重置定额计数。
此样例展示要为定额设备重置的定额计数。有关使用群集节点而不使用定额设备的样例,请 参见"4.1.7.2 示例-重置定额选票计数(群集节点和定额设备)"。
对于一个群集节点,请在重新引导节点前从另一节点重置定额计数,否则它可能会挂起,一直等待定额。
# scconf -c -q globaldev=device,reset |
指定 scconf 命令的更改形式。
管理定额选项。
指定要重置的定额设备的 DID 名称,例如 d4。
更改标志位,用于重置定额。
如果因一个节点处于维护状态而重置定额计数,则请重新引导节点。
检验定额选票计数。
# scconf -p | grep -i quorum |
以下示例将一个定额设备的定额计数重置为缺省值并检验其结果。
# scconf -c -q globaldev=d20,reset # scconf -p | grep -i quorum Node quorum vote count: 1 Node quorum vote count: 1 Quorum devices: d20 Quorum device name: d20 Quorum device votes: 1 Quorum device enabled: yes Quorum device path: /dev/did/rdsk/d20s2 Quorum device hosts (enabled): phys-schost-2 phys-schost-3 Quorum device hosts (disabled): |
以下示例将群集节点及其定额设备的定额计数重置回其缺省值并检验其结果。
# scconf -c -q node=phys-schost-1,reset # scconf -pv | grep -i vote Node quorum vote count: 1 Node quorum vote count: 1 Node quorum vote count: 1 (d20) Quorum device votes: 1 (d21) Quorum device votes: 1 |
要列出定额配置,您不必成为超级用户。
请使 用 scconf(1M) 来列出定额配置。
# scconf -p | grep -i quorum |
# scconf -p | egrep "Quorum | vote" Node quorum vote count: 1 Node quorum vote count: 1 Quorum devices: d20 Quorum device name: d20 Quorum device votes: 1 Quorum device enabled: yes Quorum device path: /dev/did/rdsk/d20s2 Quorum device hosts (enabled): phys-schost-2 phys-schost-3 Quorum device hosts (disabled): |