本章提供以下有关管理全局群集和区域群集的信息,并且包括使用 Sun™ Cluster 管理工具的过程:
对于 Solaris™ 10 OS,全局群集仅由一个或多个全局群集投票节点以及(可选)零个或更多个全局群集非投票节点组成。全局群集还可以选择包括 Solaris 8 OS、Solaris 9 OS、LINUX OS 或固有标记的非全局区域,这些区域不是节点,而是具有高可用性的容器(作为资源)。区域群集需要全局群集。有关区域群集的一般性信息,请参见《Sun Cluster Concepts Guide for Solaris OS》。
对于 Solaris 10 OS,区域群集仅包括一个或多个群集标记投票节点。区域群集依赖于全局群集,因此需要全局群集。全局群集不包含区域群集。没有全局群集,您将无法配置区域群集。区域群集最多在一台计算机上有一个区域群集节点。只有当同一计算机上的全局群集投票节点能够继续正常工作时,区域群集节点才能继续正常工作。如果计算机上的全局群集投票节点发生故障,则该计算机上的所有区域群集节点也将发生故障。
Sun Cluster 高可用性环境能够确保关键应用程序对最终用户可用。系统管理员的职责就是保证 Sun Cluster 配置的稳定性和可操作性。
在开始执行管理任务之前,请先熟悉《Sun Cluster 软件安装指南(适用于 Solaris OS)》与《Sun Cluster Concepts Guide for Solaris OS》中的规划信息。有关创建区域群集的说明,请参见《Sun Cluster 软件安装指南(适用于 Solaris OS)》中的“配置区域群集”。对 Sun Cluster 的管理分为几类任务,分别在以下手册中进行说明。
标准任务,用于定期(甚至每天)管理和维护全局群集或区域群集。本指南中讲述了这些任务。
数据服务任务,比如安装、配置和更改特性。这些任务在《Sun Cluster Data Services Planning and Administration Guide for Solaris OS》中介绍。
服务任务,比如添加或检修存储或网络硬件。这些任务在《Sun Cluster 3.1 - 3.2 Hardware Administration Manual for Solaris OS》中介绍。
通常,可以在群集运行时执行 Sun Cluster 管理任务。如果需要从群集中去掉某个节点乃至关闭该节点,您可以在其余节点继续执行群集操作的同时执行该操作。对于 Solaris 10,除非另有说明,否则 Sun Cluster 管理任务应在全局群集投票节点中执行。对于那些要求关闭整个群集的操作过程,应通过将停机时间安排在正常工作时间之外来尽量减小对系统的影响。如果打算关闭群集或某个群集节点,请提前通知用户。
在区域群集中还可以运行两个 Sun Cluster 管理命令(cluster 和 clnode)。但是,这些命令的作用范围仅限于发出命令的区域群集。例如,在全局群集投票节点中使用 cluster 命令时,将检索有关全局投票群集和所有区域群集的全部信息。在区域群集中使用 cluster 命令时,将检索有关该特定区域群集的信息。
当您在投票节点中使用 clzonecluster 命令时,该命令将影响全局群集中的所有区域群集。区域群集命令还影响区域群集中的所有节点,即使这些节点在命令发出时处于关闭状态也是如此。
区域群集支持对处于资源组管理器 (Resource Group Manager, RGM) 控制下的资源进行委托管理。因此,区域群集管理员可以查看(但不能更改)跨区域群集边界的区域群集相关性。只有投票节点中的管理员可以创建、修改或删除跨区域群集边界的相关性。
下面列出了在区域群集上执行的主要管理任务。
创建区域群集-使用 clzonecluster configure 命令创建一个新的区域群集。请参见《Sun Cluster 软件安装指南(适用于 Solaris OS)》中的“配置区域群集”中的说明。
启动和重新引导区域群集-请参见第 3 章。
向区域群集中添加节点-请参见第 8 章。
从区域群集中删除节点-请参见如何从区域群集中删除节点。
查看区域群集的配置-请参见如何查看群集配置。
验证区域群集的配置-请参见如何验证基本群集配置。
停止区域群集-请参见第 3 章。
请勿使用 Solaris 10 服务管理工具 (Service Management Facility, SMF) 管理界面来启用或禁用以下 Sun Cluster 服务。
表 1–1 Sun Cluster 服务
Sun Cluster 服务 |
FMRI |
---|---|
pnm |
svc:/system/cluster/pnm:default |
cl_event |
svc:/system/cluster/cl_event:default |
cl_eventlog |
svc:/system/cluster/cl_eventlog:default |
rpc_pmf |
svc:/system/cluster/rpc_pmf:default |
rpc_fed |
svc:/system/cluster/rpc_fed:default |
rgm |
svc:/system/cluster/rgm:default |
scdpm |
svc:/system/cluster/scdpm:default |
cl_ccra |
svc:/system/cluster/cl_ccra:default |
scsymon_srv |
svc:/system/cluster/scsymon_srv:default |
spm |
svc:/system/cluster/spm:default |
cl_svc_cluster_milestone |
svc:/system/cluster/cl_svc_cluster_milestone:default |
cl_svc_enable |
svc:/system/cluster/cl_svc_enable:default |
network-multipathing |
svc:/system/cluster/network-multipathing |
可以使用图形用户界面 (Graphical User Interface, GUI) 或使用命令行对 Sun Cluster 配置执行管理任务。以下节简要介绍了 GUI 和命令行工具。
Sun Cluster 软件支持 GUI 工具,您可以使用这些工具对群集执行各种管理任务。这些 GUI 工具是 Sun Cluster Manager 和 Sun Management Center(如果在基于 SPARC 的系统上使用 Sun Cluster 软件)。有关 Sun Cluster Manager 和 Sun Management Center 的更多信息和配置过程,请参见第 13 章。有关如何使用 Sun Cluster Manager 的具体信息,请参见 GUI 的联机帮助。
您可以通过 clsetup(1CL) 实用程序以交互方式执行大多数 Sun Cluster 管理任务。本指南中的管理过程尽可能使用 clsetup 实用程序。
您可以通过 clsetup 实用程序管理下列主菜单项。
法定
资源组
数据服务
群集互连
设备组和卷
Private hostnames(专用主机名)
新节点
其他群集任务
其他可用来管理 Sun Cluster 配置的命令在下面的列表中提供。有关详细信息,请参阅手册页。
启动远程控制台对群集的访问。
将 IP 地址从 IP 网络多路径组 (IPMP) 中的一个适配器切换到另一个适配器。
管理 Sun Cluster 访问策略以添加节点。
管理 Sun Cluster 设备。
管理 Sun Cluster 设备组。
管理 Sun Cluster 互连。
管理对 Sun Cluster 配置的 NAS 设备的访问。
管理 Sun Cluster 节点。
管理 Sun Cluster 法定。
管理 Sun Cluster 的逻辑主机名资源。
管理 Sun Cluster 数据服务资源。
管理 Sun Cluster 数据服务资源。
管理 Sun Cluster 数据服务资源。
管理 Sun Cluster 的共享地址资源。
以交互方式对 Sun Cluster 配置进行配置。
管理 Sun Cluster SNMP 主机。
管理 Sun Cluster SNMP MIB。
管理 Sun Cluster SNMP 用户。
配置系统资源监视。
管理 Sun Cluster 配置的全局配置和全局状态。
在 Sun Cluster 节点上初始化 Veritas Volume Manager (VxVM) 并(可选)执行根磁盘封装。
创建和修改区域群集。
此外,您还可以使用命令来管理 Sun Cluster 配置的卷管理器部分。这些命令取决于群集所使用的特定卷管理器(Solstice DiskSuiteTM 软件、Veritas Volume Manager(Veritas 卷管理器) 或 Solaris Volume Manager)。
Sun Cluster 软件包含一些未公开的命令,这些命令仅供软件本身使用或供 Sun 工程师用作开发、诊断或支持用途。除非故障解决方案中记录了未公开的命令,或 Sun 支持人员针对特定情况提供这些命令并在其指导下使用,否则 Sun 支持协议不允许最终用户使用这些命令。
本节介绍如何做好管理群集前的准备工作。
在改变 Sun Cluster 配置时,记录针对您的站点的硬件配置。为了减轻管理工作量,请在更改或升级群集时参阅硬件文档。标注各个群集组件之间的电缆和连接也可以使管理变得更加容易。
记录原始群集配置和后来进行的更改,以便帮助第三方服务供应商在为您的群集提供服务时节省所需的时间。
您可以将专用工作站或通过管理网络连接的工作站用作管理控制台,来管理活动群集。通常,您要在管理控制台上安装和运行 Cluster Control Panel (CCP) 和图形用户界面 (Graphical User Interface, GUI) 工具。有关 CCP 的更多信息,请参见如何远程登录到群集。有关为 Sun Management Center 和 Sun Cluster Manager GUI 工具安装 Cluster Control Panel 模块的说明,请参见《Sun Cluster 软件安装指南(适用于 Solaris OS)》。
管理控制台并不是一个群集节点。管理控制台用来远程控制群集节点,或者通过公共网络,或者通过基于网络的终端集中器。
如果您的 SPARC 群集中包含 Sun Enterprise TM 10000 服务器,则必须从管理控制台登录到系统服务处理器 (System Service Processor, SSP)。使用 netcon 命令进行连接。对于 netcon,与 Sun Enterprise 10000 域连接的默认方法是通过网络接口进行连接。如果无法访问网络,可以通过设置 -f 选项,以“独占”模式使用 netcon。也可以在正常的 netcon 会话过程中键入 ~*。如果网络无法访问,上述任意一种方法均可以切换到串行接口。
Sun Cluster 不需要专用管理控制台,但使用控制台可带来以下好处:
通过在同一机器上给控制台和管理工具分组来启用集中化的群集管理
通过 Enterprise Services 或服务提供商来提供可能更快的故障解决方案
应定期备份您的群集。尽管 Sun Cluster 软件可提供高可用环境(在若干个存储设备上保存着数据的镜像副本),但 Sun Cluster 软件并不能代替定期备份。Sun Cluster 配置可以承受多种故障,但并不能防止用户错误或程序错误或者灾难性故障。因此,您必须采用适当的备份过程,以防数据丢失。
备份应包含以下信息:
所有文件系统分区
所有的数据库数据(如果正在运行 DBMS 数据服务)
所有群集磁盘的磁盘分区信息
md.tab 文件(如果使用 Solstice DiskSuite/Solaris Volume Manager 作为卷管理器)
表 1–2 提供了管理群集的起点。
仅从全局群集投票节点运行的 Sun Cluster 命令在用于区域群集时无效。有关命令在区域中的有效用法的信息,请参见相应的 Sun Cluster 手册页。
任务 |
工具 |
指导 |
---|---|---|
远程登录群集 |
使用 ccp 命令启动 Cluster Control Panel (CCP)。然后,选择下列图标之一:cconsole、crlogin、cssh 或 ctelnet。 | |
以交互方式配置群集 |
启动 clzonecluster(1CL) 实用程序或 clsetup(1CL) 实用程序。 | |
显示 Sun Cluster 发行版本号和版本信息 |
将 clnode(1CL) 命令与 show-rev --v -node 子命令和选项配合使用。 | |
显示已安装的资源、资源组和资源类型 |
使用以下命令显示资源信息: | |
以图形方式监视群集组件 |
使用 Sun Cluster Manager。 |
参见联机帮助 |
以图形方式管理某些群集组件 |
使用 Sun Cluster Manager 或 Sun Management Center 的 Sun Cluster 模块(Sun Management Center 仅可在基于 SPARC 的系统上与 Sun Cluster 一起使用)。 |
有关 Sun Cluster Manager 的信息,请参见联机帮助。 有关 Sun Management Center 的信息,请参见 Sun Management Center 相关文档。 |
检查群集组件状态 |
将 cluster(1CL) 命令与 status 子命令配合使用。 | |
检查公共网络上 IP 网络多路径 (IPMP) 组的状态 |
对于全局群集,请将 clnode(1CL) status 命令与 -m 选项配合使用。 对于区域群集,请使用 clzonecluster(1CL) show 命令。 | |
查看群集配置 |
对于全局群集,请将 cluster(1CL) 命令与 show 子命令配合使用。 对于区域群集,请将 clzonecluster(1CL) 命令与 show 子命令配合使用。 | |
检查全局挂载点或检验群集配置 |
对于全局群集,请将 cluster(1CL)cluster (1CL) 命令与 check 子命令配合使用。 对于区域群集,请使用 clzonecluster(1CL) verify 命令。 | |
查看 Sun Cluster 命令日志的内容 |
检查 /var/cluster/logs/ commandlog 文件。 | |
查看 Sun Cluster 系统消息 |
检查 /var/adm/messages 文件。 | |
监视 Solstice DiskSuite 的状态 |
使用 metastat 命令。 |
Solaris Volume Manager文档 |
在运行 Solaris 9 或 Solaris 10 时监视 Solaris Volume Manager 的状态 |
使用 metastat 命令。 |
Cluster Control Panel (CCP) 为 cconsole、crlogin、cssh 和 ctelnet 工具提供了启动板。所有工具均会启动一个多窗口连接以连接到一组指定的节点。此多窗口连接由每个指定节点的主窗口和一个公共窗口组成。输入到公共窗口中的信息会被发送到每一个主窗口,从而可在群集的所有节点上同时运行命令。
您还可以从命令行启动 cconsole、crlogin、cssh 或 ctelnet 会话。
默认情况下,cconsole 实用程序通过 telnet 连接到节点控制台。要与控制台建立安全 Shell 连接,请在 cconsole 窗口的 "Options" 菜单中选中 "Use SSH" 复选框。或者,在发出 ccp 或 cconsole 命令时指定 -s 选项。
有关更多信息,请参见ccp(1M) 和 cconsole(1M) 手册页。
phys-schost# 提示符表示全局群集提示符。此操作过程适用于全局群集。
此过程提供了 Sun Cluster 命令的长格式。此外,大多数命令还有简短格式。这些命令除了名称长短的不同以外,其功能都是相同的。有关命令及其简短格式的列表,请参见附录 B。
启动 CCP 前,请验证是否满足以下前提条件:
在管理控制台上安装 SUNWccon 软件包。
确保管理控制台上的 PATH 变量包含 Sun Cluster 工具目录 /opt/SUNWcluster/bin 和 /usr/cluster/bin。可以通过设置 $CLUSTER_HOME 环境变量为工具目录指定一个备用位置。
如果使用的是终端集中器,请配置 clusters 文件、serialports 文件和 nsswitch.conf 文件。这些文件既可以是 /etc 文件,也可以是 NIS 或 NIS+ 数据库。有关更多信息,请参见 clusters(4) 和 serialports(4) 手册页。
如果您使用的是 Sun Enterprise 10000 服务器平台,请登录系统服务处理器 (System Service Processor, SSP)。
从管理控制台启动 CCP 启动板。
phys-schost# ccp clustername |
将显示 CCP 启动板。
要启动与群集的远程会话,请单击 CCP 启动板中的 cconsole、crlogin、cssh 或 ctelnet 图标。
如果使用的是终端集中器,请配置 clusters 文件、serialports 文件和 nsswitch.conf 文件。这些文件既可以是 /etc 文件,也可以是 NIS 或 NIS+ 数据库。
在 serialports 文件中,指定可用来与每个控制台访问设备建立安全连接的端口号。用于安全 shell 连接的默认端口号是 22。
有关更多信息,请参见 clusters(4) 和 serialports(4) 手册页。
成为管理控制台上的超级用户。
使用安全模式启动 cconsole 实用程序。
# cconsole -s [-l username] [-p ssh-port] |
启用安全 shell 连接。
指定用于远程连接的用户名。如果未指定 -l 选项,系统会使用启动 cconsole 实用程序的用户名。
指定要使用的安全 shell 端口号。如果未指定 -p 选项,系统会使用默认端口号 22 建立安全连接。
使用 clsetup 实用程序,可以通过交互方式为全局群集配置法定、资源组、群集传输、专用主机名、设备组和新节点选项。clzonecluster 实用程序可对区域群集执行类似的配置任务。有关更多信息,请参见 clsetup(1CL) 和 clzonecluster(1CL) 手册页。
phys-schost# 提示符表示全局群集提示符。此操作过程适用于全局群集。
此过程提供了 Sun Cluster 命令的长格式。此外,大多数命令还有简短格式。这些命令除了名称长短的不同以外,其功能都是相同的。有关命令及其简短格式的列表,请参见附录 B。
成为全局群集的活动成员节点上的超级用户。从全局群集的节点执行此过程中的所有步骤。
启动配置实用程序。
phys-schost# clsetup |
从菜单中选择配置。按照屏幕上的说明完成任务。有关详细信息,请参见《Sun Cluster 软件安装指南(适用于 Solaris OS)》中的“配置区域群集”中的说明。
有关更多信息,请参见 clsetup 或 clzonecluster 联机帮助。
phys-schost# 提示符表示全局群集提示符。此操作过程适用于全局群集。
此过程提供了 Sun Cluster 命令的长格式。此外,大多数命令还有简短格式。这些命令除了名称长短的不同以外,其功能都是相同的。有关命令及其简短格式的列表,请参见附录 B。
以下示例显示了有关修补程序 110648-05 的信息。
phys-schost# showrev -p | grep 110648 Patch: 110648-05 Obsoletes: Requires: Incompatibles: Packages: |
您无需以超级用户的身份登录即可执行此过程。从全局群集的节点执行此过程中的所有步骤。
phys-schost# 提示符表示全局群集提示符。此操作过程适用于全局群集。
此过程提供了 Sun Cluster 命令的长格式。此外,大多数命令还有简短格式。这些命令除了名称长短的不同以外,其功能都是相同的。有关命令及其简短格式的列表,请参见附录 B。
显示 Sun Cluster 发行版本信息和版本信息:
phys-schost# clnode show-rev -v -node |
该命令显示了 Sun Cluster 的发行版本号和所有 Sun Cluster 软件包的版本字符串。
以下示例显示了群集的发行版本信息和所有软件包的版本信息。
phys-schost# clnode show-rev 3.2 phys-schost#% clnode show-rev -v Sun Cluster 3.2 for Solaris 9 sparc SUNWscr: 3.2.0,REV=2006.02.17.18.11 SUNWscu: 3.2.0,REV=2006.02.17.18.11 SUNWsczu: 3.2.0,REV=2006.02.17.18.11 SUNWscsck: 3.2.0,REV=2006.02.17.18.11 SUNWscnm: 3.2.0,REV=2006.02.17.18.11 SUNWscdev: 3.2.0,REV=2006.02.17.18.11 SUNWscgds: 3.2.0,REV=2006.02.17.18.11 SUNWscman: 3.2.0,REV=2005.10.18.08.42 SUNWscsal: 3.2.0,REV=2006.02.17.18.11 SUNWscsam: 3.2.0,REV=2006.02.17.18.11 SUNWscvm: 3.2.0,REV=2006.02.17.18.11 SUNWmdm: 3.2.0,REV=2006.02.17.18.11 SUNWscmasa: 3.2.0,REV=2006.02.17.18.11 SUNWscmautil: 3.2.0,REV=2006.02.17.18.11 SUNWscmautilr: 3.2.0,REV=2006.02.17.18.11 SUNWjfreechart: 3.2.0,REV=2006.02.17.18.11 SUNWscva: 3.2.0,REV=2006.02.17.18.11 SUNWscspm: 3.2.0,REV=2006.02.17.18.11 SUNWscspmu: 3.2.0,REV=2006.02.17.18.11 SUNWscspmr: 3.2.0,REV=2006.02.17.18.11 SUNWscderby: 3.2.0,REV=2006.02.17.18.11 SUNWsctelemetry: 3.2.0,REV=2006.02.17.18.11 SUNWscrsm: 3.2.0,REV=2006.02.17.18.11 SUNWcsc: 3.2.0,REV=2006.02.21.10.16 SUNWcscspm: 3.2.0,REV=2006.02.21.10.16 SUNWcscspmu: 3.2.0,REV=2006.02.21.10.16 SUNWdsc: 3.2.0,REV=2006.02.21.10.09 SUNWdscspm: 3.2.0,REV=2006.02.21.10.09 SUNWdscspmu: 3.2.0,REV=2006.02.21.10.09 SUNWesc: 3.2.0,REV=2006.02.21.10.11 SUNWescspm: 3.2.0,REV=2006.02.21.10.11 SUNWescspmu: 3.2.0,REV=2006.02.21.10.11 SUNWfsc: 3.2.0,REV=2006.02.21.10.06 SUNWfscspm: 3.2.0,REV=2006.02.21.10.06 SUNWfscspmu: 3.2.0,REV=2006.02.21.10.06 SUNWhsc: 3.2.0,REV=2006.02.21.10.20 SUNWhscspm: 3.2.0,REV=2006.02.21.10.20 SUNWhscspmu: 3.2.0,REV=2006.02.21.10.20 SUNWjsc: 3.2.0,REV=2006.02.21.10.22 SUNWjscman: 3.2.0,REV=2006.02.21.10.22 SUNWjscspm: 3.2.0,REV=2006.02.21.10.22 SUNWjscspmu: 3.2.0,REV=2006.02.21.10.22 SUNWksc: 3.2.0,REV=2006.02.21.10.14 SUNWkscspm: 3.2.0,REV=2006.02.21.10.14 SUNWkscspmu: 3.2.0,REV=2006.02.21.10.14 |
还可以使用 Sun Cluster Manager GUI 完成此过程。有关更多信息,请参阅第 13 章或参见 Sun Cluster Manager 联机帮助。
phys-schost# 提示符表示全局群集提示符。此操作过程适用于全局群集。
此过程提供了 Sun Cluster 命令的长格式。此外,大多数命令还有简短格式。这些命令除了名称长短的不同以外,其功能都是相同的。有关命令及其简短格式的列表,请参见附录 B。
超级用户以外的用户需要具有 solaris.cluster.read RBAC 授权才能使用该子命令。
显示群集的已配置资源类型、资源组和资源。从全局群集的节点执行此过程中的所有步骤。
phys-schost# cluster show -t resource,resourcetype,resourcegroup |
要获取各个资源、资源组和资源类型的信息,请将 show 子命令与下列命令之一配合使用:
resource
resource group
resourcetype
以下示例显示了为群集 schost 配置的资源类型 (RT Name)、资源组 (RG Name) 和资源 (RS Name)。
phys-schost# cluster show -t resource,resourcetype,resourcegroup === Registered Resource Types === Resource Type: SUNW.qfs RT_description: SAM-QFS Agent on SunCluster RT_version: 3.1 API_version: 3 RT_basedir: /opt/SUNWsamfs/sc/bin Single_instance: False Proxy: False Init_nodes: All potential masters Installed_nodes: <All> Failover: True Pkglist: <NULL> RT_system: False === Resource Groups and Resources === Resource Group: qfs-rg RG_description: <NULL> RG_mode: Failover RG_state: Managed Failback: False Nodelist: phys-schost-2 phys-schost-1 --- Resources for Group qfs-rg --- Resource: qfs-res Type: SUNW.qfs Type_version: 3.1 Group: qfs-rg R_description: Resource_project_name: default Enabled{phys-schost-2}: True Enabled{phys-schost-1}: True Monitored{phys-schost-2}: True Monitored{phys-schost-1}: True |
还可以使用 Sun Cluster Manager GUI 完成此过程。有关详细信息,请参见 Sun Cluster Manager 联机帮助。
cluster status 命令还可以显示区域群集的状态。
phys-schost# 提示符表示全局群集提示符。此操作过程适用于全局群集。
此过程提供了 Sun Cluster 命令的长格式。此外,大多数命令还有简短格式。这些命令除了名称长短的不同以外,其功能都是相同的。有关命令及其简短格式的列表,请参见附录 B。
超级用户以外的用户需要具有 solaris.cluster.read RBAC 授权才能使用 status 子命令。
以下示例提供了一个由 cluster(1CL) status 所返回的群集组件的状态信息样例。
phys-schost# cluster status === Cluster Nodes === --- Node Status --- Node Name Status --------- ------ phys-schost-1 Online phys-schost-2 Online === Cluster Transport Paths === Endpoint1 Endpoint2 Status --------- --------- ------ phys-schost-1:qfe1 phys-schost-4:qfe1 Path online phys-schost-1:hme1 phys-schost-4:hme1 Path online === Cluster Quorum === --- Quorum Votes Summary --- Needed Present Possible ------ ------- -------- 3 3 4 --- Quorum Votes by Node --- Node Name Present Possible Status --------- ------- -------- ------ phys-schost-1 1 1 Online phys-schost-2 1 1 Online --- Quorum Votes by Device --- Device Name Present Possible Status ----------- ------- -------- ------ /dev/did/rdsk/d2s2 1 1 Online /dev/did/rdsk/d8s2 0 1 Offline === Cluster Device Groups === --- Device Group Status --- Device Group Name Primary Secondary Status ----------------- ------- --------- ------ schost-2 phys-schost-2 - Degraded --- Spare, Inactive, and In Transition Nodes --- Device Group Name Spare Nodes Inactive Nodes In Transistion Nodes ----------------- ----------- -------------- -------------------- schost-2 - - - === Cluster Resource Groups === Group Name Node Name Suspended Status ---------- --------- --------- ------ test-rg phys-schost-1 No Offline phys-schost-2 No Online test-rg phys-schost-1 No Offline phys-schost-2 No Error--stop failed test-rg phys-schost-1 No Online phys-schost-2 No Online === Cluster Resources === Resource Name Node Name Status Message ------------- --------- ------ ------- test_1 phys-schost-1 Offline Offline phys-schost-2 Online Online test_1 phys-schost-1 Offline Offline phys-schost-2 Stop failed Faulted test_1 phys-schost-1 Online Online phys-schost-2 Online Online Device Instance Node Status --------------- ---- ------ /dev/did/rdsk/d2 phys-schost-1 Ok /dev/did/rdsk/d3 phys-schost-1 Ok phys-schost-2 Ok /dev/did/rdsk/d4 phys-schost-1 Ok phys-schost-2 Ok /dev/did/rdsk/d6 phys-schost-2 Ok === Zone Clusters === --- Zone Cluster Status --- Name Node Name Zone HostName Status Zone Status ---- --------- ------------- ------ ----------- sczone schost-1 sczone-1 Online Running schost-2 sczone-2 Online Running |
您还可以使用 Sun Cluster Manager GUI 完成此过程。有关详细信息,请参见 Sun Cluster Manager 联机帮助。
phys-schost# 提示符表示全局群集提示符。此操作过程适用于全局群集。
此过程提供了 Sun Cluster 命令的长格式。此外,大多数命令还有简短格式。这些命令除了名称长短的不同以外,其功能都是相同的。有关命令及其简短格式的列表,请参见附录 B。
要检查 IP 网络多路径组的状态,请将 clnode(1CL) 命令与 status 子命令配合使用。
超级用户以外的用户需要具有 solaris.cluster.read RBAC 授权才能使用该子命令。
以下示例提供了一个由 clnode status 命令返回的群集组件状态信息的样例。
% clnode status -m --- Node IPMP Group Status --- Node Name Group Name Status Adapter Status --------- ---------- ------ ------- ------ phys-schost-1 test-rg Online qfe1 Online phys-schost-2 test-rg Online qfe1 Online |
还可以使用 Sun Cluster Manager GUI 执行此过程。有关详细信息,请参见 Sun Cluster Manager 联机帮助。
phys-schost# 提示符表示全局群集提示符。此操作过程适用于全局群集。
此过程提供了 Sun Cluster 命令的长格式。此外,大多数命令还有简短格式。这些命令除了名称长短的不同以外,其功能都是相同的。有关命令及其简短格式的列表,请参见附录 B。
超级用户以外的用户需要具有 solaris.cluster.read RBAC 授权才能使用 status 子命令。
查看全局群集或区域群集的配置。从全局群集的节点执行此过程中的所有步骤。
% cluster show |
从全局群集投票节点运行 cluster show 命令可显示有关群集的详细配置信息以及区域群集的信息(如果已配置这些群集)。
您还可以使用 clzonecluster show 命令仅查看区域群集的配置信息。区域群集的属性包括区域群集名称、IP 类型、自动引导和区域路径。show 子命令在区域群集内部运行,并且仅适用于该特定区域群集。从区域群集节点运行 clzonecluster show 命令时,将仅检索有关对该特定区域群集可见的对象的状态。
要显示有关 cluster 命令的更多信息,请使用详细 (verbose) 选项。有关详细信息,请参见 cluster(1CL) 手册页。有关 clzonecluster 的更多信息,请参见 clzonecluster(1CL) 手册页。
以下示例列出了有关全局群集的配置信息。如果您配置了区域群集,则也会列出相应的信息。
phys-schost# cluster show |
=== Cluster === Cluster Name: cluster-1 installmode: disabled heartbeat_timeout: 10000 heartbeat_quantum: 1000 private_netaddr: 172.16.0.0 private_netmask: 255.255.248.0 max_nodes: 64 max_privatenets: 10 global_fencing: Unknown Node List: phys-schost-1 Node Zones: phys_schost-2:za === Host Access Control === Cluster name: clustser-1 Allowed hosts: phys-schost-1, phys-schost-2:za Authentication Protocol: sys === Cluster Nodes === Node Name: phys-schost-1 Node ID: 1 Type: cluster Enabled: yes privatehostname: clusternode1-priv reboot_on_path_failure: disabled globalzoneshares: 3 defaultpsetmin: 1 quorum_vote: 1 quorum_defaultvote: 1 quorum_resv_key: 0x43CB1E1800000001 Transport Adapter List: qfe3, hme0 --- Transport Adapters for phys-schost-1 --- Transport Adapter: qfe3 Adapter State: Enabled Adapter Transport Type: dlpi Adapter Property(device_name): qfe Adapter Property(device_instance): 3 Adapter Property(lazy_free): 1 Adapter Property(dlpi_heartbeat_timeout): 10000 Adapter Property(dlpi_heartbeat_quantum): 1000 Adapter Property(nw_bandwidth): 80 Adapter Property(bandwidth): 10 Adapter Property(ip_address): 172.16.1.1 Adapter Property(netmask): 255.255.255.128 Adapter Port Names: 0 Adapter Port State(0): Enabled Transport Adapter: hme0 Adapter State: Enabled Adapter Transport Type: dlpi Adapter Property(device_name): hme Adapter Property(device_instance): 0 Adapter Property(lazy_free): 0 Adapter Property(dlpi_heartbeat_timeout): 10000 Adapter Property(dlpi_heartbeat_quantum): 1000 Adapter Property(nw_bandwidth): 80 Adapter Property(bandwidth): 10 Adapter Property(ip_address): 172.16.0.129 Adapter Property(netmask): 255.255.255.128 Adapter Port Names: 0 Adapter Port State(0): Enabled --- SNMP MIB Configuration on phys-schost-1 --- SNMP MIB Name: Event State: Disabled Protocol: SNMPv2 --- SNMP Host Configuration on phys-schost-1 --- --- SNMP User Configuration on phys-schost-1 --- SNMP User Name: foo Authentication Protocol: MD5 Default User: No Node Name: phys-schost-2:za Node ID: 2 Type: cluster Enabled: yes privatehostname: clusternode2-priv reboot_on_path_failure: disabled globalzoneshares: 1 defaultpsetmin: 2 quorum_vote: 1 quorum_defaultvote: 1 quorum_resv_key: 0x43CB1E1800000002 Transport Adapter List: hme0, qfe3 --- Transport Adapters for phys-schost-2 --- Transport Adapter: hme0 Adapter State: Enabled Adapter Transport Type: dlpi Adapter Property(device_name): hme Adapter Property(device_instance): 0 Adapter Property(lazy_free): 0 Adapter Property(dlpi_heartbeat_timeout): 10000 Adapter Property(dlpi_heartbeat_quantum): 1000 Adapter Property(nw_bandwidth): 80 Adapter Property(bandwidth): 10 Adapter Property(ip_address): 172.16.0.130 Adapter Property(netmask): 255.255.255.128 Adapter Port Names: 0 Adapter Port State(0): Enabled Transport Adapter: qfe3 Adapter State: Enabled Adapter Transport Type: dlpi Adapter Property(device_name): qfe Adapter Property(device_instance): 3 Adapter Property(lazy_free): 1 Adapter Property(dlpi_heartbeat_timeout): 10000 Adapter Property(dlpi_heartbeat_quantum): 1000 Adapter Property(nw_bandwidth): 80 Adapter Property(bandwidth): 10 Adapter Property(ip_address): 172.16.1.2 Adapter Property(netmask): 255.255.255.128 Adapter Port Names: 0 Adapter Port State(0): Enabled --- SNMP MIB Configuration on phys-schost-2 --- SNMP MIB Name: Event State: Disabled Protocol: SNMPv2 --- SNMP Host Configuration on phys-schost-2 --- --- SNMP User Configuration on phys-schost-2 --- === Transport Cables === Transport Cable: phys-schost-1:qfe3,switch2@1 Cable Endpoint1: phys-schost-1:qfe3 Cable Endpoint2: switch2@1 Cable State: Enabled Transport Cable: phys-schost-1:hme0,switch1@1 Cable Endpoint1: phys-schost-1:hme0 Cable Endpoint2: switch1@1 Cable State: Enabled Transport Cable: phys-schost-2:hme0,switch1@2 Cable Endpoint1: phys-schost-2:hme0 Cable Endpoint2: switch1@2 Cable State: Enabled Transport Cable: phys-schost-2:qfe3,switch2@2 Cable Endpoint1: phys-schost-2:qfe3 Cable Endpoint2: switch2@2 Cable State: Enabled === Transport Switches === Transport Switch: switch2 Switch State: Enabled Switch Type: switch Switch Port Names: 1 2 Switch Port State(1): Enabled Switch Port State(2): Enabled Transport Switch: switch1 Switch State: Enabled Switch Type: switch Switch Port Names: 1 2 Switch Port State(1): Enabled Switch Port State(2): Enabled === Quorum Devices === Quorum Device Name: d3 Enabled: yes Votes: 1 Global Name: /dev/did/rdsk/d3s2 Type: scsi Access Mode: scsi2 Hosts (enabled): phys-schost-1, phys-schost-2 Quorum Device Name: qs1 Enabled: yes Votes: 1 Global Name: qs1 Type: quorum_server Hosts (enabled): phys-schost-1, phys-schost-2 Quorum Server Host: 10.11.114.83 Port: 9000 === Device Groups === Device Group Name: testdg3 Type: SVM failback: no Node List: phys-schost-1, phys-schost-2 preferenced: yes numsecondaries: 1 diskset name: testdg3 === Registered Resource Types === Resource Type: SUNW.LogicalHostname:2 RT_description: Logical Hostname Resource Type RT_version: 2 API_version: 2 RT_basedir: /usr/cluster/lib/rgm/rt/hafoip Single_instance: False Proxy: False Init_nodes: All potential masters Installed_nodes: <All> Failover: True Pkglist: SUNWscu RT_system: True Resource Type: SUNW.SharedAddress:2 RT_description: HA Shared Address Resource Type RT_version: 2 API_version: 2 RT_basedir: /usr/cluster/lib/rgm/rt/hascip Single_instance: False Proxy: False Init_nodes: <Unknown> Installed_nodes: <All> Failover: True Pkglist: SUNWscu RT_system: True Resource Type: SUNW.HAStoragePlus:4 RT_description: HA Storage Plus RT_version: 4 API_version: 2 RT_basedir: /usr/cluster/lib/rgm/rt/hastorageplus Single_instance: False Proxy: False Init_nodes: All potential masters Installed_nodes: <All> Failover: False Pkglist: SUNWscu RT_system: False Resource Type: SUNW.haderby RT_description: haderby server for Sun Cluster RT_version: 1 API_version: 7 RT_basedir: /usr/cluster/lib/rgm/rt/haderby Single_instance: False Proxy: False Init_nodes: All potential masters Installed_nodes: <All> Failover: False Pkglist: SUNWscderby RT_system: False Resource Type: SUNW.sctelemetry RT_description: sctelemetry service for Sun Cluster RT_version: 1 API_version: 7 RT_basedir: /usr/cluster/lib/rgm/rt/sctelemetry Single_instance: True Proxy: False Init_nodes: All potential masters Installed_nodes: <All> Failover: False Pkglist: SUNWsctelemetry RT_system: False === Resource Groups and Resources === Resource Group: HA_RG RG_description: <Null> RG_mode: Failover RG_state: Managed Failback: False Nodelist: phys-schost-1 phys-schost-2 --- Resources for Group HA_RG --- Resource: HA_R Type: SUNW.HAStoragePlus:4 Type_version: 4 Group: HA_RG R_description: Resource_project_name: SCSLM_HA_RG Enabled{phys-schost-1}: True Enabled{phys-schost-2}: True Monitored{phys-schost-1}: True Monitored{phys-schost-2}: True Resource Group: cl-db-rg RG_description: <Null> RG_mode: Failover RG_state: Managed Failback: False Nodelist: phys-schost-1 phys-schost-2 --- Resources for Group cl-db-rg --- Resource: cl-db-rs Type: SUNW.haderby Type_version: 1 Group: cl-db-rg R_description: Resource_project_name: default Enabled{phys-schost-1}: True Enabled{phys-schost-2}: True Monitored{phys-schost-1}: True Monitored{phys-schost-2}: True Resource Group: cl-tlmtry-rg RG_description: <Null> RG_mode: Scalable RG_state: Managed Failback: False Nodelist: phys-schost-1 phys-schost-2 --- Resources for Group cl-tlmtry-rg --- Resource: cl-tlmtry-rs Type: SUNW.sctelemetry Type_version: 1 Group: cl-tlmtry-rg R_description: Resource_project_name: default Enabled{phys-schost-1}: True Enabled{phys-schost-2}: True Monitored{phys-schost-1}: True Monitored{phys-schost-2}: True === DID Device Instances === DID Device Name: /dev/did/rdsk/d1 Full Device Path: phys-schost-1:/dev/rdsk/c0t2d0 Replication: none default_fencing: global DID Device Name: /dev/did/rdsk/d2 Full Device Path: phys-schost-1:/dev/rdsk/c1t0d0 Replication: none default_fencing: global DID Device Name: /dev/did/rdsk/d3 Full Device Path: phys-schost-2:/dev/rdsk/c2t1d0 Full Device Path: phys-schost-1:/dev/rdsk/c2t1d0 Replication: none default_fencing: global DID Device Name: /dev/did/rdsk/d4 Full Device Path: phys-schost-2:/dev/rdsk/c2t2d0 Full Device Path: phys-schost-1:/dev/rdsk/c2t2d0 Replication: none default_fencing: global DID Device Name: /dev/did/rdsk/d5 Full Device Path: phys-schost-2:/dev/rdsk/c0t2d0 Replication: none default_fencing: global DID Device Name: /dev/did/rdsk/d6 Full Device Path: phys-schost-2:/dev/rdsk/c1t0d0 Replication: none default_fencing: global === NAS Devices === Nas Device: nas_filer1 Type: netapp User ID: root Nas Device: nas2 Type: netapp User ID: llai |
以下示例列出了区域群集配置的属性。
% clzonecluster show === Zone Clusters === Zone Cluster Name: sczone zonename: sczone zonepath: /zones/sczone autoboot: TRUE ip-type: shared enable_priv_net: TRUE --- Solaris Resources for sczone --- Resource Name: net address: 172.16.0.1 physical: auto Resource Name: net address: 172.16.0.2 physical: auto Resource Name: fs dir: /gz/db_qfs/CrsHome special: CrsHome raw: type: samfs options: [] Resource Name: fs dir: /gz/db_qfs/CrsData special: CrsData raw: type: samfs options: [] Resource Name: fs dir: /gz/db_qfs/OraHome special: OraHome raw: type: samfs options: [] Resource Name: fs dir: /gz/db_qfs/OraData special: OraData raw: type: samfs options: [] --- Zone Cluster Nodes for sczone --- Node Name: sczone-1 physical-host: sczone-1 hostname: lzzone-1 Node Name: sczone-2 physical-host: sczone-2 hostname: lzzone-2 |
cluster(1CL) 命令使用 check 命令验证全局群集正常工作所需的基本配置。如果所有检查均未失败,cluster check 将返回到 shell 提示符。如果某项检查失败,cluster check 将在指定的输出目录或默认输出目录中生成报告。如果对多个节点运行 cluster check,cluster check 将分别针对每个节点生成一个报告并针对多个节点的检查生成一个报告。也可使用 cluster list-checks 命令显示所有可用群集检查的列表。
可在详细模式下运行带有 -v 标志的 cluster check 命令,以显示进度信息。
在执行可能导致设备、卷管理组件或 Sun Cluster 的配置发生更改的管理过程之后,应运行 cluster check。
在全局群集投票节点上运行 clzonecluster(1CL) 命令时,将运行一组检查,以验证区域群集正常工作所需的配置。如果所有检查都通过,clzonecluster verify 将返回到 shell 提示符,您可以放心地安装该区域群集。如果某项检查失败,则 clzonecluster verify 将报告检验失败的全局群集节点。如果对多个节点运行 clzonecluster verify,将针对每个节点和多个节点的检查分别生成一个报告。不允许在区域群集内部运行 verify 子命令。
以下示例显示了针对节点 phys-schost-1 和 phys-schost-2 在详细模式下运行的 cluster check,其中节点通过了所有检查。
phys-schost# cluster check -v -h phys-schost-1, phys-schost-2 cluster check: Requesting explorer data and node report from phys-schost-1. cluster check: Requesting explorer data and node report from phys-schost-2. cluster check: phys-schost-1: Explorer finished. cluster check: phys-schost-1: Starting single-node checks. cluster check: phys-schost-1: Single-node checks finished. cluster check: phys-schost-2: Explorer finished. cluster check: phys-schost-2: Starting single-node checks. cluster check: phys-schost-2: Single-node checks finished. cluster check: Starting multi-node checks. cluster check: Multi-node checks finished # |
以下示例显示,群集 suncluster 中的节点 phys-schost-2 缺少挂载点 /global/phys-schost-1。将在输出目录 /var/cluster/logs/cluster_check/<timestamp> 中创建报告。
phys-schost# cluster check -v -h phys-schost-1, phys-schost-2 -o /var/cluster/logs/cluster_check/Dec5/ cluster check: Requesting explorer data and node report from phys-schost-1. cluster check: Requesting explorer data and node report from phys-schost-2. cluster check: phys-schost-1: Explorer finished. cluster check: phys-schost-1: Starting single-node checks. cluster check: phys-schost-1: Single-node checks finished. cluster check: phys-schost-2: Explorer finished. cluster check: phys-schost-2: Starting single-node checks. cluster check: phys-schost-2: Single-node checks finished. cluster check: Starting multi-node checks. cluster check: Multi-node checks finished. cluster check: One or more checks failed. cluster check: The greatest severity of all check failures was 3 (HIGH). cluster check: Reports are in /var/cluster/logs/cluster_check/<Dec5>. # # cat /var/cluster/logs/cluster_check/Dec5/cluster_check-results.suncluster.txt ... =================================================== = ANALYSIS DETAILS = =================================================== ------------------------------------ CHECK ID : 3065 SEVERITY : HIGH FAILURE : Global filesystem /etc/vfstab entries are not consistent across all Sun Cluster 3.x nodes. ANALYSIS : The global filesystem /etc/vfstab entries are not consistent across all nodes in this cluster. Analysis indicates: FileSystem '/global/phys-schost-1' is on 'phys-schost-1' but missing from 'phys-schost-2'. RECOMMEND: Ensure each node has the correct /etc/vfstab entry for the filesystem(s) in question. ... # |
cluster(1CL) 命令会执行多项检查,以确定 /etc/vfstab 文件中是否存在与群集文件系统及其全局挂载点有关的配置错误。
在进行了影响到设备或卷管理组件的群集配置更改后,请运行 cluster check。
以下示例显示,群集 suncluster 中的节点 phys-schost-2 缺少挂载点 /global/schost-1。报告将发送到输出目录 /var/cluster/logs/cluster_check/<timestamp>/。
phys-schost# cluster check -v1 -h phys-schost-1,phys-schost-2 -o /var/cluster//logs/cluster_check/Dec5/ cluster check: Requesting explorer data and node report from phys-schost-1. cluster check: Requesting explorer data and node report from phys-schost-2. cluster check: phys-schost-1: Explorer finished. cluster check: phys-schost-1: Starting single-node checks. cluster check: phys-schost-1: Single-node checks finished. cluster check: phys-schost-2: Explorer finished. cluster check: phys-schost-2: Starting single-node checks. cluster check: phys-schost-2: Single-node checks finished. cluster check: Starting multi-node checks. cluster check: Multi-node checks finished. cluster check: One or more checks failed. cluster check: The greatest severity of all check failures was 3 (HIGH). cluster check: Reports are in /var/cluster/logs/cluster_check/Dec5. # # cat /var/cluster/logs/cluster_check/Dec5/cluster_check-results.suncluster.txt ... =================================================== = ANALYSIS DETAILS = =================================================== ------------------------------------ CHECK ID : 3065 SEVERITY : HIGH FAILURE : Global filesystem /etc/vfstab entries are not consistent across all Sun Cluster 3.x nodes. ANALYSIS : The global filesystem /etc/vfstab entries are not consistent across all nodes in this cluster. Analysis indicates: FileSystem '/global/phys-schost-1' is on 'phys-schost-1' but missing from 'phys-schost-2'. RECOMMEND: Ensure each node has the correct /etc/vfstab entry for the filesystem(s) in question. ... # # cat /var/cluster/logs/cluster_check/Dec5/cluster_check-results.phys-schost-1.txt ... =================================================== = ANALYSIS DETAILS = =================================================== ------------------------------------ CHECK ID : 1398 SEVERITY : HIGH FAILURE : An unsupported server is being used as a Sun Cluster 3.x node. ANALYSIS : This server may not been qualified to be used as a Sun Cluster 3.x node. Only servers that have been qualified with Sun Cluster 3.x are supported as Sun Cluster 3.x nodes. RECOMMEND: Because the list of supported servers is always being updated, check with your Sun Microsystems representative to get the latest information on what servers are currently supported and only use a server that is supported with Sun Cluster 3.x. ... # |
/var/cluster/logs/commandlog ASCII 文本文件包含在群集中执行的选定 Sun Cluster 命令的记录。一旦设置群集,系统会自动启动对命令的日志记录,并在您关闭群集时结束。在所有已启动并以群集模式引导的节点上,系统都会记录命令。
不在该文件中记录的命令包括那些显示群集配置和当前状态的命令。
在该文件中记录的命令包括那些配置和更改群集当前状态的命令:
claccess
cldevice
cldevicegroup
clinterconnect
clnasdevice
clnode
clquorum
clreslogicalhostname
clresource
clresourcegroup
clresourcetype
clressharedaddress
clsetup
clsnmphost
clsnmpmib
clnsmpuser
cltelemetryattribute
cluster
clzonecluster
scconf
scdidadm
scdpm
scgdevs
scrgadm
scsetup
scshutdown
scswitch
commandlog 文件中的记录可包含下列元素:
日期和时间戳
发出命令的主机的名称
命令的进程 ID
执行命令的用户的登录名
用户已执行的命令,包括所有选项和操作对象
命令选项在 commandlog 文件中用引号括起,这样您就可以轻松找到它们,然后复制粘贴到 shell 中并在 shell 中执行。
已执行命令的退出状态
如果命令异常中止并产生未知结果,则 Sun Cluster 软件不会在 commandlog 文件中显示退出状态。
默认情况下,系统每周定期对 commandlog 文件进行一次归档。要更改 commandlog 文件的归档策略,请在群集的每个节点上运行 crontab 命令。有关更多信息,请参见 crontab(1) 手册页。
在任意给定时刻,Sun Cluster 软件最多可在每个群集节点上维护八个先前归档的 commandlog 文件。当周的 commandlog 文件名为 commandlog。时间最近的完整的周归档文件名为 commandlog.0。时间最早的完整的周归档文件名为 commandlog.7。
查看当周 commandlog 文件的内容,一次显示一屏。
phys-schost# more /var/cluster/logs/commandlog |
以下示例显示了通过执行 more 命令显示的 commandlog 文件内容。
more -lines10 /var/cluster/logs/commandlog 11/11/2006 09:42:51 phys-schost-1 5222 root START - clsetup 11/11/2006 09:43:36 phys-schost-1 5758 root START - clrg add "app-sa-1" 11/11/2006 09:43:36 phys-schost-1 5758 root END 0 11/11/2006 09:43:36 phys-schost-1 5760 root START - clrg set -y "RG_description=Department Shared Address RG" "app-sa-1" 11/11/2006 09:43:37 phys-schost-1 5760 root END 0 11/11/2006 09:44:15 phys-schost-1 5810 root START - clrg online "app-sa-1" 11/11/2006 09:44:15 phys-schost-1 5810 root END 0 11/11/2006 09:44:19 phys-schost-1 5222 root END -20988320 12/02/2006 14:37:21 phys-schost-1 5542 jbloggs START - clrg -c -g "app-sa-1" -y "RG_description=Joe Bloggs Shared Address RG" 12/02/2006 14:37:22 phys-schost-1 5542 jbloggs END 0 |