Sun Cluster 系统管理指南(适用于 Solaris OS)

第 7 章 管理群集

本章讲述了一些过程,用于管理那些会对整个群集产生影响的方面。

以下是本章中包含的过程的列表。

群集管理概述

表 7–1 任务列表:管理群集

任务 

有关说明,请转到 

更改群集的名称 

如何更改群集名称

列出节点的 ID 及其相应的节点名称 

如何将节点 ID 映射到节点名称

允许或拒绝新节点添加到群集中 

如何使用对新群集节点的认证

使用网络时间协议 (NTP) 更改群集的时间 

如何在群集中重置时间

关闭节点,使其转到基于 SPARC 的系统上的 OpenBoot PROM ok 提示下或基于 x86 的系统的引导子系统上

SPARC: 如何在节点上进入 OpenBoot PROM (OBP)

更改专用主机名 

如何更改专用主机名

使群集节点进入维护状态 

如何使节点进入维护状态

使群集节点脱离维护状态 

如何使节点脱离维护状态

向群集添加节点 

如何将节点添加到授权的节点列表中

从群集中删除节点 

如何从群集软件配置中删除节点

如何更改群集名称

根据需要,您可以在初次安装后更改群集的名称。

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

  2. 键入 scsetup 命令。


    # scsetup
    

    显示“Main Menu”。

  3. 要更改群集名称,键入 7(其他群集特性)。

    这时将显示“Other Cluster Properties”菜单。

  4. 从菜单进行选择并按屏幕提示操作。

示例 — 更改群集的名称

以下示例显示了由 scsetup(1M) 实用程序生成的 scconf(1M) 命令将群集更改为新名称 dromedary。


# scconf -c -C cluster=dromedary

如何将节点 ID 映射到节点名称

在 Sun Cluster 安装过程中,会自动给每个节点指定一个唯一的节点 ID 号。分配节点 ID 号时,将按照该节点首次加入群集的顺序进行分配。此号一经分配,就无法更改。节点 ID 号经常在错误消息中使用,标识与消息有关的群集节点。请遵照此过程来确定节点 ID 和节点名称之间的映射。

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

  1. 使用 scconf(1M) 命令可以列出群集配置信息。


    % scconf -pv | grep "Node ID"
    

示例 — 将节点 ID 映射到节点名称

以下示例说明了节点 ID 的指定情况


% scconf -pv | grep “Node ID”
(phys-schost-1) Node ID:                    1
(phys-schost-2) Node ID:                    2
(phys-schost-3) Node ID:                    3

如何使用对新群集节点的认证

Sun Cluster 使您可以确定新节点是否能将自身添加至群集,以及认证的类型。您可以允许任何新的节点通过公共网络加入群集、拒绝新节点加入群集或指定可以加入群集的具体节点。新节点可以通过使用标准 UNIX 或者 Diffie-Hellman (DES) 认证来进行认证。如果选择的是 DES 认证,还必须在节点加入前配置所有需要的加密键。有关详细信息,请参见 keyserv(1M) 和 publickey(4) 手册页。

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

  2. 进入 scsetup(1M) 实用程序。


    # scsetup
    

    显示“Main Menu”。

  3. 要使用群集认证,请键入 6(新节点)。

    这时将显示“New Nodes”菜单。

  4. 从菜单进行选择并按屏幕提示操作。

示例 — 阻止将新机器添加到群集中

以下示例说明了由 scsetup 实用程序生成的scconf 命令。该命令可用于阻止将新机器添加到群集中。


# scconf -a -T node=.

示例 — 允许将所有新机器都添加到群集中

以下示例说明了由 scsetup 实用程序生成的 scconf 命令。该命令可将所有新机器都添加到群集中。


# scconf -r -T all

示例 — 指定要添加到群集中的新机器

以下示例说明了由 scsetup 实用程序生成的 scconf 命令。该命令可使单个新机器添加到群集中。


# scconf -a -T node=phys-schost-4

示例 — 将认证设置为标准 UNIX

以下示例说明了由 scsetup 实用程序生成的 scconf 命令。该命令可将加入到群集中的新节点的认证重置为标准 UNIX 认证。


# scconf -c -T authtype=unix

示例 — 将认证设置为 DES

以下示例说明了由 scsetup 实用程序生成的 scconf 命令。该命令对新加入到群集中的节点采用 DES 认证。


# scconf -c -T authtype=des

注意 –

如果使用的是 DES 认证,还需要先配置所有必要的加密键。然后,节点才能加入到群集中。有关详细信息,请参见 keyserv(1M) 和 publickey(4) 手册页。


如何在群集中重置时间

Sun Cluster 使用网络时间协议 (NTP) 来保持群集节点间的时间同步。节点进行时间同步时,群集会根据需要进行自动调整。有关详细信息,请参阅《Sun Cluster 概念指南(适用于 Solaris OS)》和《Network Time Protocol User's Guide》。


注意 – 注意 –

如果使用的是 NTP,请不要在群集处于打开和运行状态时调整群集时间。包括交互式或在 cron(1M) 脚本中使用 date(1)、rdate(1M) 或 xntpd(1M) 命令。


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

  2. 关闭群集。


    # scshutdown -g0 -y
    

  3. 检验节点是否显示 ok 提示或在“当前引导参数”屏幕中显示 Select (b)oot or (i)nterpreter 提示。

  4. 结合使用 boot(1M) 或 b 命令以及 -x 选项在非群集模式下引导节点。

    • SPARC:


      ok boot -x
      

    • x86:


                            <<< Current Boot Parameters >>>
      Boot path: /pci@0,0/pci8086,2545@3/pci8086,1460@1d/pci8086,341a@7,1/
      sd@0,0:a
      Boot args:
      
      Type    b [file-name] [boot-flags] <ENTER>  to boot with options
      or      i <ENTER>                           to enter boot interpreter
      or      <ENTER>                             to boot with defaults
      
                        <<< timeout in 5 seconds >>>
      Select (b)oot or (i)nterpreter: b -x
      

  5. 在单个节点上,通过运行 date 命令设置日时间。


    # date HHMM.SS
    

  6. 在其他机器上,通过运行 rdate(1M) 命令可以使其与该节点的时间同步。


    # rdate hostname
    

  7. 引导每个节点以重新启动该群集。


    # reboot
    

  8. 检验是否所有的群集节点均已相应更改。

    在每个节点上,运行 date 命令。


    # date
    

SPARC: 如何在节点上进入 OpenBoot PROM (OBP)

如果需要配置或更改 OpenBoot PROM 设置,请使用此过程。

  1. 连接到终端集中器端口。


    # telnet tc_name tc_port_number
    

    tc_name

    指定终端集中器的名称。

    tc_port_number

    指定终端集中器上的端口号。端口号取决于配置。通常,端口 2 和 3(5002 和 5003)供站点上所安装的第一个群集使用。

  2. 通过使用 scswitch(1M) 命令清空所有资源或磁盘设备组,然后使用 shutdown,可以正常关闭群集节点。


    # scswitch -S -h node[,...]
    # shutdown -g0 -y -i0
    


    注意 – 注意 –

    不要在群集控制台上用 send brk 来关闭群集节点。


  3. 执行 OBP 命令。

如何更改专用主机名

完成安装后,请使用此过程更改群集节点的专用主机名。

在第一次安装群集时会指定缺省的专用主机名。缺省专用主机名的格式为 clusternode<nodeid>-priv,例如:clusternode3-priv。只有在专用主机名已经在域中使用的情况下,才能更改它。


注意 – 注意 –

请勿为新的专用主机名指定 IP 地址。群集软件将进行分配。


  1. 在群集内的所有节点上,禁用任何“数据服务”资源和其他可能高速缓存专用主机名的应用程序。


    # scswitch -n -j resource1, resource2
    

    禁用的应用程序应包括:

    • HA-DNS 和 HA-NFS 服务(如果已配置)。

    • 经定制配置为使用专用主机名的任何应用程序。

    • 客户机通过专用互连使用的任何应用程序。

    有关使用 scswitch 命令的信息,请参见 scswitch(1M) 手册页和《Sun Cluster 数据服务规划和管理指南(适用于 Solaris OS)》。

  2. 关闭群集中每个节点上的网络时间协议 (NTP) 守护程序。

    有关 NTP 守护进程的详细信息,请参见 xntpd(1M) 手册页。


    # /etc/initd./xntpd.cluster stop
    

  3. 运行 scsetup(1M) 实用程序以更改相应节点的专用主机名。

    只需在群集中的一个节点上进行这一操作。


    注意 –

    选择新的专用主机名时,请确保该名称对群集节点是唯一的。


  4. 从“Main Menu”上选择 5, Private Hostnames。

  5. 从 “Private Hostnames Menu” 上选择 1, Change a Private Hostname。

    按照提示回答问题。将询问您要更改其专用主机名的节点的名称 (clusternode<nodeid>-priv),以及新的专用主机名。

  6. 刷新名称服务高速缓存。

    在群集中的每个节点上进行这一操作。这样可以避免群集应用程序和数据服务访问旧的专用主机名。


    # nscd -i hosts
    

  7. 编辑每个节点上的 ntp.conf.cluster 文件可将专用主机名更改为新的专用主机名。

    使用任意一种编辑工具均可。

    如果在安装时执行了该过程,也要记得删除已配置的节点的名称;缺省模板预配置十六个节点。通常,每个群集节点上的 ntp.conf.cluster 文件都相同。

  8. 检验是否能成功地从所有群集节点 ping 新的专用主机名。

  9. 重新启动 NTP 守护程序。

    在群集中的每个节点上执行此操作。


    # /etc/initd./xntpd.cluster start
    

  10. 启用在步骤 1 中禁用的所有“数据服务”资源和其他应用程序。


    # scswitch -e -j resource1, resource2
    

    有关使用 scswitch 命令的详细信息,请参见 scswitch 手册页和《Sun Cluster 数据服务规划和管理指南(适用于 Solaris OS)》。

示例 — 更改专用主机名

以下示例说明了在节点 phys-schost-2 上将专用主机名从 clusternode2-priv 更改为 clusternode4-priv 的过程。


[如有需要,禁用所有应用程序和数据服务:]
phys-schost-1# /etc/init.d/xntpd stop
phys-schost-1# scconf -p | grep node
 ...
 Cluster nodes:                  phys-schost-1 phys-schost-2 phys-
 schost-3
 Cluster node name:                                 phys-schost-1
  Node private hostname:                           clusternode1-priv
 Cluster node name:                                 phys-schost-2
  Node private hostname:                           clusternode2-priv
 Cluster node name:                                 phys-schost-3
  Node private hostname:                           clusternode3-priv
 ...
phys-schost-1# scsetup
phys-schost-1# nscd -i hosts
phys-schost-1# vi /etc/inet/ntp.conf
 ...
 peer clusternode1-priv
 peer clusternode4-priv
 peer clusternode3-priv
phys-schost-1# ping clusternode4-priv
phys-schost-1# /etc/init.d/xntpd start
[启用在过程开始时被禁用的所有应用程序和数据服务。]

如何使节点进入维护状态

如果节点需要较长时间脱离服务,请将其置于维护状态。这样,在维护节点时,该节点不参与定额计数。要将群集节点置于维护状态,必须使用 scswitch(1M) 和 shutdown(1M) 关闭节点。


注意 –

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


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

您需要使用 scconf(1M) 命令将群集节点置于维护状态。 scsetup(1M) 实用程序不具备将法定设备置于维护状态的功能。

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

  2. 清空该节点中的任何资源组和磁盘设备组。


     # scswitch -S -h node[,...]
    

    -S

    从指定的节点抽出所有的设备服务和资源组。

    -h node[,...]

    指定切换资源组和设备组所在的节点。

  3. 关闭已抽出的节点。


    # shutdown -g0 -y -i0
    

  4. 成为群集中另一节点上的超级用户,并使在步骤 3 中关闭的节点进入维护状态。


    # scconf -c -q node=node,maintstate
    

    -c

    指定 scconf 命令的更改形式。

    -q

    管理定额选项。

    node=node

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

    maintstate

    使节点进入维护状态。

  5. 检验该群集节点当前是否处于维护状态。


    # scstat -q
    

    如果节点已进入维护状态,则其法定选票 Present 和 Possible 的 Status 应分别为 offline 和 0(零)。

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

以下示例将群集节点置于维护状态并检验了操作结果。scstat -q 的输出信息显示 phys-schost-1 的 Node votes 为 0(零),并且其状态为 Offline。Quorum Summary 还将显示减少后的选票计数。视具体的配置情况而定,Quorum Votes by Device 的输出信息可能也会表明某些定额磁盘设备已脱机。


[在要进入维护状态的节点上:]
phys-schost-1# scswitch -S -h phys-schost-1
phys-schost-1# shutdown -g0 -y -i0

[在群集中另一个节点上:]
phys-schost-2# scconf -c -q node=phys-schost-1,maintstate
phys-schost-2# 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       0        0       Offline
  Node votes:       phys-schost-2       1        1       Online
  Node votes:       phys-schost-3       1        1       Online

-- Quorum Votes by Device --
                    Device Name         Present Possible Status
                    -----------         ------- -------- ------
  Device votes:     /dev/did/rdsk/d3s2  0        0       Offline
  Device votes:     /dev/did/rdsk/d17s2 0        0       Offline
  Device votes:     /dev/did/rdsk/d31s2 1        1       Online

从此处可转到何处

要使节点返回联机状态,请参阅如何使节点脱离维护状态。

如何使节点脱离维护状态

遵照以下过程,可使节点返回联机状态并将定额选票计数重置为缺省值。对于群集节点,缺省定额计数为 1。对于定额设备,缺省定额计数为 N-1,其中 N 为具有定额设备端口的非零选票计数的节点的数目。

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

只要要使处于维护状态的节点脱离维护状态,就应该运行此过程。


注意 – 注意 –

如果您既未指定 globaldev 选项,也未指定 node 选项,则会对整个群集重置定额计数。


  1. 成为群集中的任一节点(该处于维护状态的节点除外)的超级用户。

  2. 是否要使双节点群集中的一个节点脱离维护状态?

  3. 如果使用定额,则从一个不处于维护状态的节点重置群集定额计数。

    重新引导该处于维护状态的节点之前,必须从其他任何一个节点重置其定额计数,否则该节点将可能挂起,继续等待定额。


    # scconf -c -q node=node,reset
    

    -c

    指定 scconf 命令的更改形式。

    -q

    管理定额选项。

    node=node

    指定要重置的节点的名称,例如 phys-schost-1。

    reset

    用于重置定额的更改标志。

  4. 引导要使之脱离维护状态的节点。

  5. 检验定额选票计数。


    # scstat -q
    

    已脱离维护状态的节点应为 online 状态并显示 Present 和 Possible 定额选票的适当选票计数。

示例 — 使群集节点脱离维护状态并重置定额选票计数

以下示例将群集节点及其定额设备的定额计数重置为缺省值并检验结果。scstat -q 的输出信息显示 phys-schost-1 的 Node votes 为 1,并且其状态为 online.。Quorum Summary 也应显示选票计数增加了。


phys-schost-2# scconf -c -q node=phys-schost-1,reset

在 phys-schost-1 上:


phys-schost-1# scstat -q

-- Quorum Summary --

  Quorum votes possible:      6
  Quorum votes needed:        4
  Quorum votes present:       6

-- 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
  Node votes:       phys-schost-3       1        1       Online

-- Quorum Votes by Device --

                    Device Name         Present Possible Status
                    -----------         ------- -------- ------
  Device votes:     /dev/did/rdsk/d3s2  1        1       Online
  Device votes:     /dev/did/rdsk/d17s2 1        1       Online
  Device votes:     /dev/did/rdsk/d31s2 1        1       Online

添加和删除群集节点

下表列出了向现有群集中添加节点时所要执行的任务。要正确地完成此过程,必须按如下所示的顺序执行这些任务。

表 7–2 任务对应关系:向现有群集中添加群集节点

任务 

有关说明,请转到 

在节点上安装主机适配器并检验现有的群集互连是否支持该新节点 

《Sun Cluster Hardware Administration Manual for Solaris OS》

添加共享存储器 

《Sun Cluster Hardware Administration Manual for Solaris OS》

将节点添加到授权的节点列表中 

   - 使用 scsetup。

如何将节点添加到授权的节点列表中

在新的群集节点上安装并配置软件 

   - 安装 Solaris 操作系统和 Sun Cluster 软件 

   - 配置节点成为群集的一部分 

《Sun Cluster 软件安装指南(适用于 Solaris OS)》中的“安装和配置 Sun Cluster 软件”

下表列出了从现有群集中删除节点时所要执行的任务。要正确地完成此过程,必须按如下所示的顺序执行这些任务。


注意 – 注意 –

如果群集正在运行 OPS 配置,则不要使用该过程。此时,如果删除 OPS 配置中的节点,可能会使节点在重新引导时进入应急状态。


表 7–3 任务对应关系:删除群集节点 (5/02)

任务 

有关说明,请转到 

将所有资源组和磁盘设备组移出要删除的节点。 

   - 使用 scswitch(1M)

# scswitch -S -h from-node

从所有资源组中删除节点。 

   - 使用 scrgadm(1M)

《Sun Cluster 数据服务规划和管理指南(适用于 Solaris OS)》

从所有磁盘设备组中删除节点。 

   - 使用 scconf(1M)、metaset(1M) 和 scsetup(1M)

如何从磁盘设备组 (Solstice DiskSuite/Solaris Volume Manager) 删除节点

SPARC: 如何从磁盘设备组 (VERITAS Volume Manager) 删除节点

SPARC: 如何从原始磁盘设备组删除节点

注意:如果所需的辅助设备数目被配置为 2 或更大的数目,必须将其减少到 1。

删除所有已完全连接的定额设备。 

   - 使用 scsetup。

注意:如果要从双节点群集中删除节点,请不要删除定额设备。

 

如何删除定额设备

 

注意,尽管在下一步中删除存储设备之前,您必须先删除定额设备,但是可以在之后立即重新添加该定额设备。 

从节点中删除所有已完全连接的存储设备。  

  - 使用 devfsadm(1M)、scdidadm(1M)。

注意:如果要从双节点群集中删除节点,请不要删除定额设备。如何在节点连接多于两个的群集中删除阵列与单个节点之间的连接

仅将定额设备添加回要保留在群集里的节点上。 

  - 使用 scconf -a -q globaldev=d[n],node=node1,node= node2

scconf(1M)

使要删除的节点进入维护状态。 

   - 使用 scswitch(1M)、shutdown(1M) 和 scconf(1M)。

如何使节点进入维护状态

删除与要删除节点的所有逻辑传输连接(传输电缆和适配器)。 

   - 使用 scsetup。

如何删除Cluster Transport Cable、传输适配器和传输结点

删除与要删除节点连接的所有定额设备。 

   - 使用 scsetup、scconf(1M)。

如何从群集中删除最后一个定额设备

从群集软件配置中删除节点。 

   - 使用 scconf(1M)。

如何从群集软件配置中删除节点

如何将节点添加到授权的节点列表中

在将机器添加到现有群集之前,确保该节点上已正确安装和配置了所有必需的硬件,包括与专用群集互连建立了正确的物理连接。

有关硬件安装的信息,请参阅《Sun Cluster Hardware Administration Manual for Solaris OS》或服务器附带的硬件文档。

该过程通过将机器的节点名称添加到授权的群集节点列表中,使该机器将其自身安装到群集中。

要完成此过程,必须成为一个当前群集成员上的超级用户。

  1. 确保已正确完成添加和删除群集节点任务对应关系中所列出的所有先决硬件安装和配置任务。

  2. 键入 scsetup 命令。


    # scsetup
    

    显示“Main Menu”。

  3. 要访问“New Nodes Menu”,请在“Main Menu”中键入 7。

  4. 要修改授权的列表,请在“New Nodes Menu” 中键入 3,指定要加入群集的机器的名称。

    按照提示将该节点的名称添加到群集中。系统将询问您所要添加的节点的名称。

  5. 检验是否已成功执行该任务。

    如果 scsetup 实用程序准确无误地完成了该任务,它就会显示消息“Command completed successfully”。

  6. 退出 scsetup 实用程序。

  7. 在此新群集节点上安装并配置软件。

    使用 scinstall 或 JumpStartTM 可以完成新节点的安装和配置,如《Sun Cluster 软件安装指南(适用于 Solaris OS)》中所述。

  8. 要防止将任何新的机器添加到群集中,请在“New Nodes Menu”中键入 1。

    按照 scsetup 的提示操作。该选项通知群集忽略通过公共网络来自任何新机器的将其自身添加到群集中的所有请求。

示例 — 将群集节点添加到授权的节点列表中

以下示例说明了将一个名为 phys-schost-3 的节点添加到现有群集的授权节点列表中的过程。


[成为超级用户并执行 scsetup 实用程序。]
# scsetup
Select New nodes>Specify the name of a machine which may add itself.
Answer the questions when prompted.
Verify that the scconf command completed successfully.
 
scconf -a -T node=phys-schost-3
 
    Command completed successfully.
Select Prevent any new machines from being added to the cluster.
Quit the scsetup New Nodes Menu and Main Menu.
[安装群集软件。]

从此处可转到何处

有关添加群集节点的完整任务列表,请参阅表 7–2,“任务表:添加群集节点”。

要将节点添加到现有资源组,请参阅《Sun Cluster 数据服务规划和管理指南(适用于 Solaris OS)》。

如何从群集软件配置中删除节点

执行此过程可以从群集中删除节点。

  1. 确保已正确完成添加和删除群集节点的“删除群集节点”任务表中所列出的所有先决任务。


    注意 –

    确保已从所有资源组、磁盘设备组和定额设备配置中删除了该节点,并使其进入维护状态,然后再继续该过程。


  2. 成为群集中其他节点(即不是要删除的节点)的超级用户。

  3. 从群集中删除该节点。


    # scconf -r -h node=node-name
    

  4. 使用 scstat(1M) 检验节点是否已删除。


     # scstat -n
    

  5. 是否要从删除的节点中卸载 Sun Cluster 软件?

示例 — 从群集软件配置中删除节点

此示例展示了从群集中删除节点 phys-schost-2 的过程。所有命令均是从该群集的另一节点 (phys-schost-1) 上运行的。


[从群集中删除节点:]
phys-schost-1# scconf -r -h node=phys-schost-2
[检验是否已删除节点:]
phys-schost-1# scstat -n
-- Cluster Nodes --
                    Node name           Status
                    ---------           ------
  Cluster node:     phys-schost-1       Online

从此处可转到何处

要从删除的节点中卸载 Sun Cluster 软件,请参阅如何从群集节点中卸载 Sun Cluster 软件。

有关硬件过程,请参见《Sun Cluster Hardware Administration Manual for Solaris OS》。

有关删除群集节点的任务的总列表,请参阅表 7–3。

要向现有群集添加节点,请参阅如何将节点添加到授权的节点列表中。

如何在节点连接多于两个的群集中删除阵列与单个节点之间的连接

按照此过程可以在连接了三个或四个节点的群集中从单个群集节点断开存储阵列。

  1. 备份与要删除的存储阵列相关联的所有数据库表、数据服务和卷。

  2. 确定要断开连接的节点上正在运行的资源组和设备组。


    # scstat
    
  3. 如果需要,将所有资源组和设备组移出要断开连接的节点。


    Caution (SPARC <GT string #only>) – Caution (SPARC <GT string #only>) –

    如果群集运行的是 Oracle Parallel Server/Real Application Clusters 软件, 请在把组移出节点之前先关闭在节点上运行的 Oracle Parallel Server/Real Application Clusters 数据库实例。有关说明,请参阅 Oracle Database Administration Guide。



    # scswitch -S -h from-node
    
  4. 使设备组处于维护状态。

    有关默许 Veritas 共享磁盘组具有 I/O 活动的过程,请参见 VxVM 文档。

    有关使设备组进入维护状态的过程,请参见“管理群集”。

  5. 从设备组中删除节点。

    • 如果您使用的是 VxVM 或原始磁盘,则应使用 scconf(1M) 命令删除设备组。

    • 如果使用 Solstice DiskSuite,应使用 metaset 命令删除设备组。

  6. 如果群集正在运行 HAStorage 或 HAStoragePlus,应将该节点从资源组的节点列表中删除。


    # scrgadm -a -g resource-group -h nodelist 
    

    有关更改资源组的节点列表的详细信息,请参见《Sun Cluster 数据服务规划和管理指南(适用于 Solaris OS)》。


    注意 –

    在执行 scrgadm 时,资源类型、资源组和资源特性的名称不区分大小写。


  7. 如果要删除的存储阵列是节点上连接的最后一个存储阵列,应断开节点与该存储阵列连接的集线器或交换机之间的光缆(否则,应跳过该步骤)。

  8. 是否要从要断开的节点中删除主机适配器?

    • 如果是,应关闭节点并断开节点的电源。

    • 否则跳到步骤 11。

  9. 从节点上拆下主机适配器。

    有关删除主机适配器的过程,请参阅节点附带的文档。

  10. 打开节点的电源,但不引导该节点。

  11. 将节点引导到非群集模式。

    • SPARC:


      ok boot -x
      

    • x86:


                            <<< Current Boot Parameters >>>
      Boot path: /pci@0,0/pci8086,2545@3/pci8086,1460@1d/pci8086,341a@7,1/
      sd@0,0:a
      Boot args:
      
      Type    b [file-name] [boot-flags] <ENTER>  to boot with options
      or      i <ENTER>                           to enter boot interpreter
      or      <ENTER>                             to boot with defaults
      
                        <<< timeout in 5 seconds >>>
      Select (b)oot or (i)nterpreter: b -x
      


    Caution (SPARC <GT string #only>) – Caution (SPARC <GT string #only>) –

    在进行下一步删除 Oracle Parallel Server/Real Application Clusters 软件之前,必须使节点处于非群集模式下,否则该节点会进入应急状态并可能会影响数据的可用性。


  12. SPARC:如果已安装 Oracle Parallel Server/Real Application Clusters 软件,请从断开连接的节点中删除 Oracle Parallel Server/Real Application Clusters 软件包。


    # pkgrm SUNWscucm 
    

    Caution (SPARC <GT string #only>) – Caution (SPARC <GT string #only>) –

    如果不从断开的节点中删除 Oracle Parallel Server/Real Application Clusters 软件,当节点重新进入群集时,将进入应急状态并可能会影响数据的可用性。


  13. 将节点引导到群集模式。

    • SPARC:


      ok boot
      

    • x86:


                            <<< Current Boot Parameters >>>
      Boot path: /pci@0,0/pci8086,2545@3/pci8086,1460@1d/pci8086,341a@7,1/
      sd@0,0:a
      Boot args:
      
      Type    b [file-name] [boot-flags] <ENTER>  to boot with options
      or      i <ENTER>                           to enter boot interpreter
      or      <ENTER>                             to boot with defaults
      
                        <<< timeout in 5 seconds >>>
      Select (b)oot or (i)nterpreter: b
      

  14. 在节点上通过更新 /devices 和 /dev 条目更新设备名称空间。


    # devfsadm -C 
    # scdidadm -C
    
  15. 使设备组重新联机。

    有关使 VERITAS 共享磁盘组联机的过程,请参阅 VERITAS Volume Manager 的文档。

    有关使设备组联机的过程,请参阅使设备组进入维护状态的过程。

如何从群集节点中卸载 Sun Cluster 软件

从完整建立的群集配置断开节点连接之前,请遵照此过程从该群集节点中卸载 Sun Cluster 软件。您可以使用此过程从群集中的其余最后一个节点中卸载软件。


注意 –

如果要从尚未加入群集的节点或仍处于安装模式的节点中卸载 Sun Cluster 软件,请不要执行此过程。而应该转到《Sun Cluster 软件安装指南(适用于 Solaris OS)》中的“如何卸载 Sun Cluster 软件以纠正安装问题”。


  1. 确保您已正确完成任务表中有关删除群集节点的所有必须预先完成的任务。

    请参阅添加和删除群集节点。


    注意 –

    在继续此过程前,请确保您已从所有资源组、设备组和定额设备配置中删除了该节点,并将其置于维护状态,然后从群集中删除该节点。


  2. 成为您要卸载的节点之外某个活动群集成员的超级用户。

  3. 从活动的群集成员中将要卸载的节点添加到群集的节点认证列表中。


    # scconf -a -T node=nodename
    
    -a

    添加

    -T

    指定验证选项

    node=nodename

    指定要添加到验证列表中的节点的名称

    或者,您可以使用 scsetup(1M) 实用程序。有关过程,请参阅如何将节点添加到授权的节点列表中。

  4. 成为要卸载的节点的超级用户。

  5. 将节点重新引导为非群集模式。

    • SPARC:


      # shutdown -g0 -y -i0
      ok boot -x
      

    • x86:


      # shutdown -g0 -y -i0
      ...
                            <<< Current Boot Parameters >>>
      Boot path: /pci@0,0/pci8086,2545@3/pci8086,1460@1d/pci8086,341a@7,1/
      sd@0,0:a
      Boot args:
      
      Type    b [file-name] [boot-flags] <ENTER>  to boot with options
      or      i <ENTER>                           to enter boot interpreter
      or      <ENTER>                             to boot with defaults
      
                        <<< timeout in 5 seconds >>>
      Select (b)oot or (i)nterpreter: b -x
      

  6. 在 /etc/vfstab 文件中,删除除 /global/.devices 全局安装之外所有全局安装的文件系统条目。

  7. 从该节点中卸载 Sun Cluster 软件。

    从与任何 Sun Cluster 软件包均没有关联的目录中运行以下命令。


    # cd /
    # scinstall -r
    

    有关详细信息,请参阅 scinstall(1M) 手册页。如果 scinstall 返回错误消息,请参阅未删除的群集文件系统条目。

  8. 从其他群集设备中断开传输电缆和传输结点(如果有)的连接。

    1. 如果卸载的节点与使用并行 SCSI 接口的存储设备相连接,请在断开传输电缆的连接后将 SCSI 端接器安装到存储设备的开路 SCSI 连接器。

      如果卸载的节点与使用光纤通道接口的存储设备连接,则不需要端接器。

    2. 有关断开连接的过程,请按照随主机适配器和服务器提供的文档执行操作。

纠正错误消息

要纠正前面各节中的错误消息,请执行此步骤。

  1. 尝试使该节点重新加入群集。


    # boot
    

  2. 该节点是否成功加入群集?

    • 如果不是,则继续执行步骤 3。

    • 如果是,请执行以下步骤从磁盘设备组中删除该节点:

    1. 如果该节点成功加入群集,请从其余的磁盘设备组中删除该节点。

      按如何从所有磁盘设备组删除节点中所述的过程进行操作。

    2. 从所有磁盘设备组中删除该节点后,返回如何从群集节点中卸载 Sun Cluster 软件并重复相应过程。

  3. 如果该节点未能重新加入群集,请将该节点的 /etc/cluster/ccr 文件重命名为您所选的任何其他名称,例如 ccr.old。


    # mv /etc/cluster/ccr /etc/cluster/ccr.old
    

  4. 返回如何从群集节点中卸载 Sun Cluster 软件并重复相应过程。

有关节点卸载的疑难解答

本节介绍了运行 scinstall -r 命令时可能收到的错误消息以及相应的纠正措施。

未删除的群集文件系统条目

以下错误消息表示被删除的节点在 vfstab 文件中仍引用了群集文件系统:


Verifying that no unexpected global mounts remain in /etc/vfstab ... failed
scinstall:  global-mount1 is still configured as a global mount.
scinstall:  global-mount1 is still configured as a global mount.
scinstall:  /global/dg1 is still configured as a global mount.
 
scinstall:  It is not safe to uninstall with these outstanding errors.
scinstall:  Refer to the documentation for complete uninstall instructions.
scinstall:  Uninstall failed.

要纠正此错误,请返回如何从群集节点中卸载 Sun Cluster 软件并重复相应的过程。在重新运行 scinstall -r 命令之前,请确保已成功完成此过程中的步骤 6。

未从磁盘设备组的列表中删除

以下错误消息表示被删除的节点仍位于某个磁盘设备组的潜在主节点列表中:


Verifying that no device services still reference this node ... failed
scinstall:  This node is still configured to host device service "service".
scinstall:  This node is still configured to host device service "service2".
scinstall:  This node is still configured to host device service "service3".
scinstall:  This node is still configured to host device service "dg1".
 
scinstall:  It is not safe to uninstall with these outstanding errors.          
scinstall:  Refer to the documentation for complete uninstall instructions.
scinstall:  Uninstall failed.