图 10-1 直接连接的双节点群集,其中一个链接断开而另外三个链接连通
若一个或多个群集节点为 Sun Fire 15K/12K 系统或群集中包含 Sun Fire Link 交换机,此图示将稍有不同。不过,在这两种情况下,识别的组件组均无变化:本地光学链接端点、光缆和远程光学链接端点。只有包含端点的硬件部件的标识符受机柜类型的影响。
注意 - 在直接连接(无交换机)的 Sun Fire Link 群集中,连接故障路径的两个节点均检测并报告链接故障 -- 在图 10-1 中,为 SF6800-1 和 SF6800-2。当计算节点连接到 Sun Fire Link 交换机时,计算节点检测并报告“链接断开”消息。交换机还生成一条表明“链接断开”情况的错误消息。
|
Sun 现场技术支持人员应找出链接-光缆-链接级别之下的故障。本章说明如何收集诊断信息,以便帮助现场技术支持人员定位发生故障的具体组件。
若一组复线链接中有一个或多个链接出现“链接断开”情况,则通信就能通过该复线组中的其余链接继续进行,只要该复线组中有一个成员保持正常运作情况。若一个链接发生故障且您当时并未直接监视网络状态,则 Sun Fire Link 群集的继续运作可能使您无法察觉链接断开。本章讲述两种方法,可用于在链接断开时自动通知您。
注意 - 若您有一个列出 Sun Fire Link 网络中所有实体连接的图表,则本章中的信息将尤为有用。此图表可能在安装 Sun Fire Link 硬件时已创建。《Sun Fire Link Hardware Installation Guide》
中推荐在 Sun Fire Link 网络安装时创建此图表。
|
在群集运作过程中识别链接故障
本节说明如何在 Sun Fire Link 群集正在运作时识别发生的“链接断开”错误情况。这些讨论涉及如下主题:
- 如何使用 Sun Management Center/FM 控制台来监视链接状态和识别“链接断开”情况。
- 如何使用 WRSM 命令行界面工具在群集节点级别监视链接状态。
- 如何使用 FM 命令行界面工具在群集范围级别监视链接状态。
- 如何理解由 Sun Fire 6800 系统、Sun Fire 15K/12K 系统和 Sun Fire Link 交换机生成的“链接断开”消息。
使用 Sun Management Center/FM 控制台监视链接状态
只要有可能,就应使用 Sun Management Center/FM 控制台作为管理和监视 Sun Fire Link 群集的主要界面。本手册的第九章讨论了大量可用作此目的的 Sun Management Center/FM 控制台功能。本节着重于使用 Sun Management Center/FM 控制台访问链接状态细节。
以下步骤中,假定 Sun Fire Link 群集正在运作、Sun Management Center 控制台正在运行,且群集分区中的一个链接断开。
1. 打开“互联体细节”窗口,若其尚未显示的话。若想要获得此步骤的指导,请参见显示互联体控制台。
2. 单击左边窗格中的“互联体信息”文件夹。
这将导致显示以下表格。请参见利用系统细节监视互联体,以获得有关这些表格的说明。
3. 检查链接表,它包含群集中所有链接的全面说明。
链接表中的每行说明一个链接,包括该链接本地和远程端点的说明。这些链接属性在互联体信息表中得以说明。
使用 WRSM CLI 在节点级别监视链接状态
本节说明如何收集群集中每个节点上的链接状态信息。它说明了在一个 4 节点群集例子(其中有一个发生故障的链接)中如何使用 wrsmstat wrsm -v 和 wrsmstat route。
本例中,群集节点为 sys_a、sys_b、sys_c 和 sys_d。发生故障的链接为链接 2,它位于 sys_b 上的 IB9。要查找这一发生故障的链接,请执行以下步骤:
- 在群集中的每个节点上运行 wrsmstat wrsm -v。此操作显示节点上的链接状况。这在代码示例 10-1 中首先说明。
- 在某一节点上运行 wrsmstat route。此操作显示每个链接的全局视图。请参见代码示例 10-2 以获得说明。
wrsmstat wrsm -v 输出的简要说明紧随在代码示例 10-1 之后。
代码示例 10-1 初次运行 wrsmstat wrsm -v 的结果
sys_a# wrsmstat wrsm -v
|
|
WCI instance: 1
|
-------------
|
Port ID: 29
|
Controller ID: 1
|
Config Version: 1
|
Link Error Shutdown Trigger: 1000
|
Link 0
|
Link enabled: yes
|
Link State: up
|
Physical Link State: in use
|
Laser Enabled: yes
|
Transmit Enabled: yes
|
Remote RSM HW addr: 0
|
Remote wnode ID: 0
|
Remote link num: 0
|
Remote WCI port ID: 0
|
Error takedowns: 0
|
Disconnected takedowns: 0
|
Bad Config takedowns: 0
|
Failed bringups: 0
|
Total link errors: 0
|
Maximum link errors: 0
|
Average link errors: 0
|
Auto shutdown enabled: yes
|
Link 1 is not present.
|
Link 2
|
Link enabled: yes
|
Link State: up
|
Physical Link State: in use
|
Laser Enabled: yes
|
Transmit Enabled: yes
|
Remote RSM HW addr: 0
|
Remote wnode ID: 0
|
Remote link num: 0
|
Remote WCI port ID: 0
|
Error takedowns: 0
|
Disconnected takedowns: 0
|
Bad Config takedowns: 0
|
Failed bringups: 0
|
Total link errors: 0
|
Maximum link errors: 0
|
Average link errors: 0
|
Auto shutdown enabled: yes
|
Cluster Error Count: 0
|
Uncorrectable SRAM ECC error: no
|
Maximum SRAM ECC errors: 0
|
Average SRAM ECC errors: 0
|
|
|
WCI instance: 2
|
-------------
|
Port ID: 31
|
Controller ID: 1
|
Config Version: 1
|
Link Error Shutdown Trigger: 1000
|
Link 0
|
Link enabled: yes
|
Link State: up
|
Physical Link State: in use
|
Laser Enabled: yes
|
Transmit Enabled: yes
|
Remote RSM HW addr: 0
|
Remote wnode ID: 0
|
Remote link num: 1
|
Remote WCI port ID: 0
|
Error takedowns: 0
|
Disconnected takedowns: 0
|
Bad Config takedowns: 0
|
Failed bringups: 0
|
Total link errors: 0
|
Maximum link errors: 0
|
Average link errors: 0
|
Auto shutdown enabled: yes
|
Link 1 is not present.
|
Link 2
|
Link enabled: yes
|
Link State: up
|
Physical Link State: in use
|
Laser Enabled: yes
|
Transmit Enabled: yes
|
Remote RSM HW addr: 0
|
Remote wnode ID: 0
|
Remote link num: 1
|
Remote WCI port ID: 0
|
Error takedowns: 0
|
Disconnected takedowns: 0
|
Bad Config takedowns: 0
|
Failed bringups: 0
|
Total link errors: 0
|
Maximum link errors: 0
|
Average link errors: 0
|
Auto shutdown enabled: yes
|
Cluster Error Count: 41
|
Uncorrectable SRAM ECC error: no
|
Maximum SRAM ECC errors: 0
|
Average SRAM ECC errors: 0
|
下面是代码示例 10-1 所示输出的简要分析:
- 对于 sys_a,未指出在 IB8 或 IB9 中的链接 0 和链接 2 中有任何链接错误。
- 唯一指出检测到错误的是 IB9 的 Cluster Error Count 行,报告出 41 个错误。这在输出示例的倒数第 4 行指明。
下一步是在 sys_a 上运行 wrsmstat route,以获取将 sys_a 连接到其它节点和交换机的路由的概要信息。代码示例 10-2 所示为这一步生成的输出。该输出的说明紧随在示例之后。
代码示例 10-2 运行 wrsmstat route 的结果
sys_a# wrsmstat route
|
|
Controller 1 - Route to sys_a
|
------------------------
|
Config Version: 1
|
FM node id: 0x830740c6
|
RSM hardware addr: 0
|
Route Changes: 0
|
Route Type: Multihop
|
Number of WCIs: 1
|
Stripes: 0
|
WCI #0
|
Port ID: 31
|
Instance : 2
|
Number of hops: 0
|
Number of links: 0
|
|
Controller 1 - Route to sys_b
|
------------------------
|
Config Version: 1
|
FM node id: 0x83073cdc
|
RSM hardware addr: 1
|
Route Changes: 0
|
Route Type: Multihop
|
Number of WCIs: 2
|
Stripes: 3
|
WCI #0
|
Port ID: 29
|
Instance : 1
|
Number of hops: 1
|
Number of links: 2
|
Link #0, is a switch, leading to RSM HW addr: 0x1
|
Link #2, is a switch, leading to RSM HW addr: 0x1
|
WCI #1
|
Port ID: 31
|
Instance : 2
|
Number of hops: 1
|
Number of links: 1
|
Link #0, is a switch, leading to RSM HW addr: 0x1
|
|
Controller 1 - Route to sys_c
|
------------------------
|
Config Version: 1
|
FM node id: 0x8308e1a8
|
RSM hardware addr: 2
|
Route Changes: 0
|
Route Type: Multihop
|
Number of WCIs: 2
|
Stripes: 4
|
WCI #0
|
Port ID: 29
|
Instance : 1
|
Number of hops: 1
|
Number of links: 2
|
Link #0, is a switch, leading to RSM HW addr: 0x2
|
Link #2, is a switch, leading to RSM HW addr: 0x2
|
WCI #1
|
Port ID: 31
|
Instance : 2
|
Number of hops: 1
|
Number of links: 2
|
Link #0, is a switch, leading to RSM HW addr: 0x2
|
Link #2, is a switch, leading to RSM HW addr: 0x2
|
|
Controller 1 - Route to sys_d
|
------------------------
|
Config Version: 1
|
FM node id: 0x8308eea4
|
RSM hardware addr: 3
|
Route Changes: 0
|
Route Type: Multihop
|
Number of WCIs: 2
|
Stripes: 4
|
WCI #0
|
Port ID: 29
|
Instance : 1
|
Number of hops: 1
|
Number of links: 2
|
Link #0, is a switch, leading to RSM HW addr: 0x3
|
Link #2, is a switch, leading to RSM HW addr: 0x3
|
WCI #1
|
Port ID: 31
|
Instance: 2
|
Number of hops: 1
|
Number of links: 2
|
Link #0, is a switch, leading to RSM HW addr: 0x3
|
Link #2, is a switch, leading to RSM HW addr: 0x3
|
此输出表明 sys_a 有一个到 sys_c 的 4 链接路由和一个到 sys_d 的 4 链接路由。但到 sys_b 的路由只包含以下三个链接:
- IB8:链接 0 和链接 2
- IB9:只有链接 0
下一步是登录到 sys_b 并运行 wrsmstat wrsm -v,以获取 IB9 的链接 2 的本地视图。这一步如代码示例 10-3 所示。该输出在示例后进行解释。
代码示例 10-3 有故障链接的节点的 wrsmstat wrsm -v 输出
sys_b# wrsmstat wrsm -v
|
|
WCI instance: 1
|
-------------
|
Port ID: 29
|
Controller ID: 1
|
Config Version: 1
|
Link Error Shutdown Trigger: 1000
|
Link 0
|
Link enabled: yes
|
Link State: up
|
Physical Link State: in use
|
Laser Enabled: yes
|
Transmit Enabled: yes
|
Remote RSM HW addr: 0
|
Remote wnode ID: 0
|
Remote link num: 2
|
Remote WCI port ID: 0
|
Error takedowns: 0
|
Disconnected takedowns: 0
|
Bad Config takedowns: 0
|
Failed bringups: 0
|
Total link errors: 0
|
Maximum link errors: 0
|
Average link errors: 0
|
Auto shutdown enabled: yes
|
Link 1 is not present.
|
Link 2
|
Link enabled: yes
|
Link State: up
|
Physical Link State: in use
|
Laser Enabled: yes
|
Transmit Enabled: yes
|
Remote RSM HW addr: 0
|
Remote wnode ID: 0
|
Remote link num: 2
|
Remote WCI port ID: 0
|
Error takedowns: 0
|
Disconnected takedowns: 0
|
Bad Config takedowns: 0
|
Failed bringups: 0
|
Total link errors: 0
|
Maximum link errors: 0
|
Average link errors: 0
|
Auto shutdown enabled: yes
|
Cluster Error Count: 0
|
Uncorrectable SRAM ECC error: no
|
Maximum SRAM ECC errors: 0
|
Average SRAM ECC errors: 0
|
|
|
WCI instance: 2
|
-------------
|
Port ID: 31
|
Controller ID: 1
|
Config Version: 1
|
Link Error Shutdown Trigger: 1000
|
Link 0
|
Link enabled: yes
|
Link State: up
|
Physical Link State: in use
|
Laser Enabled: yes
|
Transmit Enabled: yes
|
Remote RSM HW addr: 0
|
|
Remote wnode ID: 0
|
Remote link num: 3
|
Remote WCI port ID: 0
|
Error takedowns: 0
|
Disconnected takedowns: 0
|
Bad Config takedowns: 0
|
Failed bringups: 0
|
Total link errors: 0
|
Maximum link errors: 0
|
Average link errors: 0
|
Auto shutdown enabled: yes
|
Link 1 is not present.
|
Link 2
|
Link enabled: yes
|
Link State: wait (up)
|
Physical Link State: seek
|
Laser Enabled: yes
|
Transmit Enabled: no
|
Remote RSM HW addr: 0
|
Remote wnode ID: 0
|
Remote link num: 3
|
Remote WCI port ID: 0
|
Error takedowns: 0
|
Disconnected takedowns: 0
|
Bad Config takedowns: 0
|
Failed bringups: 2128
|
Total link errors: 0
|
Maximum link errors: 0
|
Average link errors: 0
|
Auto shutdown enabled: no
|
Cluster Error Count: 19
|
Uncorrectable SRAM ECC error: no
|
Maximum SRAM ECC errors: 0
|
Average SRAM ECC errors: 0
|
IB9 状态列于标题 WCI instance 2 之下。其后信息讲述链接 2 的情况:
- 此链接和激光器已启用,这同在使用的链接一样。
- 不过,“Link State”状态为 wait (up) 而“Transmit Enabled”状态为 no。
这表明连接到 IB9 中的链接 2 的光缆或另一端连接的 Sun Fire Link 板发生了故障。本例中,光缆的另一端连接到交换机。
使用 FM CLI 监视链接状态
下例说明如何使用 wcfmstat 和 wcfmver 命令在整个 Sun Fire Link 群集中调查链接状态。每个示例的结尾均提供该命令输出的说明。请参见《Sun Fire Link 互联体管理员指南》
的附录 A 以获得有关这些命令的更多信息。
在 FM 管理站(亦称 FM 主机)上以 root 用户身份执行这些命令。
============= 示例 1 =================
下面的代码示例 10-4 报告名为 fabric1 的互联体中所有成员的状态。
代码示例 10-4 wcfmstat 互联体名 的输出示例
fm_host# cd /opt/SUNWwcfm/bin
|
fm_host# ./wcfmstat fabric1
|
Partition Stripe Level
|
Name Type Topology WCI Link
|
part1 RSM WCIX_SWITCH 1 2
|
part2 RSM WCIX_SWITCH 1 2
|
All members of this fabric are assigned to partitions.
|
下面说明如何理解代码示例 10-4 所示的输出:
- fabric1 包含两个分区,名为 part1 和 part2。
- 分区的 Type(类型)名总是 RSM。
- WCIX_SWITCH 表示每个分区使用一个基于交换机的拓扑结构。
- 两个分区均使用相同的复线策略:
- WCI 复线级别 = 1。没有复线跨越 Sun Fire Link 部件。
- 链接复线级别 = 2。每个 Sun Fire Link 部件中均有复线跨越两个光学端口。
-
============= 示例 2 =================
本例报告名为 part1 的分区的详细状态。
代码示例 10-5 带分区自变量的 wcfmstat 的输出
fm_host# cd /opt/SUNWwcfm/bin
|
fm_host# ./wcfmstat -p part1 fabric1
|
Partition Name: part1
|
Members:
|
sys_a_sc1-A
|
sys_b_sc1-A
|
link-sw1-null
|
link-sw2-null
|
-----------------------------------------
|
Routes:
|
sys_a_sc1:A=sys_b_sc1:A
|
sys_a_sc1:A:8:1:0=link-sw2::::3=0
|
sys_a_sc1:A:8:1:2=link-sw1::::3=0
|
sys_b_sc1:A:8:1:0=link-sw2::::1=0
|
sys_b_sc1:A:8:1:2=link-sw1::::1=0
|
-----------------------------------------
|
Links:
|
sys_a_sc1:A:8:1:0=link-sw2::::3=0
|
sys_a_sc1:A:8:1:2=link-sw1::::3=0
|
sys_b_sc1:A:8:1:0=link-sw2::::1=0
|
sys_b_sc1:A:8:1:2=link-sw1::::1=0
|
下面说明如何理解代码示例 10-5 所示的输出:
- Members 部分表明 part1 包含两个节点,名为 sys_a_sc1-A 和 sys_b_sc1-A。
- Members 部分还表明 part1 包含两台交换机,名为 link-sw1 和 link-sw2。
请注意:交换机名不包含域扩展名。
- Routes 部分标识路由的两个端点,分区中的节点可通过此路由进行通信。本例中,路由的端点为节点 sys_a_sc1 的域 A 和节点 sys_b_sc1 的域 A。
- Routes 部分还列出了构成路由的链接。Sun Fire Link 路由是一个路径集合,它包含所有连接路由两个端点的独立链接。由于本例中的配置包括交换机,因此每个链接的一个端点为节点,另一个端点为交换机。
例如,列出的第一个链接为 sys_a_sc1:A:8:1:0=link-sw2::::3=0。此字符串含义说明如下:
- sys_a_sc1:A - 表示节点 sys_a_sc1 的域 A。
- 8:1:0 - 这三个数中,数字 8 表示 Sun Fire Link 部件位于机柜插槽 IB8,数字 1 表示 ASIC ID 为 1,数字 0 表示该 ASIC 的链接编号(光学端口)。
- 请注意:在 Sun Fire Link 部件中,Sun Fire Link ASIC ID 始终为 1。
- link-sw2:3 - 表示交换机的主机名以及链接编号(光学端口)3。
- =0 - 表示链接的状态。0 表示链接连通而 -1 表示链接断开。本例中,链接是连通的。
- Links 部分列出了包含在该分区中的链接。除了未显示相关联的路由外,此列表与 Routes 部分提供的列表完全相同。
============= 示例 3 =================
本例执行链接搜索操作并报告出所有找到的链接。如代码示例 10-6 所示,使用此命令时您应有一个列出 Sun Fire Link 网络中所有实体连接的图表,包括端点细节。
注意 - 此图表可能已存在。《Sun Fire Link Hardware Installation Guide》
中推荐在 Sun Fire Link 网络安装时创建此图表。
|
若您有实体链接图表,则可将 wcfmver 命令生成的搜索链接组与该图表列表进行比较。这将告知我们是否有任何链接断开,若有,则会告知是哪个链接断开了。
代码示例 10-6 带节点自变量的 wcfmver 输出
fm_host# cd /opt/SUNWwcfm/bin
|
fm_host# ./wcfmver -n sys_a_sc1:a sys_b_sc1:a link-sw1 link-sw2 fabric1
|
Node = sys_a_sc1:a
|
Node = sys_b_sc1:a
|
Node = link-sw1
|
Node = link-sw2
|
Starting discovery on:
|
tools.wcfmver.WildcatFMVer@1c88f9e
|
Estimated wait time = 180 sec.
|
..............................................................................
|
..............................................................................
|
..............................................................................
|
|
The following links are in the configuration but were not discovered...
|
|
The following links were discovered but are not in the configuration...
|
|
sys_b_sc1:A:8:1:2=sys_a_sc1:A:8:1:2=-1
|
sys_b_sc1:A:8:1:0=sys_a_sc1:A:8:1:0=-1
|
sys_b_sc1:A:9:1:2=link-sw1::::0=-1
|
sys_b_sc1:A:9:1:0=link-sw2::::0=-1
|
sys_a_sc1:A:9:1:2=link-sw1::::1=-1
|
sys_a_sc1:A:9:1:0=link-sw2::::1=-1
|
下面说明了如何理解代码示例 10-6 所示的输出:
- 前 4 行列出了链接搜索中涉及的节点和交换机。
- 下面三行说明搜索进程已启动以及预期的完成时间。
- 搜索报告的第一部分列出分区中所有未搜索到的链接。本例并未显示这种链接。
- 报告最后的部分列出已搜索到但并未在配置中的链接。本例中,报告出 6 个这种链接。
使用 showlinks 命令监视 Sun Fire Link 交换机上的链接状态
showlinks 命令报告运行该命令的交换机中链接的状态(包括错误)。登录到交换机并在 SSC 提示符下执行 showlinks。表 10-2 所示为 showlinks 命令的语法。
表 10-2 showlinks 命令的语法
showlinks
|
显示链接状态和错误统计信息。
|
showlinks -l
|
只显示链接状态。
|
showlinks -e
|
只显示错误统计信息。
|
showlinks [-e | -l] loop [时间]
|
每隔时间 秒重复一次 showlinks 操作,直到按回车键为止。重复时间间隔的缺省值为 1 秒。
|
代码示例 10-7 举例说明如何在交换机 wcsw1 上使用 showlinks。本例中,只有链接 0 为 up(连通)。所有其它链接均处于 waitup(等待)状况,这意味着它们已在一个分区中配置,但当前并未用于传送数据。这有可能预示存在问题,也可能没有问题。下一步将识别这些链接所连接的其它端点,并调查远程链接端点的状态。
代码示例 10-7 showlinks 输出示例
wcsw1:SSC> showlinks
|
|
======================================
|
LINKS
|
======================================
|
Link State
|
---- ------------
|
0 up
|
1 waitup
|
2 waitup
|
3 waitup
|
4 waitup
|
|
======================================
|
ERRORS
|
======================================
|
Link Current Average Total Num of intervals Min/interval
|
---- ------- ------- ------- ---------------- ------------
|
0 0 0 0 0 60
|
1 0 0 0 0 60
|
2 0 0 0 0 60
|
3 0 0 0 0 60
|
4 0 0 0 0 60
|
理解链接断开消息
本节说明如何理解包含在消息日志和/或发送到控制台的消息中的链接状态信息。
Sun Fire 6800 系统的链接断开消息
当检查 /var/adm/messages 以查找 Sun Fire 6800 域中的“链接断开”消息时,请查找字符串“link n down”,其中,n 为 0 或 2。
代码示例 10-8 中所示的文本为 Sun Fire 6800 域的典型“链接断开”消息内容。该消息指出群集节点 sf6800-1-a 的 IB8 (wci 29) 上的链接 0 于 9 月 16 日 9:17:44 断开。
代码示例 10-8 Sun Fire 6800 域中 IB8,端口 0 的“链接断开”消息
Sep 16 09:17:44 sf6800-1-a wrsm: [ID 220426 kern.notice] NOTICE:
wci 29 link 0 down: hardware-shutdown
|
若该链接位于 I/O 插槽 IB9,则 wci ID 应为 31。代码示例 10-9 所示即为这样的一个例子,它显示端口 2 为发生故障的链接。
代码示例 10-9 Sun Fire 6800 域中 IB9,端口 2 的“链接断开”消息
Sep 16 9:22:34 sf6800-1-a wrsm: [ID 311464 kern.notice] NOTICE:
wci 31 link 2 down: hardware-shutdown
|
注意 - Sun Fire Link I/O 部件 IB8 和 IB9 的 wci ID 总是分别赋予 29 和 31。
|
在 Sun Fire 6800 系统中,链接 0 位于安装在 Sun Fire Link 部件插槽 2 中的 Paroli 板上。链接 2 位于安装在插槽 1 中的 Paroli 板上。请参考图 10-2 以查看 wci n 和 link n 值的物理位置。请参考《Sun Fire Link 系统概述》
和《Sun Fire Link Hardware Installation Guide》
以获得有关 Sun Fire 系统机柜中 Sun Fire Link 组件物理位置的其它细节。
链接连通时,此转变会由一条消息来报告,该消息包含字符串“link n up”。请参见代码示例 10-10。本例中,在代码示例 10-8 中断开的链接于 10:02:25 恢复连通。
代码示例 10-10 Sun Fire 6800 域中 IB8,端口 0 的“链接连通”消息
Sep 16 10:02:25 sf6800-1-a wrsm: [ID 881732 kern.notice] NOTICE:
wci 29 link 0 up
|
图 10-2 Sun Fire 6800 机柜中 Sun Fire Link 光学端口的位置
Sun Fire 15K/12K 系统的链接断开消息
Sun Fire 15K/12K 域报告的“链接断开”消息与 Sun Fire 6800 域所报告的只是稍有不同。代码示例 10-11 所示为 Sun Fire 15K 域报告的“链接断开”消息内容示例。
代码示例 10-11 Sun Fire 15K 域的“链接断开”消息
Sep 16 8:18:23 sf15k-1-b wrsm: [ID 125775 kern.notice] NOTICE:
wci 61 link 0 down: hardware-shutdown
|
本例中,发生故障的链接为 wci 61 中的光学端口 0。这些 Sun Fire Link 资源被分配到 SC sf15k-1 的域 B。
在 Sun Fire 15K/12K 系统中,wci ID 的数值从 29 开始,并且对机柜中的每个其它 I/O 插槽以 32 为间隔递增。请参见图 10-3 以获得有关 Sun Fire 15K/12K 机柜的 wci 和 I/O 插槽关系的说明。
图 10-3 Sun Fire 15K/12K 机柜中 Sun Fire Link 光学端口的位置
Sun Fire Link 交换机的链接断开消息
当 Sun Fire Link 交换机遇到“链接断开”情况时,它生成一条与代码示例 10-12 中所示消息示例类似的消息。
代码示例 10-12 Sun Fire Link 交换机的“链接断开”消息
Sep 16 11:06:13 switch2-1 wrsm: [ID 546774 kern.notice] NOTICE:
wci 1 link 4 down: hardware-shutdown
|
下面总结了区别交换机“链接断开”消息与 Sun Fire 系统生成的消息的主要特征:
- 由于交换机并非 Solaris 主机(没有域),因此主机名字段中不显示域。
- 交换机的 wci ID 将始终为 1。
- 一台交换机最多可包含 8 个 Paroli 端口。因此,link 数值将为范围在 0-7 之间的整数。
在代码示例 10-12 的消息示例中,位于交换机 switch2-1 的端口 4 中的链接于 9 月 16 日 11:06:13 断开。图 10-4 图示了 Sun Fire Link 交换机机柜中光学端口的实体布局。
图 10-4 Sun Fire Link 交换机中的光学端口位置
链接状况更改的自动通知
本节说明当群集节点上的链接状况更改时,自动生成电子邮件消息的两种方法。
- 一种方法使用现有功能,此功能为 Sun Management Center 警报处理程序的一部分。
- 另一种方法包括创建一个 shell 脚本,在每个节点上巡回检测链接状况,并在链接状况更改时发送电子邮件。
Sun Management Center 警报处理方法
运行在每个群集节点上的 WRSM 代理通过检查由 kstat 的本地实例生成的数据来监视本地群集组件的运作状况。当所监视的属性遇到指定的警报触发事件时,WRSM 代理会向 Sun Management Center 服务器发送警报信号。
可使用 Sun Management Center 属性编辑器来确定可触发警报的群集属性以及作为触发点的阈值。请参见《Sun Management Center 软件用户指南》中有关“属性编辑器”的讨论。
对于大多数警报情况,Sun Management Center 控制台只是简单地显示一个彩色的警报图标。该图标链接到有关错误的信息,通过沿着此链接路径浏览到一张表格(其中含有有关触发该警报的组件的详细信息),即可看到这些错误信息。
除了显示警报图标或属性状态的其它迹象外,Sun Management Center 可设置为当检测到特定警报时,给一个或多个收件人发送电子邮件。可指示 Sun Management Center 软件在链接状况更改时发送电子邮件消息。简而言之,执行这一操作的步骤如下:
1. 创建一个脚本,运行此脚本可导致发送电子邮件给您或其他人。将该脚本存储在 /var/opt/SUNWsymon/bin 中。
2. 转至“互联体细节”窗口并打开左边窗格中的“互联体信息”文件夹。
随即会显示一个包含“分区表”、“成员表”和“链接表”的窗口。
3. 在“链接表”中,选择您要启用来触发电子邮件的数据特性单元格。
- 要在任何链接状况更改时发送电子邮件,请右击链接状况栏顶端的单元格。
- 要在特定链接状况更改时发送电子邮件,请右击每个感兴趣的链接所属的单个链接状况单元格。
这两种操作均会打开“属性编辑器”窗口。
4. 单击“属性编辑器”的“警报”选项卡。
5. 输入适当的警报阈值,然后单击“应用”按钮。
6. 单击“操作”选项卡。
7. 单击“紧急操作”旁边的“操作...”按钮。此步骤注册该操作。
8. 在“紧急操作”方框中输入电子邮件启动脚本的名称,然后将“自动”选项设置为“是”。
9. 单击“确定”以接受该操作,然后关闭“操作”对话框。
注意 - 作为写入您自己的电子邮件启动脚本的替代方法,可使用 Sun Management Center 内核读取器模块中内含的电子邮件工具。此方法如《Sun Management Center 软件用户指南》中“属性编辑器”讨论部分所述。
|
警报通知的替代方法
若 Sun Management Center 软件不可用,则您可能想要使用自己的错误监视工具,在 /var/adm/messages 中对前面所述的链接状况消息中包含的关键字进行搜索。
或者,您可以设置一个 shell 脚本,它将巡回检测每个节点上的链接状况,并在链接状况更改时发送电子邮件。这种脚本的示例如代码示例 10-13 所示。代码示例 10-14 为此脚本示例将发送的电子邮件内容的一个例子。此脚本还发送消息到控制台,如代码示例 10-15 所示。
注意 - 代码示例 10-13 中的脚本并非 Sun Microsystems, Inc. 所支持的产品。它放在此处仅仅是作为概念上的说明。
|
代码示例 10-13 用于链接状况更改自动通知的 Shell 脚本示例
#!/bin/sh
|
# Example of Fire Link Alarm Mailer script for Cluster Nodes.
|
# Sept-17-2002
|
# This script polls the Fire Link cluster node link states
|
# and send alarm (mail) to registered users (mail list)
|
# when a link goes down or up.
|
# Polling period in seconds, is set in the sleep instruction.
|
# The script can be run from any account, but it is recommended
|
# to launch it as a startup script by including it in
|
# /etc/init.d/flam
|
|
LOCAL_NODE="'hostname"
|
LINKS_STATE="/var/tmp/flink_node_state.tmp"
|
CHKS0=0
|
while true
|
do
|
date
|
/usr/platform/sun4u/sbin/wrsmstat wrsm \
|
| /bin/nawk -v NODE=$LOCAL_NODE í\
|
/^Port ID/ {portid=$3} \
|
/^Link [0-2]/ {link=$2} \
|
$2 ~ /State/ {linkstate=$3; \
|
if (linkstate != "up") \
|
{linkstate = "down"} \
|
{printf ("Fire Link Status: %s WCI %s LINK %s : %s\n", \
|
NODE, portid, link, linkstate)}}' \
|
| tee $LINKS_STATE
|
CHKS="'cat $LINKS_STATE | sum"
|
echo "\n"
|
if [ "$CHKS" != "$CHKS0" ]
|
then
|
mailx -s "Fire Link Alarm: $LOCAL_NODE Links Status Change" \
|
rudolph@east \
|
< $LINKS_STATE
|
fi
|
CHKS0=$CHKS
|
sleep 5
|
done
|
代码示例 10-14 自动通知脚本生成的邮件
From: Super-User <root>
|
---|
Message-Id: <200209190036.g8J0aEN15656@eis-sg24-1-a>
|
To: rudolph@east
|
Subject: Fire Link Alarm: eis-sg24-1-a Links Status Change
|
|
Fire Link Status: eis-sg24-1-a WCI 29 LINK 0 : up
|
Fire Link Status: eis-sg24-1-a WCI 29 LINK 2 : down
|
Fire Link Status: eis-sg24-1-a WCI 31 LINK 0 : up
|
Fire Link Status: eis-sg24-1-a WCI 31 LINK 2 : up
|
From: Super-User <root>
|
代码示例 10-15 自动通知脚本发送给标准输出的消息
Wed Sep 18 13:19:16 EDT 2002
|
---|
Fire Link Status: eis-sg24-1-a WCI 29 LINK 0 : up
|
Fire Link Status: eis-sg24-1-a WCI 29 LINK 2 : down
|
Fire Link Status: eis-sg24-1-a WCI 31 LINK 0 : up
|
Fire Link Status: eis-sg24-1-a WCI 31 LINK 2 : up
|
|
Wed Sep 18 13:19:21 EDT 2002
|
Fire Link Status: eis-sg24-1-a WCI 29 LINK 0 : up
|
Fire Link Status: eis-sg24-1-a WCI 29 LINK 2 : down
|
Fire Link Status: eis-sg24-1-a WCI 31 LINK 0 : up
|
Fire Link Status: eis-sg24-1-a WCI 31 LINK 2 : up
|
|
Wed Sep 18 13:19:26 EDT 2002
|
Fire Link Status: eis-sg24-1-a WCI 29 LINK 0 : up
|
Fire Link Status: eis-sg24-1-a WCI 29 LINK 2 : down
|
Fire Link Status: eis-sg24-1-a WCI 31 LINK 0 : up
|
Fire Link Status: eis-sg24-1-a WCI 31 LINK 2 : up
|
理解 POST 输出中的链接状态
本节说明如何理解 POST 诊断工具报告的光学链接状态。
注意 - POST 诊断工具的 Sun Fire Link 部分评估直接支持该链接端口的电路的完整性。不过,它们并不亲自开启或执行光学链接的功能性测试。
|
Sun Fire 6800 系统 POST 输出中的链接状态
本节说明与 Sun Fire Link 组件直接相关的 Sun Fire 6800 系统 POST 输出部分。使用 setupdomain 将域诊断级别设置为缺省值(至少在此级别)。每个 Sun Fire Link 部件进行两组 POST 测试:板互连测试和 I/O 基本测试。每种类型的输出示例如下所示。
代码示例 10-16 显示 POST 板互连测试的输出示例。这些测试中的任何故障均表示 WCI ASIC 将无法使用。
代码示例 10-16 POST 互连测试的输出示例
Powering boards on ...
|
{/N0/IB8/P1} Subtest: MemBistxt Passed
|
{/N0/IB8/P1} Subtest: MemBist Passed
|
{/N0/IB8/P1} Subtest: LogicBist Passed
|
{/N0/IB8/P1} Running Board Interconnect Test
|
{/N0/IB8/P1} Subtest: Wci1 to Link0 Test
|
{/N0/IB8/P1} Subtest: Wci1 to Link2 Test
|
{/N0/IB8/P1} Subtest: to Safari Test
|
{/N0/IB8/P1} Board Interconnect Test Passed
|
代码示例 10-17 所示为 POST 基本 I/O 测试的输出示例。输出示例的最后两行表示对 IB8 上的端口 P0 和 P1 的测试。此 P0 为控制 I/O 接口卡(插在 Sun Fire Link 部件的插槽 0 和 3 中)的 ASIC。本例中,P1 为控制两个光学链接 0 和 2 的 ASIC。由于此 POST 输出示例用于 IB8,因此 P1 的 WCI ID 为 29。
本例中,最后一行显示 ASIC 已通过基本 I/O 测试。
代码示例 10-17 POST 基本 I/O 测试的输出示例
Copying IO prom to Cpu dram
|
..........{/N0/SB0/P0} Running PCI IO Controller Basic Tests ..............
|
{/N0/SB0/P0} Running Wci Basic Tests
|
{/N0/SB0/P0} Subtest: Wci Check Reset State for aid 0x1d
|
{/N0/SB0/P0} Subtest: Wci Register Initialization for aid 0x1d
|
{/N0/SB0/P0} Subtest: Wci Check SRAM Entries for aid 0x1d
|
{/N0/SB0/P0} Subtest: Wci Cluster Loopback Initialization for aid 0x1d
|
{/N0/SB0/P0} Subtest: Wci Cluster Start Performance Registers for aid 0x1d
|
{/N0/SB0/P0} Running Cluster Data Walk Tests
|
{/N0/SB0/P0} Subtest: Wci Cluster Data Walk Patterns for aid 0x1d
|
{/N0/SB0/P0} Subtest: Wci Cluster Data Half Patterns for aid 0x1d
|
{/N0/SB0/P0} Running Cluster Address Walk Tests
|
{/N0/SB0/P0} Subtest: Wci Cluster LoopBack Address Bits 12 to 6 for aid 0x1d
|
{/N0/SB0/P0} Subtest: Wci Cluster LoopBack Address Bits 21 to 13 for aid 0x1d
|
{/N0/SB0/P0} Subtest: Wci Cluster LoopBack Address Bits 33 to 22 for aid 0x1d
|
{/N0/SB0/P0} Subtest: Wci Cluster LoopBack Address Bits 41 to 34 for aid 0x1d
|
{/N0/SB0/P0} Running Wci Cluster Restore Test
|
{/N0/SB0/P0} Subtest: Wci Restore Register State for aid 0x1d
|
{/N0/SB0/P0} Running Optical Link LoopBack Tests
|
{/N0/SB0/P0} Subtest: Wci Link LoopBack for aid 0x1d
|
{/N0/SB0/P0} After 5 Attempt(s), Node=0 Slot=8 Port=1 WCI=1 Link=0 link was
|
not in loopback
|
{/N0/SB0/P0} Node=0 Board=8 Port=1 WCI=1 Link=1 Link unpopulated
|
{/N0/SB0/P0} After 5 Attempt(s), Node=0 Slot=8 Port=1 WCI=1 Link=2 link was
|
not in loopback
|
{/N0/SB0/P0} @(#) lpost 5.13.0 2002/05/28 20:31
|
{/N0/SB0/P0} Copyright 2001 Sun Microsystems, Inc. All rights reserved.
|
{/N0/IB8/P0} Passed
|
{/N0/IB8/P1} Passed
|
注意 - 路径 {N0/SB0/P0} 指向 CPU。这仅仅表示测试是从该处理器运行的。
|
为了获得 POST 测试结果的摘要,在 OBP 命令提示符下输入 show-post-results 命令。代码示例 10-18 包含了此操作的一个示例。与链接相关的 POST 输出出现在结尾的 Board 8 和 Board 9 部分。
代码示例 10-18 show-post-results 输出示例
{2} ok
|
---|
{2} ok show-post-results
|
Board 0, Type: CPU/Memory
|
port 0 - Status = Pass, Type: CPU/Memory
|
E-cache: 8 MB R-freq: 750 MHz A-freq: 750 MHz
|
port 1 - Status = Pass, Type: CPU/Memory
|
E-cache: 8 MB R-freq: 750 MHz A-freq: 750 MHz
|
port 2 - Status = Pass, Type: CPU/Memory
|
E-cache: 8 MB R-freq: 750 MHz A-freq: 750 MHz
|
port 3 - Status = Pass, Type: CPU/Memory
|
E-cache: 8 MB R-freq: 750 MHz A-freq: 750 MHz
|
Board 6, Type: PCI IO
|
port 24 - Status = Pass, Type: PCI IO
|
port 25 - Status = Pass, Type: PCI IO
|
Board 8, Type: CPCI WCI board with 2 pci slots & 2 PAROLI slots
|
port 28 - Status = Pass, Type: CPCI WCI board with 2 pci slots & 2 PAROLI
|
port 29 - Status = Pass, Type: CPCI WCI board with 2 pci slots & 2 PAROLI
|
Board 9, Type: CPCI WCI board with 2 pci slots & 2 PAROLI slots
|
port 30 - Status = Pass, Type: CPCI WCI board with 2 pci slots & 2 PAROLI
|
port 31 - Status = Pass, Type: CPCI WCI board with 2 pci slots & 2 PAROLI
|
{2} ok
|
port 29 和 port 31 两行分别表示 IB8 和 IB9 中的 WCI ASIC 状态。这些 ASIC 已分配了 WCI ID 29 和 31。此输出表示两个 ASIC 均已通过 POST 测试。
注意 - 摘要的 Board 0 和 Board 6 部分报告出 4 个 CPU 模块和 Sun Fire 6800 PCI I/O 模块的测试状态。
|
Sun Fire 15K/12K 系统 POST 输出中的链接状态
在 Sun F15K/12K 系统上,POST 诊断工具在 wpci 板上运行。POST 输出包含指明该域可用链接数目的摘要报告。若任何链接未通过 POST 诊断,则摘要也标识它们。
在代码示例 10-19 中,POST 摘要报告指出 Sun Fire 15K/12K 域的 4 个链接中有一个发生故障。
代码示例 10-19 指出链接故障的 POST 摘要
CPU_Brds: Proc Mem P/B: 3/1 3/0 2/1 2/0 1/1 1/0 0/1 0/0
|
Slot Gen 3210 /L: 10 10 10 10 10 10 10 10 CDC
|
SB06: P PPPP PP PP PP PP PP PP PP PP P
|
|
I/O_Brds: IOC P1/Bus/Adapt IOC P0/Bus/Adapt
|
Slot Gen Type P1 B1/10 B0/10 P0 B1/eb10 B0/10 (e=ENet, b=BBC)
|
IO06: P wPCI P p PP_p p _m
|
IO07: P wPCI P p fP_m p _m
|
|
WCI_Brds: WCI/Link WCI/Link WCI/Link
|
Slot Gen 3 210 2 210 1 210
|
IO06: P P pmp
|
IO07: P P pmf
|
|
Configured in 333 with 4 procs, 8.000 GBytes, 1 IO adapter, 3 wlinks.
|
Interconnect frequency is 149.975 MHz, Measured.
|
Golden sram is on Slot IO6.
|
POST (level=16, verbose=40) execution time 4:52
|
下面说明如何理解此报告:
- 此域配置有两个 WPCI 部件,位于 I/O 插槽 6 和 7。
- 报告的文字部分的第一行:
Configured in 333 with 4 procs, 8.000 GBytes, 1 IO adapter, 3 wlinks.
|
显示只找到三个可用链接。应有 4 个链接。
- 要确定哪个链接不正常,请查看每个 WPCI 的状态代码。此信息在报告的 WCI_Brds 部分最后一栏中提供。
代码示例 10-20
WCI_Brds WCI/Link WCI/Link WCI/Link
|
Slot Gen 3 210 2 210 1 210
|
IO06: P P pmp
|
IO07: P P pmf
|
- 对于 IO 插槽 6,链接 0 和 2 状态均为 p,表示通过。链接 1 状态为 m,表示缺失。链接 1 将总是缺失状态,因为每个插槽只有两个链接,分配为 0 和 2。
- 对于 IO 插槽 7,链接 2 状态为 p,但链接 0 的状态为 f,表示其未通过 POST 测试。
Sun Fire Link 交换机 POST 输出中的链接状态
Sun Fire Link 交换机的 POST 诊断包括评估每个交换机链接的测试。代码示例 10-21 显示在交换机 wcsw1 中链接 1 上进行测试的结果。与其它 POST 输出一样,所有测试故障均由 FAILED 关键字标明。
代码示例 10-21 交换机 POST 会话的部分链接测试输出
Sep 19 17:58:29 wcsw1 Switch.POST: {/LINK1/} Testing Link 1...
|
Sep 19 17:58:29 wcsw1 Switch.POST: {/LINK1/} Running test "i2cprobe"
|
Sep 19 17:58:29 wcsw1 Switch.POST: {/LINK1/} Test "i2cprobe" PASSED.
|
Sep 19 17:58:29 wcsw1 Switch.POST: {/LINK1/} Running test "volt"
|
Sep 19 17:58:30 wcsw1 Switch.POST: {/LINK1/} Test "volt" PASSED.
|
Sep 19 17:58:30 wcsw1 Switch.POST: {/LINK1/} Running test "temp"
|
Sep 19 17:58:30 wcsw1 Switch.POST: {/LINK1/} Test "temp" PASSED.
|
Sep 19 17:58:30 wcsw1 Switch.POST: {/LINK1/} Running test "frubasic"
|
Sep 19 17:58:32 wcsw1 Switch.POST: {/LINK1/} Test "frubasic" PASSED.
|
Sep 19 17:58:32 wcsw1 Switch.POST: {/LINK1/} Running test "jtagid"
|
Sep 19 17:58:32 wcsw1 Switch.POST: {/LINK1/} Test "jtagid" PASSED.
|
Sep 19 17:58:34 wcsw1 Switch.POST: {/LINK1/} Running test "interconnect"
|
Sep 19 17:58:35 wcsw1 Switch.POST: {/LINK1/} WCIX is in use. Running
|
hot-plug interconnect test.
|
Sep 19 17:58:44 wcsw1 Switch.POST: {/LINK1/} Test "interconnect" PASSED.
|
Sep 19 17:58:44 wcsw1 Switch.POST: {/LINK1/} JPOST version 1.12.28 PASSED
|
on Link 1.
|
收集 Sun 服务的错误诊断信息
本节说明如何收集有助于诊断 Sun Fire Link 群集的诊断信息。若需要向 Sun Service 寻求 Sun Fire Link 群集方面的技术支持,则在提出请求时应备有这些信息。
收集这些信息的最有效方法是运行 Sun Explorer 数据收集工具。若尚未安装此工具,则可从 GeSE 网站的 Explorer 页面下载一份。发行时,GeSE 网站的 URL 如下:
http://ginko.central/kds/explorer/index.html
此站点包括下载和安装 SUNWexplo 软件包(它包含 Explorer 数据收集脚本)的指导。
在群集的 FM 管理站以及每个怀疑有链接故障的群集节点上运行 Sun Explorer。要执行此操作,以 root 用户身份登录到 FM 管理站及各群集节点,然后输入以下命令行:
# /opt/SUNWexplo/bin/explorer
|
Sun Explorer 收集系统信息,将其打包为压缩的 tar 文件,此文件可发送到 Sun Services。在 FM 管理站上,Sun Explorer 脚本收集详细的互联体信息,包括每个互联体中分区的拓扑结构和链接状况。在每个群集节点上,它收集以下信息:
- WCI 接口统计信息
- 路由信息
- RSM 控制器统计信息
- RSM 控制器配置数据
若 Sun Explorer 不可用,则您可使用各种 Solaris 和 FM 管理命令来收集足够的信息。
如使用 FM CLI 监视链接状态中所述,在 FM 管理站上,运行 wcfmstat 命令。
如使用 WRSM CLI 在节点级别监视链接状态中所述,在每个群集节点上,运行 Solaris 命令 wrsmsat。
此外,复制 /var/adm/messages 的相关部分。
Sun Fire Link 互联体管理员指南
| 817-0747-11
|
|
Copyright © 2003, Sun Microsystems, Inc. 版权所有。