Sun Cluster 3.0 系统管理指南

第 2 章 关闭和引导群集

本章提供关闭和引导群集及单个群集节点的过程。

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

有关本章中相关过程的高级别说明,请 参见 表 2-1 和 表 2-2。

2.1 群集关闭和引导概述

Sun Cluster scshutdown(1M) 命令以一种有序的方式关闭 群集,并明确地关闭群集。


注意:

请使用 scshutdown,而不要使 用 shutdown 或 halt 命令,以确保正确关闭整个 群集。Solaris shutdown 命令用来关闭单个节点。


scshutdown 命令关闭群集的途径如下:

  1. 使所有运行中的 资源组脱机

  2. 卸装所有群集文件系统

  3. 关闭活动设备服务

  4. 运行 init 0 并将所有节点放到 ok PROM 提示符下

可以在将群集从一个位置移到另一个位置时或在应用程序错误导致数据损坏时执行此操作。


注意:

如有必要,可以引导一个节点,使之不充当群集成员,即以非群集模式引导。这在安装群集 软件或执行某些管理过程时有用。有关详细信息,请参见"2.2.4 如何在非群集模式下引导群集节点"。


.

表 2-1 任务图:关闭和引导群集

任务 

有关说明,请转到... 

停止群集 

- 使用 scshutdown

"2.1.1 如何关闭群集"

通过引导 所有节点来启动群集。 

节点必须有到群集互联的工作连接,才能获得群 集成员的身份。 

"2.1.2 如何引导群集"

关闭群集 

- 使用 scshutdown

在 ok 提示符下,使用 boot 命令分别引导各个节点。

节点必须有到群集互联的工作连接,才能获得群 集成员的身份。 

"2.1.3 如何重新引导群集"

2.1.1 如何关闭群集

  1. (可选)。对于运行 Oracle Parallel Server (OPS) 的群集,请关闭所有 OPS 数据库 实例。

    有关关闭过程,请参阅 Oracle Parallel Server 产品文档。

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

  3. 通过使用 scshutdown(1M) 命令来立即关闭节点。

    从群集中的单一节点上,输入以下命令。


    # scshutdown -g 0 -y
    
  4. 检验是否所有节点均已在 ok PROM 提示符下。

  5. 如有必要,关闭节点电源。

2.1.1.1 示例-关闭群集

以下示例展示停止正常节点操作并将所有节点都关闭到 ok 提示符下时 的控制台输出。-g 0 选项将关闭宽延期设置为 零,-y 自动提供对确认问题的 yes 响应。群集中其他节点的 控制台上也显示关闭消息。


# scshutdown -g 0 -y
Sep  2 10:08:46 phys-schost-1 cl_runtime: WARNING: CMM monitoring disabled.
phys-schost-1#
INIT: New run level: 0
The system is coming down.  Please wait.
System services are now being stopped.
/etc/rc0.d/K05initrgm: Calling scswitch -S (evacuate)
The system is down.
syncing file systems... done
Program terminated
ok 

2.1.1.2 从此处可转到何处

要重新启动已关闭的群集,请参见"2.1.2 如何引导群集"。

2.1.2 如何引导群集

  1. 要启动一个其节点已全部关闭并已放在 ok PROM 提示符 下的群集,请引导每一个节点。

    除非在先后两次关闭之间更改了配置,否则各节点的引导次序无关紧要。如果在先后两次引导之间 更改了配置,则应当首先引导具有最当前配置的节点。


    ok boot
    

    当群集组件被激活时,所引导的节点的控制台上将显示消息。


    注意:

    群集节点必须有到群集互联的工作连接,才能获得群 集成员的身份。


  2. 检验引导的节点是否存在错误及是否联机。

    scstat(1M) 命令报告节点的状态。


    # scstat -n
    

2.1.2.1 示例-引导群集

以下示例展示将节点 phys-schost-1 引导到群集中时的控制台 输出。群集中其他节点的控制台上会显示类似的消息。


ok boot
Rebooting with command: boot 
...
Hostname: phys-schost-1
Booting as part of a cluster
NOTICE: Node 1 with votecount = 1 added.
NOTICE: Node 2 with votecount = 1 added.
NOTICE: Node 3 with votecount = 1 added.
...
NOTICE: Node 1: attempting to join cluster
...
NOTICE: Node 2 (incarnation # 937690106) has become reachable.
NOTICE: Node 3 (incarnation # 937690290) has become reachable.
NOTICE: cluster has reached quorum.
NOTICE: node 1 is up; new incarnation number = 937846227.
NOTICE: node 2 is up; new incarnation number = 937690106.
NOTICE: node 3 is up; new incarnation number = 937690290.
NOTICE: Cluster members:   1  2  3
...
NOTICE: Node 1: joined cluster
...
The system is coming up.  Please wait.
checking ufs filesystems
...
reservation program successfully exiting
Print services started.
volume management starting.
The system is ready.
phys-schost-1 console login: 

2.1.3 如何重新引导群集

运行 scshutdown(1M) 命令来关闭群集,然后在每个节点上 使用 boot 命令来引导群集。

  1. (可选)。对于运行 Oracle Parallel Server (OPS) 的群集,请关闭所有 OPS 数据库 实例。

    有关关闭过程,请参阅 Oracle Parallel Server 产品文档。

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

  3. 通过使用 scshutdown 命令来关闭节点。

    从群集中的单一节点上,输入以下命令。


    # scshutdown -g 0 -y 
    

    此命令将把每个节点都关闭到 ok PROM 提示符下。


    注意:

    群集节点必须有到群集互联的工作连接,才能获得群 集成员的身份。


  4. 引导每个节点。

    除非在先后两次关闭之间更改了配置,否则各节点的引导次序无关紧要。如果在先后两次引导之间 更改了配置,则应当首先引导具有最当前配置的节点。


    ok boot
    

    当群集组件被激活时,所引导的节点的控制台上将显示消息。

  5. 检验引导的节点是否存在错误及是否联机。

    scstat 命令将报告节点的状态。


    # scstat -n
    

2.1.3.1 示例-重新引导群集

以下示例展示停止正常节点操作、将所有节点都关闭到 ok 提示符下 ― 再 重新引导时的控制台输出。-g 0 选项将宽延期设置为 零,-y 自动提供对确认问题的 yes 响应。群集中其他节点的 控制台上也显示关闭消息。


# scshutdown -g 0 -y
Sep  2 10:08:46 phys-schost-1 cl_runtime: WARNING: CMM monitoring disabled.
phys-schost-1#
INIT: New run level: 0
The system is coming down.  Please wait.
...
The system is down.
syncing file systems... done
Program terminated
ok boot
Rebooting with command: boot 
...
Hostname: phys-schost-1
Booting as part of a cluster
...
NOTICE: Node 1: attempting to join cluster
...
NOTICE: Node 2 (incarnation # 937690106) has become reachable.
NOTICE: Node 3 (incarnation # 937690290) has become reachable.
NOTICE: cluster has reached quorum.
...
NOTICE: Cluster members:   1  2  3
...
NOTICE: Node 1: joined cluster
...
The system is coming up.  Please wait.
checking ufs filesystems
...
reservation program successfully exiting
Print services started.
volume management starting.
The system is ready.
phys-schost-1 console login:

2.2 关闭和引导单个群集节点


注意:

联合使用 scswitch 命令 和 Solaris shutdown 命令来关闭单个节点。仅在关闭整个群集时使 用 scshutdown 命令。


表 2-2 任务图:关闭和引导群集节点

任务 

有关说明,请转到... 

停止群集节点 

- 使用 scswitch(1M) 和 shutdown(1M)

"2.2.1 如何关闭群集节点"

通过引导 节点来启动节点。 

节点必须有到群集互联的工作连接,才能获得群集成员的身份。 

"2.2.2 如何引导群集节点"

停止和重新启动(重新引导)群集节点 

- 使用 scswitch 和 shutdown

节点必须有到群集互联的工作连接,才能获得群集成员的身份。 

"2.2.3 如何重新引导群集节点"

引导一个节点,使之不成为群集成员 

- 使用 scswitch 和 shutdown,然后引导 -x

"2.2.4 如何在非群集模式下引导群集节点"

2.2.1 如何关闭群集节点

  1. (可选)。对于运行 Oracle Parallel Server (OPS) 的群集节点,请关闭所有 OPS 数据库 实例。

    有关关闭过程,请参阅 Oracle Parallel Server 产品文档。

  2. 成为要关闭的群集节点上的超级用户。

  3. 使用 scswitch 和 shutdown 两个命令关闭群集节点。

    在要关闭的节点上,输入以下命令。


    # scswitch -S -h node
    # shutdown -g 0 -y
    
  4. 检验群集节点是否已在 ok PROM 提示符下。

  5. 如有必要,请关闭节点电源。

2.2.1.1 示例-关闭群集节点

以下示例展示关闭节点 phys-schost-1 时的控制台输出。-g 0 选项将宽延期设置为 零,-y 自动提供对确认问题的 yes 响应。群集中其他节点的 控制台上也显示此节点的关闭消息。


# scswitch -S -h phys-schost-1
# shutdown -g 0 -y
Sep  2 10:08:46 phys-schost-1 cl_runtime: WARNING: CMM monitoring disabled.phys-schost-1# 
INIT: New run level: 0
The system is coming down.  Please wait.
Notice: rgmd is being stopped.
Notice: rpc.pmfd is being stopped.
Notice: rpc.fed is being stopped.
umount: /global/.devices/node@1 busy
umount: /global/phys-schost-1 busy
The system is down.
syncing file systems... done
Program terminated
ok 

2.2.1.2 从此处可转到何处

要重新启动已关闭的群集节点,请参见"2.2.2 如何引导群集节点"。

2.2.2 如何引导群集节点


注意:

群集节点的启动可能受定额配置的影响。在由两个节点组成的群集中,配置定额设备时 必须使定额总计数为 3(两个节点各用 1 个,定额设备用 1 个)。在这种情况下,当第一个节点 关闭后,第二个节点仍然有定额设备,并以唯一群集成员的身份运行。如果第一个节点要作为一个群集 节点返回到群集中,则第二个节点必须处于打开状态并运行,并且必须有所需要的群集定额计数 (2)。


  1. 要启动已关闭的群集节点,请引导该节点。


    ok boot
    

    当群集组件被激活时,所引导的节点的控制台上和各成员节点的控制台上将显示消息。


    注意:

    群集节点必须有到群集互联的工作连接,才能获得群集成员的身份。


  2. 检验节点是否已引导且没有错误,并且处于联机状态。

    scstat(1M) 命令报告一个节点的状态。


    # scstat -n
    

2.2.2.1 示例-引导群集节点

以下示例展示将节点 phys-schost-1 引导到群集中时的控制台 输出。


ok boot
Rebooting with command: boot 
...
Hostname: phys-schost-1
Booting as part of a cluster
...
NOTICE: Node 1: attempting to join cluster
...
NOTICE: Node 1: joined cluster
...
The system is coming up.  Please wait.
checking ufs filesystems
...
reservation program successfully exiting
Print services started.
volume management starting.
The system is ready.
phys-schost-1 console login:

2.2.3 如何重新引导群集节点

  1. (可选)。对于运行 Oracle Parallel Server (OPS) 的群集节点,请关闭所有 OPS 数据库 实例。

    有关关闭过程,请参阅 Oracle Parallel Server 产品文档。

  2. 成为要关闭的群集节点上的超级用户。

  3. 使用 scswitch 和 shutdown 两个命令关闭群集节点。

    在要关闭的节点上,输入以下命令。


    # scswitch -S -h node
    # shutdown -g 0 -y -i 6
    

    shutdown 的 -i 6 选项使节点 在 ok PROM 提示符下关闭后又重新引导。


    注意:

    群集节点必须有到群集互联的工作连接,才能获得群 集成员的身份。


  4. 检验节点是否已引导且没有错误,并且处于联机状态。

    scstat(1M) 命令报告一个节点的状态。


    # scstat -n
    

2.2.3.1 示例-重新引导一个群集节点

以下示例展示关闭并重新启动节点 phys-schost-1 时的控制台 输出。-g 0 选项将宽延期设置为 零,-y 自动提供对确认问题的 yes 响应。群集中其他节点的 控制台上也显示此节点的关闭和启动消息。


# scswitch -S -h phys-schost-1
# shutdown -g 0 -y -i 6
Sep  2 10:08:46 phys-schost-1 cl_runtime: WARNING: CMM monitoring disabled.
phys-schost-1# 
INIT: New run level: 6
The system is coming down.  Please wait.
System services are now being stopped.
Notice: rgmd is being stopped.
Notice: rpc.pmfd is being stopped.
Notice: rpc.fed is being stopped.
umount: /global/.devices/node@1 busy
umount: /global/phys-schost-1 busy
The system is down.
syncing file systems... done
rebooting...
Resetting ... 
,,,
Sun Ultra 1 SBus (UltraSPARC 143MHz), No Keyboard
OpenBoot 3.11, 128 MB memory installed, Serial #7982421.
Ethernet address 8:0:20:79:cd:55, Host ID: 8079cd55.
...
Rebooting with command: boot
...
Hostname: phys-schost-1
Booting as part of a cluster
...
NOTICE: Node 1: attempting to join cluster
...
NOTICE: Node 1: joined cluster
...
The system is coming up.  Please wait.
The system is ready.
phys-schost-1 console login: 

2.2.4 如何在非群集模式下引导群集节点

可以引导一个节点,使之不充当群集成员,即以非群集模式引导。这在安装群集 软件或执行某些管理过程(如修补一个节点)时有用。

  1. 成员要在非群集模式下启动的节点上的超级用户。

  2. 使用 scswitch 和 shutdown 两个命令关闭节点。


    # scswitch -S -h node
    # shutdown -g 0 -y
    
  3. 检验群集节点是否已在 ok PROM 提示符下。

  4. 使用 boot(1M) 命令加上 -x 选项来在非群集模式下引导节点。


    ok boot -x
    

    该节点的控制台上显示的消息称该节点不是群集的一部分。

2.2.4.1 实例-在非群集模式下引导群集节点

以下示例展示关闭节点 phys-schost-1、然后在非群集模式下重新启动时的控制台 输出。-g -0 选项将宽延期设置为 零,-y 自动提供对确认问题的 yes 响应。群集中其他节点的 控制台上也显示此节点的关闭消息。


# scswitch -S -h phys-schost-1
# shutdown -g 0 -y
Sep  2 10:08:46 phys-schost-1 cl_runtime: WARNING: CMM monitoring disabled.
phys-schost-1# 
...
rg_name = schost-sa-1 ...
offline node = phys-schost-2 ...
num of  node = 0 ...
phys-schost-1# 
INIT: New run level: 0
The system is coming down.  Please wait.
System services are now being stopped.
Print services stopped.
syslogd: going down on signal 15
...
The system is down.
syncing file systems... done
WARNING: node 1 is being shut down.
Program terminated
ok boot -x
...
Not booting as part of cluster
...
The system is ready.
phys-schost-1 console login:

2.3 群集和群集节点问题疑难解答

本节介绍群集和群集节点的日常运行中可能出现的问题的解决方案。

2.3.1 如何检修一个完全 /var 文件系统

Solaris 和 Sun Cluster 软件都向 /var/adm/messages 文件中写入错误消 息;随着时间的推移,这些错误消息会占满 /var 文件系统。如果群集节点 的 /var 文件系统被占满,Sun Cluster 就可能无法在此节点上重新启动。此外,您可能无法登录到此节点。

如果一个节点报告了一个被占满的 /var 文件系统但仍继续 运行 Sun Cluster 服务,则请按以下过程来清理被占满的文件系统。

  1. 成为被占满的文件系统所在的群集节点上的超级用户。/var file system.

  2. 清理被占满的文件系统。

    例如,删除该文件系统中包含的无关紧要的文件。