Sun Cluster 3.0 系统管理指南

4.1 定额管理概述

可以使用 scconf(1M) 命令来执行所有的定额管理过程。此外,有些 过程可通过使用 scsetup(1M) 交互式的公用程序来完成。在本章中适当的地方 使用了 scsetup 命令来描述定额设备。

如果任何与定额相关的 scconf 命令中断或发生失败,则定额配置信息可能在 群集配置数据库中变得不一致。如果发生这种情况,或者重新运行此命令,或者在 运行 scconf 命令时使用 reset 选项来重置定额配置。


注意:

scsetup(1M) 公用程序是 scconf(1M) 命令 的一个交互式的接口。当 scsetup 运行时,它生 成 scconf 命令。生成的这些命令展示在这些过程结束部分的示例中。


有两个命令可用来查看定额配置:scstat -q 选项和 scconf -p。本章中的多数验证步骤 使用 scconf,但如果您发现 scstat -q 的输出更有用,则可以使用后者。

表 4-1 任务图:管理定额

任务 

有关说明,请转到... 

为群集添加定额设备 

- 使用 scsetup

"4.1.1 如何添加定额设备"

从群集移除定额设备 

- 使用 scsetup(以生成 scconf)

"4.1.2 如何移除定额设备"

从群集中移除最后一个定额设备 

- 使用 scsetup(以生成 scconf)

"4.1.3 如何从群集中移除最后一个定额设备"

将定额设备重新放回到群集中 

- 使用添加和移除过程 

"4.1.4 如何替换定额设备"

让定额设备进入维护状态 

(在维护状态下,定额设备不通过参与投票来建立定额。) 

- 使用 scsetup(以生成 scconf)

"4.1.5 如何使定额设备进入维护状态"

让群集节点进入维护状态 

(在维护状态下,节点不参与为建立定额而进行的投票。) 

- 使用 scsetup(以生成 scconf)

"4.1.6 如何使群集节点进入维护状态"

将定额配置重置为缺省状态 

- 使用 scsetup(以生成 scconf)

"4.1.7 如何使节点脱离维护状态并重置定额"

列出定额设备和投票计数 

- 使用 scconf

"4.1.8 如何列出定额配置"

4.1.1 如何添加定额设备

要完成此过程,请按各节点共享的设备 ID (DID) 来识别一个磁盘设备。使 用 scdidadm -L 命令来查看 DID 名称列表。有关详细信息,请参考 scdidadm(1M)

有关此过程中使用的命令的信息,请参见 scsetup(1M)scconf(1M)

  1. 成为群集中一个节点上的超级用户。

  2. 输入 scsetup 公用程序。


    # scsetup
    

    出现主菜单。

  3. 要使用定额设备,请输入 1(定额)。

    出现定额菜单。

  4. 要添加一个定额设备,请输入 1(添加定额磁盘)。

    按说明操作并输入将用作定额设备的设备。

  5. 检验是否已添加定额设备。


    # scstat -q 
    
  6. 对每组共享一个存储器群的节点都重复步骤 3步骤 5

4.1.1.1 示例-添加定额设备

以下示例展示添加定额设备时由 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

4.1.2 如何移除定额设备

一个定额磁盘移除后,它便不再参与投票来建立定额。注意,所有由两个节点组成的群集均需要至少配置一个定额设备。如果要移除的是群集上的最后一个定额设备,则 scconf(1M) 将无法从配置中移除该设备。


注意:

如果打算移除的设备是群集中的最后一个定额设备,请参见"4.1.3 如何从群集中移除最后一个定额设备"中介绍的过程。


  1. 成为群集中一个节点上的超级用户。

  2. 确定要移除的定额设备。


    # scconf -pv | grep Quorum
    
  3. 执行 scsetup(1M) 公用程序。


    # scsetup
    

    出现主菜单。

  4. 通过输入 1(定额)来访问定额菜单,以使用定额设备。

  5. 通过输入 2(移除定额磁盘)来移除定额设备。

    回答移除进程中显示的问题。

  6. 退出 scsetup

  7. 检验是否已移除定额设备。


    # scstat -q
    

4.1.2.1 示例-移除一个定额设备

此示例展示如何从配置了两个或更多定额设备的群集中移除一个定额设备。


[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.3 如何从群集中移除最后一个定额设备

如果打算移除的设备不是群集中的最后一个定额设备,请使用前面的 过程,即 "4.1.2 如何移除定额设备"


注意:

所有由两个节点组成的群集均至少需要一个配置的定额设备。如果要移除的设备是由两个 节点组成的群集中的最后一个定额设备,则必须将群集置入安装模式,然 后 scconf(1M) 才允许您从配置中移除此设备。只有在从群集中移除一个节点时,才应当这样做。


  1. 成为群集中一个节点上的超级用户,并使要移除的节点进入维护模式。

    请参见"4.1.6 如何使群集节点进入维护状态"

  2. 使群集进入安装模式。


    # scconf -c -q installmode
    
  3. 使用 scconf 命令移除定额设备。


    # scconf -r -q globaldev=device
    
  4. 检验是否已移除定额设备。


    # scstat -q
    

4.1.3.1 示例-移除最后一个定额设备

此示例展示如何移除群集配置中所剩的最后一个定额设备。


[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.4 如何替换定额设备

  1. 在当前包括将被替换的磁盘的存储器群中配置一个新的定额设备。

    需要首先将一个新的定额设备添加到配置中,来替换旧的设备。要为群集添加一个新的定额设备,请参 见"4.1.1 如何添加定额设备"

  2. 移除用作定额设备的失败的磁盘。

    要从配置中移除旧的定额设备,请参见"4.1.2 如何移除定额设备"

  3. 替换失败的磁盘。

    请参考 Sun Cluster 3.0 Hardware Guide 中适用于您的磁盘群的硬件操作过程。

4.1.5 如何使定额设备进入维护状态

如果在较长的一段时间内不使用一个定额设备,就请使它进入维护状态。这样,设备的定额投票计数就会设置为零,因而在维护该设备时不会增加投票计数。

要使定额设备进入维护状态,需要使用 scconf(1M) 命令。scsetup 公用 程序没有能力使定额设备进入维护状态。


注意:

所有由两个节点组成的群集均至少需要一个配置的定额设备。如果是由两个节点组成的群集 中的最后一个定额设备,则 scconf 将无法使该设备进入维护状态。


  1. 成为群集中一个节点上的超级用户。

  2. 使定额设备进入维护状态。


    # scconf -c -q globaldev=device,maintstate
    
    -c

    指定 scconf 命令的更改形式。

    -q

    管理定额选项。

    globaldev=device

    指定要更改的磁盘设备的 DID 名称,例如 d4

    maintstate

    使节点进入维护状态。

  3. 检验定额设备当前是否处于维护状态。

    您已使其进入维护模式的设备应当显示定额设备投票为零。


    # scconf -p | grep -i quorum
    

4.1.5.1 示例-使定额设备进入维护状态

以下示例显示如何使定额设备进入维护状态及如何检验其结果。


# 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.5.2 从此处可转到何处

当您完成定额设备上的维护过程后,如果想重新启用定额设备,请参 见"4.1.7 如何使节点脱离维护状态并重置定额"以将定额设备的选票重置为缺省值。

4.1.6 如何使群集节点进入维护状态

如果在较长的一段时间内不使用一个群集节点,就请使它进入维护状态。这样,在维护节点 时,节点不参与投票。要使群集节点进入维护状态,必须 使用 scswitch(1M)shutdown(1M) 来关闭该节点。


注意:

使用 Solaris shutdown 命令来关闭单独一个节点。只有在关闭整个群集 时,才应使用scshutdown 命令。


当 关闭一个群集节点并使之进入维护状态后,则配置了到该节点的端口的所有定额设备的定额选票计数均减去 1。当节点脱离维护模式并返回联机状态后,节点和定额设备选票计数会增加 1。

要使群集节点进入维护状态,需要使用 scconf(1M)scsetup 公用程序没有能力使定额设备进入维护状态。

  1. 成为要进入维护状态的节点上的超级用户。

  2. 在要进入维护状态的节点上,请使用 scswitch 来 使所有资源组和磁盘设备组撤离节点,然后使用 shutdown 关闭该节点并将它群集。


    phys-schost-1# scswitch -S -h node
    phys-schost-1# shutdown -g 0 -y
    
  3. 成为另一节点上的超级用户,并使步骤 2中关闭的节点进入维护状态。


    phys-schost-2# scconf -c -q node=node,maintstate
    
    -c

    指定 scconf 命令的更改形式。

    -q

    管理定额选项。

    node=node

    指定要更改的节点名称或节点 ID。

    maintstate

    使节点进入维护状态。

  4. 检验群集节点目前是否处于维护状态。


    phys-schost-2# scconf -p | grep -i vote
    

4.1.6.1 示例-使群集节点进入维护状态

以下示例使群集节点移入维护状态并检验其结果。


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.6.2 从此处可转到何处

完成维护过程后,请参见"4.1.7 如何使节点脱离维护状态并重置定额"以将定额选票重置回缺省值。

4.1.7 如何使节点脱离维护状态并重置定额

当一个定额设备或节点进入维护状态后,如果要使其返回联机状态,请使用以下过程来将定额 选票计数重置为缺省值。对于群集节点,缺省定额计数为 1。对于定额设备,缺省定额计数 为 N-1,其中 N 是拥有非零选票计数的 节点数,这些节点拥有到定额设备的端口。

当一个节点进入维护状态后,节点的定额选票计数会减去 1。所有配置了到该节点的端口的定额 设备也将减少其定额选票计数。重置定额设备并使一个节点脱离维护状态后,节点的定额选票计数和 定额设备选票计数均会增加 1。

当一个定额设备进入维护状态后,如果您想使它脱离维护状态,则可随时运行此过程。


小心:小心:

如果 globaldevnode 两个选项都不 指定,则会在整个群集范围内重置定额计数。


  1. 成为群集中一个节点上的超级用户。

  2. 重置定额计数。

    此样例展示要为定额设备重置的定额计数。有关使用群集节点而不使用定额设备的样例,请 参见"4.1.7.2 示例-重置定额选票计数(群集节点和定额设备)"

    对于一个群集节点,请在重新引导节点前从另一节点重置定额计数,否则它可能会挂起,一直等待定额。


    # scconf -c -q globaldev=device,reset
    
    -c

    指定 scconf 命令的更改形式。

    -q

    管理定额选项。

    globaldev=device

    指定要重置的定额设备的 DID 名称,例如 d4

    reset

    更改标志位,用于重置定额。

  3. 如果因一个节点处于维护状态而重置定额计数,则请重新引导节点。

  4. 检验定额选票计数。


    # scconf -p | grep -i quorum
    

4.1.7.1 示例-重置定额选票计数(定额设备)

以下示例将一个定额设备的定额计数重置为缺省值并检验其结果。


# 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): 

4.1.7.2 示例-重置定额选票计数(群集节点和定额设备)

以下示例将群集节点及其定额设备的定额计数重置回其缺省值并检验其结果。


# 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

4.1.8 如何列出定额配置

要列出定额配置,您不必成为超级用户。

    请使 用 scconf(1M) 来列出定额配置。


    # scconf -p | grep -i quorum
    

4.1.8.1 示例-列出定额配置


# 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):