Cisco Catalystスイッチの冗長化技術であるStackWise(スタック)を導入すると、複数台の物理スイッチが論理的に「1台のスイッチ」として動作します。運用管理が楽になる一方で、悩みどころになるのが「各筐体の個別死活監視をどう行うか」という問題です。
スタックを組むと管理用IPアドレス(SVIなど)も1つに統合されるため、個々の物理筐体に対して個別にPingを打って死活監視することができなくなります。
本記事では、スタック構成における各筐体の監視・確認方法を、実機コマンドの出力例やSyslogメッセージを交えて整理します。
1. スタック状態を監視する3つのアプローチ
実務の監視設計では、以下の3つを組み合わせて各筐体の状態を補足します。
① SNMPポーリングによる個別ステータス取得(監視サーバー向け)
監視サーバー(NMS)からスタックの「代表IPアドレス」に対して定期的にSNMPを取得します。Cisco固有のMIBであるCISCO-STACKWISE-MIB内のオブジェクトciscoStackMemberState(OID: 1.3.6.1.4.1.9.9.500.1.2.1.1.1)を監視することで、代表IPひとつから各メンバー筐体のステータスを個別に取得できます。
値の判定基準は、3 (Ready)が正常稼働中、5 (Removed)が異常(スタックから離脱)です。
② Syslog / SNMP Trapによるイベント監視(リアルタイム検知)
筐体の離脱(電源断や故障)、スタックリンクのダウン、Active/Standbyの切り替わり(スイッチオーバー)が発生した際、稼働しているスイッチがSyslogサーバーやNMSへ自発的に送信するイベントログを検知します。
③ 対向ポートのステータス監視(間接的な物理監視)
スタックは通常、各筐体にまたがって対向機器(コアスイッチ等)とEtherChannel(マルチシャシー・イーサチャネル:MEC)を構成します。対向機器側で個々の物理ポート(LACPメンバーポート)の状態をSNMP等で監視しておけば、どちらか片方の筐体がダウンした際に「メンバーポートのDown」として間接的かつ確実に検知できます。
2. 実機で確認するコマンドと出力例
定期点検や障害切り分け時に、CLIから各筐体の物理・論理ステータスを直接確認するための重要コマンド3選です。
コマンド①:show switch(全体の状態と役割の確認)
スタック全体における各筐体の役割(Active / Standby / Member)および現在のステータスを確認します。
⭕ 正常時の出力例(2台スタックが正常にReady状態)
Switch# show switch
Switch/Stack Mac Address : 70b3.17e3.f600 - Local Mac Address
Mac persistency wait time: Indefinite
H/W Current
Switch# Role Mac Address Priority Version State
-------------------------------------------------------------------------------------
*1 Active 70b3.17e3.f600 15 V01 Ready
2 Standby 70b3.17e9.cf00 14 V01 Ready*が付いているスイッチ(上記ではSwitch 1)が、現在コンソールや管理通信を処理しているActiveスイッチです- Stateが両方とも
Readyになっているのが正常な状態です
❌ 異常時の出力例(2号機が電源断等でスタックから離脱)
Switch# show switch
Switch/Stack Mac Address : 70b3.17e3.f600 - Foreign Mac Address
Mac persistency wait time: Indefinite
H/W Current
Switch# Role Mac Address Priority Version State
-------------------------------------------------------------------------------------
*1 Active 70b3.17e3.f600 15 V01 Ready
2 Member 0000.0000.0000 0 V01 Removed離脱した2号機のRoleがMemberに格下げされ、StateがRemoved(スタックから削除)に変化します。
コマンド②:show switch stack-ports summary(スタック専用ポートの状態確認)
背面にある専用スタックポートおよびスタックケーブル自体の接続状態を、物理レベルで確認します。
⭕ 正常時の出力例(リングトポロジーが正常に形成されている場合)
Switch# show switch stack-ports summary
Sw#/Port# Port Status Neighbor Cable Length Link OK Link Active Sync OK #Changes to LinkOK In Loopback
-------------------------------------------------------------------------------------------------------------------
1/1 OK 2 50cm Yes Yes Yes 3 No
1/2 OK 2 50cm Yes Yes Yes 4 No
2/1 OK 1 50cm Yes Yes Yes 1 No
2/2 OK 1 50cm Yes Yes Yes 1 NoすべてのポートのPort StatusがOKであり、Link OK / Link Active / Sync OKがすべてYesになっていることを確認します。
❌ 異常時の出力例(1/2ポートのケーブルが抜けた、または接触不良の場合)
Switch# show switch stack-ports summary
Sw#/Port# Port Status Neighbor Cable Length Link OK Link Active Sync OK #Changes to LinkOK In Loopback
-------------------------------------------------------------------------------------------------------------------
1/1 OK 2 50cm Yes Yes Yes 1 No
1/2 Down None 50cm No No No 2 No
2/1 Down None 50cm No No No 2 No
2/2 OK 1 50cm Yes Yes Yes 1 Noケーブルに問題が発生したポートはStatusがDownまたはAbsent(未接続)になり、Link OK等のステータスがNoに変わります。
コマンド③:show redundancy state(冗長化同期の状態確認)
ActiveとStandbyの2台間で、コンフィグやルーティング情報が正常に同期できているかを確認します。
⭕ 正常時の出力例
Switch# show redundancy state
my state = 13 -ACTIVE
peer state = 8 -STANDBY HOT
Mode = Duplex
Unit = Primary
Unit ID = 1
Redundancy Mode (Operational) = sso
Redundancy Mode (Configured) = sso
Split Mode = Disabledpeer stateがSTANDBY HOTになっており、Redundancy Modeがsso(Stateful Switchover:ノンストップ切り替え)で動作していることを確認します。これにより、Active障害時も即座にStandbyへ処理が引き継がれます。
3. 障害発生時に出力される実際のSyslogメッセージ
Syslog監視に登録しておくべき、スタック障害発生・復旧時のログパターンです。
パターンA:Active(1号機)が突然電源断・故障した場合(スイッチオーバー)
1号機がダウンし、Standbyだった2号機が自動的にActiveへ昇格した瞬間、新Active(2号機)のコンソールおよびSyslogサーバーへ出力されます。
%PLATFORM-6-HASTATUS: RP switchover, received chassis event to become active
%REDUNDANCY-3-SWITCHOVER: RP switchover (PEER_DOWN)%REDUNDANCY-3-SWITCHOVERはスタックの主導権切り替えが発生したことを示す最重要アラートです。監視への登録を推奨します。
パターンB:Standby(2号機)が電源断などでダウンした場合
生き残ったActiveスイッチ(1号機)から、相方であるStandbyスイッチがロストしたことを示すログが出力されます。
%NIF_MGR-6-PORT_LINK_DOWN: Switch 1 R0/0: nif_mgr: Port 39 on front side stack link 0 is DOWN.
%STACKMGR-6-STACK_LINK_CHANGE: Switch 1 R0/0: stack_mgr: Stack port 1 on Switch 1 is downパターンC:ダウンしていた筐体が復旧し、スタックに再同期した場合
電源復旧などによって2号機が再起動し、再びスタックに組み込まれて同期(SSO)が完了するまでの一連の正常化ログです。
%STACKMGR-6-SWITCH_ADDED: Switch 2 R0/0: stack_mgr: Switch 1 has been added to the stack.
%STACKMGR-6-STANDBY_ELECTED: Switch 2 R0/0: stack_mgr: Switch 1 has been elected STANDBY.
%HA_CONFIG_SYNC-6-BULK_CFGSYNC_SUCCEED: Bulk Sync succeeded
%RF-5-RF_TERMINAL_STATE: Terminal state reached for (SSO)BULK_CFGSYNC_SUCCEED(設定の同期成功)とRF-5-RF_TERMINAL_STATE(SSO冗長化完了)が届くことで、スタックが元の二重化状態へ完全復旧したと判断できます。
4. 対応しているCatalyst機器
本手順(コマンドおよびログ仕様)は、Catalyst 9000シリーズで共通して利用可能です。
- StackWise-160 / 80(専用モジュール/スタックケーブル方式):Catalyst 9200 / 9200L シリーズ
- StackWise-480 / 320(背面の専用スタックポート接続方式):Catalyst 9300 / 9300L シリーズ
- StackWise Virtual(10G/40G等のイーサネットポートを利用した仮想スタック方式):Catalyst 9400 / 9500 / 9600 シリーズ
まとめ
スタックを組んだCatalystスイッチの死活監視は、IPアドレス単位ではなく、SNMPのオブジェクト(OID)やSyslog監視によるメンバー個別ステータス判定で行うのが正解です。
構築時の監視設計にこれらのコマンドやログ定義を盛り込み、片筐体停止に気づけない「サイレント障害」を未然に防ぎましょう。