【Cisco】冗長化設定(StackWise Virtual)について

Catalyst9000の中規模~大規模向けネットワークのコアスイッチの冗長化機能であるStackWise Virtualについて、概要や設定、動作検証の結果についてまとめておきます。

StackWiseとStackWise Virtualの違い

Catalyst9000シリーズで2台のスイッチを1台の論理スイッチとして動作させる場合には、StackWiseという機能を使用します。

StackWiseには、2台のスイッチを専用のスタックモジュール、スタックケーブルを購入して接続を行うStackWiseと、光ファイバーケーブルを使用して10Gbpsまたは40Gbpsで接続を行うStackWise Virtualという2種類の方式があります。

この2つの方式については機種によってどちらを使用するのかが決まっており、以下の通りとなっています。

StackWise Virtualの特徴

StackWise Virtualを使用すると上記のように2台のスイッチを論理的に1台のスイッチのように動作させることができます。
これによりSTPVRRP等を使用しないシンプルな冗長構成にすることが可能です。

StackWise Virtualの主な特徴は以下の通りです。

  • 従来機のVSS(Virtual Switching System)と基本的な考え方は同じです。
  • 2台のスイッチで構成され、スイッチ同士をSVL(StackWise Virtual Link)DAD(Dual-Active Detection Link)で接続します。
  • 片方がアクティブ機、もう一方がスタンバイ機として動作します。
    SVLを使用して、アクティブ機からスタンバイ機へ設定情報やステータス情報を同期します。
  • SVLがすべて切断された場合、2台ともアクティブ機として動作してしまうデュアルアクティブ状態が発生します。
    DADを設定することで、デュアルアクティブ状態を検出しリカバリを行います。

StackWise Virtualを使用するには以下の条件が満たされている必要があります。

  • スイッチの型番、ライセンスの種類、ソフトウェアバージョンが一致していること
  • Network Advantageライセンスが適用されていること
  • SDMテンプレートの設定が一致していること

StackWise Virtualの設定

通常時、1号機がActive、2号機がStandbyとなるように設定を行います。

ドメインの設定

StackWise Virtualを有効化して、ドメインを設定します。

  • stackwise-virtual
    • domain [ドメインID( 1~255)] ※ドメインIDはデフォルト1
      ドメインIDは1号機と2号機で同じ値に設定する。

1号機の設定

Switch01(config)#stackwise-virtual
Please reload the switch for Stackwise Virtual configuration to take effect
Upon reboot, the config will be part of running config but not part of start up config.
Switch01(config-stackwise-virtual)#domain 100

2号機の設定

Switch02(config)#stackwise-virtual
Please reload the switch for Stackwise Virtual configuration to take effect
Upon reboot, the config will be part of running config but not part of start up config.
Switch02(config-stackwise-virtual)#domain 100

SVLの設定

10Gbpsまたは40GbpsのインタフェースでSVLを設定します。

  • interface [インタフェース番号]
    • stackwise-virtual link [リンク番号]
      リンク番号は1号機と2号機で同じ値に設定する。

1号機の設定

Switch01(config-stackwise-virtual)#interface range TenGigabitEthernet1/0/14-15
Switch01(config-if-range)# stackwise-virtual link 1
WARNING: All the extraneous configurations will be removed for TenGigabitEthernet1/0/14 on reboot
INFO: Upon reboot, the config will be part of running config but not part of start up config.
WARNING: All the extraneous configurations will be removed for TenGigabitEthernet1/0/15 on reboot
INFO: Upon reboot, the config will be part of running config but not part of start up config.

2号機の設定

Switch02(config-stackwise-virtual)#interface range TenGigabitEthernet1/0/14-15
Switch02(config-if-range)# stackwise-virtual link 1
WARNING: All the extraneous configurations will be removed for TenGigabitEthernet1/0/14 on reboot
INFO: Upon reboot, the config will be part of running config but not part of start up config.
WARNING: All the extraneous configurations will be removed for TenGigabitEthernet1/0/15 on reboot
INFO: Upon reboot, the config will be part of running config but not part of start up config.

DADの設定

10Gbpsまたは40GbpsのインタフェースでDADを設定します。

  • interface [インタフェース番号]
    • stackwise-virtual dual-active-detection

1号機の設定

Switch01(config-if-range)#interface TenGigabitEthernet1/0/16
Switch01(config-if)#stackwise-virtual dual-active-detection
WARNING: All the extraneous configurations will be removed for TenGigabitEthernet1/0/16 on reboot.
INFO: Upon reboot, the config will be part of running config but not part of start up config.
Switch01(config)#end

2号機の設定

Switch02(config-if-range)#interface TenGigabitEthernet1/0/16
Switch02(config-if)#stackwise-virtual dual-active-detection
WARNING: All the extraneous configurations will be removed for TenGigabitEthernet1/0/16 on reboot.
INFO: Upon reboot, the config will be part of running config but not part of start up config.
Switch02(config-if)#end

プライオリティの設定

StackWise Virtualにおける通常時のActiveStandbyを決めるため、プライオリティを設定します。(大きい方がActiveになります)

  • switch [スタックメンバー番号] priority [プライオリティ(1~15)]
    ※プライオリティはデフォルト1

1号機の設定

Switch01#switch 1 priority 10

2号機の設定

Switch02#switch 1 priority 5

ステータスの確認

SVLの確認

StackWiseが有効化されていることドメインIDSVLの設定状態を確認します。

  • show stackwise-virtual

1号機の確認

Switch01#show stackwise-virtual
Stackwise Virtual Configuration:
--------------------------------

Stackwise Virtual Configuration After Reboot:
---------------------------------------------
Stackwise Virtual : Enabled
Domain Number : 100

Switch  Stackwise Virtual Link  Ports
------  ----------------------  ------
1       1                       TenGigabitEthernet1/0/14
                                TenGigabitEthernet1/0/15

2号機の確認

Switch02#show stackwise-virtual
Stackwise Virtual Configuration:
--------------------------------

Stackwise Virtual Configuration After Reboot:
---------------------------------------------
Stackwise Virtual : Enabled
Domain Number : 100

Switch  Stackwise Virtual Link  Ports
------  ----------------------  ------
1       1                       TenGigabitEthernet1/0/14
                                TenGigabitEthernet1/0/15

DADの確認

DADの設定状態を確認します。

  • show stackwise-virtual dual-active-detection

1号機の確認

Switch01#show stackwise-virtual dual-active-detection
In dual-active recovery mode: No

Dual-Active-Detection Configuration:
-------------------------------------
Switch  Dad port                        Status
------  ------------                    ---------

Distributed Stack DAD Configuration After Reboot:
------------------------------------------------
Switch  Dad port                        Status
------  --------                        ------
1       TenGigabitEthernet1/0/16        down

2号機の確認

Switch02#show stackwise-virtual dual-active-detection
In dual-active recovery mode: No

Dual-Active-Detection Configuration:
-------------------------------------
Switch  Dad port                        Status
------  ------------                    ---------

Distributed Stack DAD Configuration After Reboot:
------------------------------------------------
Switch  Dad port                        Status
------  --------                        ------
1       TenGigabitEthernet1/0/16        down

スタックの確認

仮想MACアドレスプライオリティを確認します。

  • show switch

1号機の確認

Switch01#show switch
Switch/Stack Mac Address : b0c5.3c7a.a800 - Local Mac Address
Mac persistency wait time: Indefinite
                                             H/W   Current
Switch#   Role    Mac Address     Priority Version  State
-------------------------------------------------------------------------------------
*1       Active   b0c5.3c7a.a800     10     V01     Ready

2号機の確認

Switch02#show switch
Switch/Stack Mac Address : b0c5.3c7a.a980 - Local Mac Address
Mac persistency wait time: Indefinite
                                             H/W   Current
Switch#   Role    Mac Address     Priority Version  State
-------------------------------------------------------------------------------------
*1       Active   b0c5.3c7a.a980     5      V01     Ready

論理スイッチへの切り替え

2台のスイッチ間のSVLとDADを接続したら、再起動します。

注意点

再起動するまではSVLとDADの設定は有効になっておらず、コンフィグにも設定内容は反映されません。

再起動後、1台の論理スイッチに切り替わっていることを確認します。

SVLの確認

1号機と2号機のSVLの情報が表示されています。

Switch01#show stackwise-virtual
Stackwise Virtual Configuration:
--------------------------------
Stackwise Virtual : Enabled
Domain Number : 100

Switch  Stackwise Virtual Link  Ports
------  ----------------------  ------
1       1                       TenGigabitEthernet1/0/14
                                TenGigabitEthernet1/0/15
2       1                       TenGigabitEthernet2/0/14
                                TenGigabitEthernet2/0/15

DADの確認

1号機と2号機のDADの情報が表示されています。

Switch01#show stackwise-virtual dual-active-detection
In dual-active recovery mode: No
Recovery Reload: Enabled

Dual-Active-Detection Configuration:
-------------------------------------
Switch  Dad port                        Status
------  ------------                    ---------
1       TenGigabitEthernet1/0/16        up
2       TenGigabitEthernet2/0/16        up

スタックの確認

1号機と2号機のスタック状態やプライオリティが表示されています。
(「*」がついているほうがActiveです)

Switch01#show switch
Switch/Stack Mac Address : b0c5.3c7a.a800 - Local Mac Address
Mac persistency wait time: Indefinite
                                             H/W   Current
Switch#   Role    Mac Address     Priority Version  State
-------------------------------------------------------------------------------------
*1       Active   b0c5.3c7a.a800     10     V01     Ready
 2       Standby  b0c5.3c7a.a980     5      V01     Ready

動作検証

StackWise Virtualが正常に動作している状態で複数パターンの障害を発生させ、どのような動作、ステータスになるのか検証を行いました。

DAD リンク障害

1号機の2号機のDADリンクが切断された場合、SVLの状態に変化は発生せずフェールオーバも発生しません。(つまり何も起こらない)

SVLの状態

Switch01#show stackwise-virtual
Stackwise Virtual Configuration:
--------------------------------
Stackwise Virtual : Enabled
Domain Number : 100

Switch  Stackwise Virtual Link  Ports
------  ----------------------  ------
1       1                       TenGigabitEthernet1/0/14
                                TenGigabitEthernet1/0/15
2       1                       TenGigabitEthernet2/0/14
                                TenGigabitEthernet2/0/15

DADの状態

DADが切断されているため、1号機、2号機共にステータスが「down」となっています。

Switch01#show stackwise-virtual dual-active-detection
In dual-active recovery mode: No
Recovery Reload: Enabled

Dual-Active-Detection Configuration:
-------------------------------------
Switch  Dad port                        Status
------  ------------                    ---------
1       TenGigabitEthernet1/0/16        down
2       TenGigabitEthernet2/0/16        down

Active側が停止した場合

Active側(1号機)が停止した場合、フェールオーバが発生し、Standby側(2号機)がActiveになり動作を継続します。

SVLの状態

1号機の情報が非表示になります。

Switch01#show stackwise-virtual
Stackwise Virtual Configuration:
--------------------------------
Stackwise Virtual : Enabled
Domain Number : 100

Switch  Stackwise Virtual Link  Ports
------  ----------------------  ------
2       1                       TenGigabitEthernet2/0/14
                                TenGigabitEthernet2/0/15

DADの状態

1号機の情報が非表示になり、DADのステータスが「down」となります。

Switch01#show stackwise-virtual dual-active-detection
In dual-active recovery mode: No
Recovery Reload: Enabled

Dual-Active-Detection Configuration:
-------------------------------------
Switch  Dad port                        Status
------  ------------                    ---------
2       TenGigabitEthernet2/0/16        down

スタックの状態

元々Standbyだった2号機がActiveに変化し、1号機はステータスが「Removed」となります。
フェールオーバした際でも仮想MACアドレスは、1号機の値のままになります。

Switch01#show switch
Switch/Stack Mac Address : b0c5.3c7a.a800 - Foreign Mac Address
Mac persistency wait time: Indefinite
                                             H/W   Current
Switch#   Role    Mac Address     Priority Version  State
-------------------------------------------------------------------------------------
 1       Member   0000.0000.0000     0      V01     Removed
*2       Active   b0c5.3c7a.a980     5      V01     Ready

Active側を復旧させた後は、フェールバックは発生せず2号機がActiveのままとなります。

Switch01#show switch
Switch/Stack Mac Address : b0c5.3c7a.a800 - Local Mac Address
Mac persistency wait time: Indefinite
                                             H/W   Current
Switch#   Role    Mac Address     Priority Version  State
-------------------------------------------------------------------------------------
 1       Standby  b0c5.3c7a.a800     10     V01     Ready
*2       Active   b0c5.3c7a.a980     5      V01     Ready

Standby側が停止した場合

Standby側(2号機)が停止した場合、SVLの状態に変化は発生せずフェールオーバも発生しません。(つまり何も起こらない)

SVLの状態

2号機の情報が非表示になります。

Switch01#show stackwise-virtual
Stackwise Virtual Configuration:
--------------------------------
Stackwise Virtual : Enabled
Domain Number : 100

Switch  Stackwise Virtual Link  Ports
------  ----------------------  ------
1       1                       TenGigabitEthernet1/0/14
                                TenGigabitEthernet1/0/15

DADの状態

2号機の情報が非表示になり、DADのステータスが「down」となります。

Switch01#show stackwise-virtual dual-active-detection
In dual-active recovery mode: No
Recovery Reload: Enabled

Dual-Active-Detection Configuration:
-------------------------------------
Switch  Dad port                        Status
------  ------------                    ---------
1       TenGigabitEthernet1/0/16        down

スタックの状態

2号機のステータスが「Removed」となっています。

Switch01#show switch
Switch/Stack Mac Address : b0c5.3c7a.a800 - Local Mac Address
Mac persistency wait time: Indefinite
                                             H/W   Current
Switch#   Role    Mac Address     Priority Version  State
-------------------------------------------------------------------------------------
*1       Active   b0c5.3c7a.a800     10     V01     Ready
 2       Member   0000.0000.0000     0      V01     Removed

SVL リンク障害

SVLが2本ともダウンすると両方のスイッチがActiveとして動作する「デュアルアクティブ状態」が発生することになります。デュアルアクティブ状態が発生すると、1号機と2号機が同じ IP アドレスSSH キー、および STP ブリッジ ID を持つことになり、ネットワークが不安定になる可能性があります。

それを防ぐためにDADがデュアルアクティブ状態を検出し、検出後、Active側はSVLやDADを除く全ポートを停止しリカバリーモードに遷移、Standby側はActiveに遷移します。

SVL全停止後

1号機の状態

リカバリーモードに遷移しているため、プロンプトに「(recovery-mode)」と表示されます。

SVLの状態
Switch01(recovery-mode)>show stackwise-virtual
Stackwise Virtual Configuration:
--------------------------------
Stackwise Virtual : Enabled
Domain Number : 100

Switch  Stackwise Virtual Link  Ports
------  ----------------------  ------
1       1                       TenGigabitEthernet1/0/14
                                TenGigabitEthernet1/0/15
DADの状態

デュアルアクティブ状態が発生したことにより「In dual-active recovery mode: Yes」と表示されています。

Switch01(recovery-mode)>show stackwise-virtual dual-active-detection
In dual-active recovery mode: Yes
Recovery mode triggred by: fast-hello
Recovery Reload: Enabled

Dual-Active-Detection Configuration:
-------------------------------------
Switch  Dad port                        Status
------  ------------                    ---------
1       TenGigabitEthernet1/0/16        up
スタックの状態

デュアルアクティブ状態のため、1号機は「Active」となっています。

Switch01(recovery-mode)>show switch
Switch/Stack Mac Address : b0c5.3c7a.a800 - Local Mac Address
Mac persistency wait time: Indefinite
                                             H/W   Current
Switch#   Role    Mac Address     Priority Version  State
-------------------------------------------------------------------------------------
*1       Active   b0c5.3c7a.a800     10     V01     Ready
 2       Member   0000.0000.0000     0      V01     Removed
ポートの状態

SVL(Te1/0/14-1/0/15)、DAD(Te1/0/16)を除く全てのポートが「err-disabled」となっています。

Switch01(recovery-mode)>show int status

Port         Name               Status       Vlan       Duplex  Speed Type
Te1/0/1                         err-disabled 1            full    10G SFP-10GBase-SR
Te1/0/2                         err-disabled 1            full    10G SFP-10GBase-SR
Te1/0/3                         err-disabled 1            full    10G SFP-10GBase-SR
Te1/0/4                         err-disabled 1            full    10G SFP-10GBase-SR
Te1/0/5                         err-disabled 1            full    10G SFP-10GBase-SR
Te1/0/6                         err-disabled 1            full    10G SFP-10GBase-SR
Te1/0/7                         err-disabled 1            full    10G SFP-10GBase-SR
Te1/0/8                         err-disabled 1            full    10G SFP-10GBase-SR
Te1/0/9                         err-disabled 100          auto   auto 10/100/1000BaseTX SFP
Te1/0/10                        err-disabled 1            auto   auto unknown
Te1/0/11                        err-disabled 1            auto   auto unknown
Te1/0/12                        err-disabled 1            auto   auto unknown

Port         Name               Status       Vlan       Duplex  Speed Type
Te1/0/13                        err-disabled 1            full    10G SFP-10GBase-SR
Te1/0/14                        notconnect   4094         full    10G SFP-10GBase-SR
Te1/0/15                        notconnect   4094         full    10G SFP-10GBase-SR
Te1/0/16                        connected    4094         full    10G SFP-10GBase-SR
2号機の状態
SVLの状態
Switch01#show stackwise-virtual
Stackwise Virtual Configuration:
--------------------------------
Stackwise Virtual : Enabled
Domain Number : 100

Switch  Stackwise Virtual Link  Ports
------  ----------------------  ------
2       1                       TenGigabitEthernet2/0/14
                                TenGigabitEthernet2/0/15
DADの状態
Switch01#show stackwise-virtual dual-active-detection
In dual-active recovery mode: No
Recovery Reload: Enabled

Dual-Active-Detection Configuration:
-------------------------------------
Switch  Dad port                        Status
------  ------------                    ---------
2       TenGigabitEthernet2/0/16        up
スタックの状態

1号機がリカバリーモードに遷移したため、2号機がActive状態に遷移しています。

Switch01#show switch
Switch/Stack Mac Address : b0c5.3c7a.a800 - Foreign Mac Address
Mac persistency wait time: Indefinite
                                             H/W   Current
Switch#   Role    Mac Address     Priority Version  State
-------------------------------------------------------------------------------------
 1       Member   0000.0000.0000     0      V01     Removed
*2       Active   b0c5.3c7a.a980     5      V01     Ready

SVLを復旧させると、1号機が自動で再起動します。

再起動後、フェールバックは行われないためそのまま2号機がActiveとなります。

Switch01#show switch
Switch/Stack Mac Address : b0c5.3c7a.a800 - Local Mac Address
Mac persistency wait time: Indefinite
                                             H/W   Current
Switch#   Role    Mac Address     Priority Version  State
-------------------------------------------------------------------------------------
 1       Member   b0c5.3c7a.a800     10     V01     Ready
*2       Active   b0c5.3c7a.a980     5      V01     Ready

StackWiseで使用するVLANについて

show int status」を打った時にふと気になったのですが、SVLやDADを設定したポートにいつのまにかVLAN「4094」が割り当てられていました。

Switch01# show int status

Port         Name               Status       Vlan       Duplex  Speed Type
Te1/0/1                         notconnect   1            full    10G SFP-10GBase-SR
Te1/0/2                         notconnect   1            full    10G SFP-10GBase-SR
Te1/0/3                         notconnect   1            full    10G SFP-10GBase-SR
Te1/0/4                         notconnect   1            full    10G SFP-10GBase-SR
Te1/0/5                         notconnect   1            full    10G SFP-10GBase-SR
Te1/0/6                         notconnect   1            full    10G SFP-10GBase-SR
Te1/0/7                         notconnect   1            full    10G SFP-10GBase-SR
Te1/0/8                         notconnect   1            full    10G SFP-10GBase-SR
Te1/0/9                         connected    100        a-full a-1000 10/100/1000BaseTX SFP
Te1/0/10                        notconnect   1            auto   auto unknown
Te1/0/11                        notconnect   1            auto   auto unknown
Te1/0/12                        notconnect   1            auto   auto unknown

Port         Name               Status       Vlan       Duplex  Speed Type
Te1/0/13                        notconnect   1            full    10G SFP-10GBase-SR
Te1/0/14                        connected    4094         full    10G SFP-10GBase-SR
Te1/0/15                        connected    4094         full    10G SFP-10GBase-SR
Te1/0/16                        connected    4094         full    10G SFP-10GBase-SR

これについては、上記サイトに以下のような記述がありました。
意外と知られていないような気がするので、地味に注意点かなと思いました。

Cisco StackWise Virtual を展開する場合は、VLAN ID 4094 がネットワーク上のどこでも使用されていないことを確認してください。スタックメンバ間のすべてのシャーシ間システム制御通信は、グローバルな範囲から予約された VLAN ID 4094 で伝送されます。

Cisco IOS XE Amsterdam 17.3.x(Catalyst 9400 スイッチ)ハイ アベイラビリティ コンフィギュレーション ガイド – Cisco StackWise Virtual の設定 [Support] – Cisco

参考

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA