Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Catalyst 9800の初期セットアップからHA SSOの設定まで/From Initia...

Catalyst 9800の初期セットアップからHA SSOの設定まで/From Initial Setup to HA SSO Configuration for Catalyst 9800

MyHomeNWLab

January 19, 2025
Tweet

More Decks by MyHomeNWLab

Other Decks in Technology

Transcript

  1. 本資料の概要 • Catalyst 9800をキッティングするために必要な情報を整理しました。 • 初期セットアップからHA SSO (High Availability Stateful

    Switchover)の設定までを扱っています。 • HA SSOの条件を満たすための設定も扱っています。
  2. 検証時の情報 • 本資料は下記の環境で検証した情報をベースにしております。 • Model: Catalyst 9800-CL (vSphere版) • Version:

    v17.14.1 • ModelやVersionに依存する情報があれば、極力補足するようにしてお ります。
  3. 作業概要 (トピック) 1. 初期状態の確認と管理系の設定 2. ROMMONのアップグレード 3. IOS-XEのアップグレード 4. Installation

    modeの変換 a. Install modeへの変換 b. Bundle modeへの変換 5. (IOS-XEアップグレード作業後の)作業一時/不要ファイルの削除 6. 初期状態のコンフィグの取得 ← 本番導入Versionに揃えられた状態での情報取得 7. 管理系の再設定 ← 初期状態にしたので管理系を再設定します。 8. HA SSOの設定 9. DNAライセンスの明示的な設定 10.付録
  4. 複数機器への同時並行作業の留意事項 • 時短のために複数のC9800 (WLC)に対して「同時並行作業」したい場合、失敗も同時に 影響したり、アップグレード中の想定外の停電によって全台の復旧作業が発生する可能性が あります。 • そのため、本当に時短を優先して同時並行で作業するかのリスク判断をするようにしてください。 • 具体例としては、メインDCにHA

    SSOでWLC 2台、セカンダリーDCにメインDCに対する N+1で1台で、計 3台あると時短をしたくなる衝動に駆られるかもしれません。しかしながら、 検証環境のような本番環境より規則が緩い場所だと、タコ足配線にしている人が居てアップグ レード中にブレーカーが吹き飛ぶかもしれません。(筆者の経験談より。)
  5. 作業時の管理系への接続イメージ C9800 物理アプライアンス L3 Device 作業用端末 GigabitEthternet0 VRF: Mgmt-intf Gi0

    物理アプライアンスを想定しているため、 設定対象のInterfaceはGi0で VRFはMgmt-intfになります。 WLCのIPアドレス: #.#.#.# GatewayのIPアドレス: #.#.#.# IPアドレスの情報を事前に確認しておいてください。 管理系ネットワーク
  6. 管理系の接続設定 ※物理アプライアンス想定 show running-config interface GigabitEthernet0 configure terminal hostname wlc0X

    interface GigabitEthernet0 ip address #.#.#.# #.#.#.# no shutdown ip route vrf Mgmt-intf 0.0.0.0 0.0.0.0 #.#.#.# username admin privilege 15 secret 0 TODO_CHANGE_PASSWORD wireless country J4 end C9800-40などの物理アプライアンスはGi0が管理系です。 ・Country Codeに日本 (J4)を指定しています。 ・Day 0 Express Setup Wizardをスキップさせる意味合いもあります。 IPアドレスやDefault Gatewayを適切なものに置き換えてください。 資格情報を適切なものに置き換えてください。 号機を識別できるようにします。なお、HA SSOを組むと優先度が高い方のHostnameに同期されます。
  7. 補足: Day 0 Express Setupについて • 特に何も設定していない状態だと、Web UIに接続した際に「Day 0 Express

    Setup」の 簡易セットアップ ウィザードが表示されます。 • キッティングを効率化するため本手順ではスキップするようにしています。 「Configuration Setup Wizard」 = 「Day 0 Express Setup Wizard」
  8. 補足: Day 0 Express SetupのスキップのCLI設定 v17.3.1以上 v17.3.1以前 wireless country J4

    ap dot11 5ghz shutdown y ap dot11 24ghz shutdown y ap country J4 y no ap dot11 5ghz shutdown no ap dot11 24ghz shutdown Day 0 Express SetupをスキップのトリガーになるCLI設定はVersionによって異なります。 スキップのトリガー自体は「ap country」コマンドだけですが、 設定条件を満たすために”一時的”に他の設定を変更して、 それを元に戻す手順にしています。
  9. ROMMONファイルのダウンロード • 導入対象のModelのROMMONファイルをダウンロードします。 • Upgrading Field Programmable Hardware Devices for

    Cisco Catalyst 9800 Series Wireless Controllers - Cisco • https://www.cisco.com/c/en/us/td/docs/wireless/controller/98 00/config-guide/b_upgrade_fpga_c9800.html • 「ドキュメントに記載されているROMMONファイル」のリンク先はSoftware Downloadページになっています。 • ModelによってROMMONファイルが異なるので注意してください。
  10. ROMMONの推奨Version • ROMMONのVersionは(いずれのModelにしても)利用可能な最新のものが推奨 されています。 • Recommended Cisco IOS XE Releases

    for Catalyst 9800 Wireless LAN Controllers - Cisco • https://www.cisco.com/c/en/us/support/docs/wireless/catalyst -9800-series-wireless-controllers/214749-tac-recommended- ios-xe-builds-for-wirele.html#toc-hId-926002057 • > Cisco recommends upgrading to latest FPGA firmware available.
  11. ROMMONのアップグレード (1/2) • 事前にROMMONのVersionを確認します。 • メニュー「Administration > Management > File

    Manager」に移動して、 「bootflash:」直下に「ROMMONのファイル」をアップロードします。 show rom-monitor chassis active R0 File Managerはファイル単体で1GBまでアップロードが可能です。 ROMMONのファイルは容量が小さいため、その範囲内に収まる想定です。
  12. ROMMONのアップグレード (2/2) • アップロードされたROMMONのファイルを確認します。対象ファイルであっているかをよく確認し ます。特に、異なるModelのファイルを選択しないように注意してください。 • CLIから実際のアップグレードを実施します。再起動が必要です。 • 再起動後にROMMONのVersionがアップグレードされたかを確認します。 dir

    bootflash:C9800-##-rommon.####-##r.pkg show rom-monitor chassis active R0 upgrade rom-monitor filename bootflash:C9800-##-rommon.####-##r.pkg chassis active r0 reload ファイル名を適切なものに置き換えてください。 【参考情報】 筆者がC9800-40に「C9800-40-rommon.1712-1r.pkg」を適用した際は、ROMMONの更新処理からOSが起動するまでに12~13分程度の処理時間がかかりました。
  13. 補足: TFTPでのROMMONファイルの転送 • もしWeb UIでファイルのアップロードが出来ない場合は、CLIからファイルの転送を試みてくださ い。VRFの指定有無で2パターンあります。 • 共通手順 • VRF指定なし

    • VRF指定あり copy tftp://#.#.#.#/C9800-##-rommon.####-##r.pkg bootflash: copy tftp://#.#.#.#/C9800-##-rommon.####-##r.pkg bootflash: vrf Mgmt-intf configure terminal ip tftp blocksize 8192 end IPアドレスとファイル名は置き換えてください。 転送速度の向上のために、Block Sizeを最大値に変更します。デフォルトは 512 です。
  14. 不要になったROMMONファイルの削除 • 作業後のROMMONファイルは不要になるため、適宜削除します。 • 備考: 削除対象の誤りを避けるために、 • 事前 (Before)に削除対象のファイルを確認して、 •

    削除後 (After)にも実際にファイルが消えているかを確認する手順にしております。 dir bootflash:C9800-##-rommon.####-##r.pkg delete bootflash:C9800-##-rommon.####-##r.pkg dir bootflash:C9800-##-rommon.####-##r.pkg ファイル名を適切なものに置き換えてください。
  15. IOS-XEのアップグレード作業を行う前に • アップグレード パスが存在する可能性があるので、Release Noteを事 前に確認して必要なファイルをダウンロードしておきます。 • Cisco Catalyst 9800

    Series Wireless Controllers - Release Notes - Cisco • https://www.cisco.com/c/en/us/support/wireless/catalyst- 9800-series-wireless-controllers/products-release-notes- list.html • Release Noteは該当Versionの「Upgrade Path to Cisco IOS XE 17.14.x」(v17.14.xの例)のセクションを参照します。
  16. Release Notes for Cisco Catalyst 9800 Series Wireless Controller, Cisco

    IOS XE 17.14.x - Cisco https://www.cisco.com/c/en/us/td/docs/wireless/controller/9800/17-14/release-notes/rn-17-14-9800.html#Cisco_Concept.dita_59a2987f-2633-4630-8c7b-a8e8aecdeaf7 キッティングの段階だと Modelを問わずに無線APがWLCに所属していないはずなので、 基本的には“Without”の方が該当すると想定されます。
  17. 前提情報: Installation modeの指定 • Installation modeにはInstall modeとBundle modeの種別があり、HA SSOでは両号機 で一致させます。

    • Best Practicesではメンテナンス関連の機能面、起動の高速化、少ないMemory使用率の観 点で「Install modeが推奨」されています。 • 推奨情報はBest Practicesの「Install vs. bundle mode」を参照してください。 • Cisco Catalyst 9800 Series Configuration Best Practices - Cisco • https://www.cisco.com/c/en/us/td/docs/wireless/controller/9800/techni cal-reference/c9800-best-practices.html wlc01#show version | include Installation mode is Installation mode is INSTALL wlc01# 本例はInstall modeです。
  18. IOS-XEのアップグレード • メニュー「Administration > Software Management」の 「Software Upgrade」に移動します。 • 設定項目を下記の例のように指定して、画面の指示に従って進みます。

    設定項目 設定値 備考 Upgrade Mode INSTALL 本手順ではBest Practicesで推奨されてい るInstall modeを指定しています。 One-Shot Install Upgrade ✓ Check Install mode時に指定が可能です。Reboot やCommitの一連の処理を自動的に行います。 古めのVersionではメニューが存在しません。 Transport Type My Desktop Source File Path 対象Versionのファイルを選択
  19. アップグレード手順の参考例に関して • 本手順では「One-Shot Install Upgrade」の「あり・なし」の2パターンを紹介し ます。 a) Fromが古いVersionでOne-Shot Install Upgradeなし

    From v17.3.8a To v17.14.1 (Install Mode) b) Fromが新しいVersionでOne-Shot Install Upgradeあり From v17.12.4 To v17.14.1 (Install mode) • 既に該当Versionになっていて、Installation modeが異なる場合は、後述の変換 の手順を参照してください。 Versionの古い・新しいよりかは、One-Shot Install Upgradeの対応状況が主点です。
  20. CLIでCommit状況の確認 wlc01#show install summary [ Chassis 1/R0 ] Installed Package(s)

    Information: State (St): I - Inactive, U - Activated & Uncommitted, C - Activated & Committed, D - Deactivated & Uncommitted -------------------------------------------------------------------------------- Type St Filename/Version -------------------------------------------------------------------------------- IMG C 17.14.01.0.1391 -------------------------------------------------------------------------------- Auto abort timer: inactive -------------------------------------------------------------------------------- wlc01# 念のためCLIから「show install summary」を実行して、 「St」が「C」となりCommitが完了しているか確認するのが確実です。 もしUncommitted (St: U)の場合は「install commit」を実行します。
  21. CLIでCommit状況の確認 wlc01#show install summary [ Chassis 1/R0 ] Installed Package(s)

    Information: State (St): I - Inactive, U - Activated & Uncommitted, C - Activated & Committed, D - Deactivated & Uncommitted -------------------------------------------------------------------------------- Type St Filename/Version -------------------------------------------------------------------------------- IMG C 17.14.01.0.1391 -------------------------------------------------------------------------------- Auto abort timer: inactive -------------------------------------------------------------------------------- wlc01# 念のためCLIから「show install summary」を実行して、 「St」が「C」となりCommitが完了しているか確認するのが確実です。 もしUncommitted (St: U)の場合は「install commit」を実行します。
  22. Bundle modeからInstall modeへの変換 • すでに当該Versionになっているものの、Installation modeが異 なる状況も想定されます。 • Installation modeはBundle

    modeとInstall modeがあるため、相 互に変換する手順を掲載します。 • なお、手順が複雑だと感じる場合は、異なるVersionに一度変更した上 で、Installation modeを改めて指定して、対象のVersionに戻す方 法も検討してください。
  23. Install modeへの変換 • Install modeへの変換にあたりIOS-XEのファイル (.bin)が必要にな ります。 • 現状がBundle modeだと、既に

    .bin ファイルがあるため、そのファイルを 変換に利用します。(後述のBundle modeへの変換と異なり、事前の ファイル転送は不要になります。)
  24. 現状の「boot system」コマンドの確認 ※備考: 現状がBundle modeの想定 wlc01#show version | include Installation

    mode is Installation mode is BUNDLE wlc01# wlc01#show running-config | include boot system boot system bootflash:C9800-CL-universalk9.17.14.01.SPA.bin wlc01# wlc01# wlc01#show boot BOOT variable = bootflash:C9800-CL-universalk9.17.14.01.SPA.bin,12; <snip> wlc01# wlc01#show version | include .bin System image file is "bootflash:C9800-CL-universalk9.17.14.01.SPA.bin" wlc01# wlc01#dir bootflash: | include .bin 27 -rw- 1487565142 Oct 27 2024 14:18:35 +09:00 C9800-CL-universalk9.17.14.01.SPA.bin wlc01# Bundle modeの場合はファイル指定になっています。 対象の設定を「no」で削除するため、コマンドを控えてください。 明示的に設定されていない場合もあります。 「boot system」コマンドが設定されていない場合は、 「show boot」と「show version」でファイル名が出力されない場合があります。 「boot system」コマンドが明示的に指定されていない場合は、 bootflash: 内にあるIOS-XEファイルを確認しておきます。
  25. ファイル パス確認時の注意 wlc01#dir bootflash: | include .bin 27 -rw- 1487565142

    Oct 27 2024 14:18:35 +09:00 C9800-CL-universalk9.17.14.01.SPA.bin wlc01# wlc01#dir bootflash:C9800-CL-universalk9.17.14.01.SPA.bin Directory of bootflash:/C9800-CL-universalk9.17.14.01.SPA.bin 27 -rw- 1487565142 Oct 27 2024 14:18:35 +09:00 C9800-CL-universalk9.17.14.01.SPA.bin 28573978624 bytes total (22688976896 bytes free) wlc01# dir bootflash:C9800-CL-universalk9.17.14.01.SPA.bin ファイル名だけしか表示されません。 (ファイル パスがフル パスで表示されません。) フル パスに組み直して dir コマンドで確認しておくと確実です。
  26. 「boot system」コマンドの修正と BOOT変数への反映 wlc01# wlc01#configure terminal Enter configuration commands, one

    per line. End with CNTL/Z. wlc01(config)# wlc01(config)# wlc01(config)# wlc01(config)#no boot system bootflash:C9800-CL-universalk9.17.14.01.SPA.bin wlc01(config)# wlc01(config)# wlc01(config)#boot system bootflash:packages.conf wlc01(config)# wlc01(config)#end wlc01# wlc01#write memory Building configuration... [OK] wlc01# wlc01#show boot BOOT variable = bootflash:packages.conf,12; <snip> wlc01# 【Before】 wlc01#show running-config | include boot system boot system bootflash:C9800-CL-universalk9.17.14.01.SPA.bin wlc01# 【After】 wlc01#show running-config | include boot system boot system bootflash:packages.conf wlc01# Bundle modeから Install modeへの変更 【手順概要】 「show boot」のBOOT変数を更新するには 1. 「boot system」コマンドを修正して 2. 「write memory」による反映が必要です。 BOOT変数の反映には「write memory」が必要です。 Install modeの場合はBOOT変数が「bootflash:packages.conf」になっている必要があります。 Before: Bundle mode After: Install mode →
  27. Install modeへの変換処理 wlc01#install add file bootflash:C9800-CL-universalk9.17.14.01.SPA.bin activate commit prompt-level none

    install_add_activate_commit: START Sun Oct 27 00:02:31 JST 2024 install_add: START Sun Oct 27 00:02:31 JST 2024 install_add: Adding IMG --- Starting initial file syncing --- <snip> --- Starting Add --- <snip> --- Starting Activate --- <snip> --- Starting Commit --- <snip> SUCCESS: install_add_activate_commit Sun Oct 27 00:04:29 JST 2024 wlc01# <自動的な再起動に伴い、SSHの場合は通信が切断されます。> wlc01#show version | include Installation mode is Installation mode is INSTALL wlc01# wlc01#show boot BOOT variable = bootflash:packages.conf,12; <snip> wlc01# 「prompt-level none」を指定すると自動的に再起動が実行されます。 オプションがない場合は「再起動が伴う処理を進めるか?」を問われ、 気づかずに2分ほど放置するとTimeoutして処理が分岐してしまいます。 手順が分岐するのを避けるために、自動的に再起動するようにしています。 再起動後にInstall modeになっているか確認します。
  28. 補足: 「prompt-level none」が未指定の場合 wlc01#install add file bootflash:C9800-CL-universalk9.17.14.01.SPA.bin activate commit install_add_activate_commit:

    START Mon Oct 28 08:04:40 JST 2024 install_add: START Mon Oct 28 08:04:40 JST 2024 install_add: Adding IMG --- Starting initial file syncing --- <snip> --- Starting Add --- <snip> install_activate: START Mon Oct 28 08:06:34 JST 2024 install_activate: Activating IMG Following packages shall be activated: /bootflash/C9800-CL-rpboot.17.14.01.SPA.pkg /bootflash/C9800-CL-mono-universalk9.17.14.01.SPA.pkg This operation may require a reload of the system. Do you want to proceed? [y/n]y --- Starting Activate --- <snip> --- Starting Commit --- <snip> SUCCESS: install_add_activate_commit Mon Oct 28 08:07:55 JST 2024 wlc01# <y を入力すると自動的に再起動が実行され、SSHの場合は通信が切断されます。> この付近の処理で若干の時間がかかりますが、目を離していると 次の対話プロンプトがTimeoutする可能性があります。 This operation may require a reload of the system. Do you want to proceed? [y/n] No User Response, Request Timeout wlc01# wlc01#reload 未回答だと2分でTimeoutします。 Timeoutした場合は手動で再起動を実施します。
  29. Bundle modeへの変換 • Bundle modeへ変換するには、IOS-XEのファイル (.bin)が必要です。 • 備考: 現状がInstall modeだと

    .bin ではなく .pkg 等として bootflash: に格納されています。 • Web UIのFile Managerは1GBのファイルまでしかアップロードできない 制限があるため、本手順ではTFTPで転送する手順にしています。
  30. Installation modeによる表示の違い Bundle modeの表示例 Install modeの表示例 wlc01#show version | include

    Installation mode is Installation mode is INSTALL wlc01# wlc01# wlc01#show boot BOOT variable = bootflash:packages.conf,12; CONFIG_FILE variable does not exist BOOTLDR variable does not exist Configuration register is 0x2102 Standby not ready to show bootvar wlc01# wlc01# wlc01#show running-config | include boot system boot system bootflash:packages.conf wlc01# wlc01#show version | include Installation mode is Installation mode is BUNDLE wlc01# wlc01# wlc01#show boot BOOT variable = bootflash:C9800-CL-universalk9.17.14.01.SPA.bin,12; CONFIG_FILE variable does not exist BOOTLDR variable does not exist Configuration register is 0x2102 Standby not ready to show bootvar wlc01# wlc01# wlc01#show running-config | include boot system boot system bootflash:C9800-CL-universalk9.17.14.01.SPA.bin wlc01# 現状がどのModeになっていて、どのModeがあるべき設計なのかを確認してください。 備考: Best Practicesではパフォーマンスなどで優位性があるInstall modeが推奨されています。
  31. Software Download - Cisco Systems https://software.cisco.com/download/home Software DownloadよりIOS-XEのファイル (.bin)を予めダウンロードしておきます。 ここから辿って該当Model

    & Versionの IOS-XEファイル (.bin)をダウンロードしておきます。 「Browse all」を押下すると、ジャンル別で辿れます。
  32. Catalyst 9800におけるTFTPでのIOS-XEファイル (.bin)の転送 • TFTPでの「転送速度を向上のための設定」と「実際のファイル転送の手順 (VRF指定なし・あり)」 があります。 • 1) 共通手順

    (任意) • 2) IOS-XEファイル (.bin)をCatalyst 9800にダウンロードします。VRFの有無で2パターンあります。 • 2-a) ファイル転送: VRF指定なし • 2-b) ファイル転送: VRF指定あり (VRF: Mgmt-intf) copy tftp://#.#.#.#/C9800-##-universalk9.##.##.##.SPA.bin bootflash: copy tftp://#.#.#.#/C9800-##-universalk9.##.##.##.SPA.bin bootflash: vrf Mgmt-intf configure terminal ip tftp blocksize 8192 end IPアドレスとファイル名は置き換えてください。 転送速度の向上のために、Block Sizeを最大値に変更します。デフォルトは 512 です。
  33. wlc01#dir bootflash:C9800-CL-universalk9.17.14.01.SPA.bin Directory of bootflash:/C9800-CL-universalk9.17.14.01.SPA.bin 27 -rw- 1487565142 Oct 24

    2024 16:40:47 +09:00 C9800-CL-universalk9.17.14.01.SPA.bin 28573978624 bytes total (24117100544 bytes free) wlc01# wlc01#configure terminal Enter configuration commands, one per line. End with CNTL/Z. wlc01(config)# wlc01(config)#no boot system bootflash:packages.conf wlc01(config)# wlc01(config)# wlc01(config)# wlc01(config)#boot system bootflash:C9800-CL-universalk9.17.14.01.SPA.bin wlc01(config)# wlc01(config)#end wlc01# wlc01#write memory Building configuration... [OK] wlc01# 【Before】 wlc01#show running-config | include boot system boot system bootflash:packages.conf wlc01# 【After】 wlc01#show running-config | include boot system boot system bootflash:C9800-CL-universalk9.17.14.01.SPA.bin wlc01# BOOT変数の反映には「write memory」が必要です。 「bootflash:packages.conf」の状態がInstall modeです。 Install modeから Bundle modeへの変更 事前に該当ファイルの存在を確認します。 「boot system」コマンドの修正と BOOT変数への反映 【手順概要】 「show boot」のBOOT変数を更新するには 1. 「boot system」コマンドを修正して 2. 「write memory」による反映が必要です。 Before: Install mode After: Bundle mode →
  34. BOOT変数の反映には「write memory」が必要 wlc01#show boot BOOT variable = bootflash:packages.conf,12; <snip> wlc01#

    wlc01#show running-config | include boot system boot system bootflash:packages.conf wlc01# wlc01#configure terminal Enter configuration commands, one per line. End with CNTL/Z. wlc01(config)# wlc01(config)#no boot system bootflash:packages.conf wlc01(config)# wlc01(config)#boot system bootflash:C9800-CL-universalk9.17.14.01.SPA.bin wlc01(config)# wlc01(config)#end wlc01# wlc01#show running-config | include boot system boot system bootflash:C9800-CL-universalk9.17.14.01.SPA.bin wlc01# wlc01#show boot BOOT variable = bootflash:packages.conf,12; <snip> wlc01# 「write memory」を実行していないため、「boot system」の修正が反映されていません。
  35. 「再起動による反映」と「再起動前後の状態確認」 wlc01#show boot BOOT variable = bootflash:C9800-CL-universalk9.17.14.01.SPA.bin,12; CONFIG_FILE variable does

    not exist BOOTLDR variable does not exist Configuration register is 0x2102 Standby not ready to show bootvar wlc01# wlc01# wlc01#show version | include Installation mode is Installation mode is INSTALL wlc01# wlc01# wlc01#reload Reload command is being issued on Active unit, this will reload the whole stack Proceed with reload? [confirm] <再起動に伴い、SSHの場合は通信が切断されます。> wlc01#show version | include Installation mode is Installation mode is BUNDLE wlc01# BOOT変数が「ファイル名指定」になっているかを確認します。 再起動”前”のため、まだ「INSTALL」と表示されています。 再起動によって設定が反映されてBundle modeになりました。
  36. 作業一時/不要ファイルの削除 • 「古いVersionの関連ファイル」を削除します。 • CLIの場合 • 対話形式で削除確認が行われるため、実行時のログは次のスライドで例示します。 • Web UIの場合

    • メニュー「Administration > Software Management > Software Upgrade」に移動し、「Remove Inactive Files」から削除可能です。Web UIの場合は対象ファイルの事前確認はありません。 • どちらの場合でも、削除対象は「.bin, .pkg, .conf」の不要ファイルになります。 install remove inactive
  37. wlc01#install remove inactive install_remove: START Thu Oct 17 07:21:09 UTC

    2024 install_remove: Removing IMG Cleaning up unnecessary package files No path specified, will use booted path /bootflash/packages.conf Cleaning /bootflash Scanning boot directory for packages ... done. Preparing packages list to delete ... [R0]: /bootflash/C9800-CL-universalk9.17.14.01.SPA.conf File is in use, will not delete. [R0]: /bootflash/C9800-CL-rpboot.17.14.01.SPA.pkg File is in use, will not delete. [R0]: /bootflash/C9800-CL-mono-universalk9.17.14.01.SPA.pkg File is in use, will not delete. [R0]: /bootflash/packages.conf File is in use, will not delete. The following files will be deleted: [R0]: /bootflash/C9800-CL-universalk9.17.14.01.SPA.bin [R0]: /bootflash/C9800-CL-rpboot.17.03.08a.SPA.pkg [R0]: /bootflash/C9800-CL-mono-universalk9.17.03.08a.SPA.pkg Do you want to remove the above files? [y/n]y Deleting file /bootflash/C9800-CL-universalk9.17.14.01.SPA.bin ... done. Deleting file /bootflash/C9800-CL-rpboot.17.03.08a.SPA.pkg ... done. Deleting file /bootflash/C9800-CL-mono-universalk9.17.03.08a.SPA.pkg ... done. SUCCESS: Files deleted. --- Starting Post_Remove_Cleanup --- Performing REMOVE_POSTCHECK on all members Finished Post_Remove_Cleanup SUCCESS: install_remove Thu Oct 17 07:21:18 UTC 2024 wlc01# CLIで作業一時/不要ファイルの削除 削除対象を確認します。 対象ファイルが想定通りであれば「y」で回答します。
  38. Initiating install_remove_inactive to remove inactive files install_remove: START Thu Oct

    17 05:34:16 UTC 2024 Cleaning up unnecessary package files No path specified, will use booted path bootflash:packages.conf Cleaning bootflash: Scanning boot directory for packages ... done. Preparing packages list to delete ... C9800-CL-mono-universalk9.17.14.01.SPA.pkg File is in use, will not delete. C9800-CL-rpboot.17.14.01.SPA.pkg File is in use, will not delete. packages.conf File is in use, will not delete. done. The following files will be deleted: [chassis 1/R0]: /bootflash/C9800-CL-mono-universalk9.17.03.08a.SPA.pkg /bootflash/C9800-CL-rpboot.17.03.08a.SPA.pkg /bootflash/C9800-CL-universalk9.17.14.01.SPA.bin /bootflash/C9800-CL-universalk9.17.14.01.SPA.conf [chassis 1/R0]: Deleting file bootflash:C9800-CL-mono-universalk9.17.03.08a.SPA.pkg ... done. Deleting file bootflash:C9800-CL-rpboot.17.03.08a.SPA.pkg ... done. Deleting file bootflash:C9800-CL-universalk9.17.14.01.SPA.bin ... done. Deleting file bootflash:C9800-CL-universalk9.17.14.01.SPA.conf ... done. SUCCESS: Files deleted. --- Starting Post_Remove_Cleanup --- Performing Post_Remove_Cleanup on all members [1] Post_Remove_Cleanup package(s) on chassis 1/R0 [1] Finished Post_Remove_Cleanup on chassis 1/R0 Checking status of Post_Remove_Cleanup on [1/R0] Post_Remove_Cleanup: Passed on [1/R0] Finished Post_Remove_Cleanup SUCCESS: install_remove Thu Oct 17 05:36:13 UTC 2024 Web UIで作業一時/不要ファイルの削除 - Show logsの参考例
  39. 管理系の再設定 ※物理アプライアンス想定 show running-config interface GigabitEthernet0 configure terminal hostname wlc0X

    interface GigabitEthernet0 ip address #.#.#.# #.#.#.# no shutdown ip route vrf Mgmt-intf 0.0.0.0 0.0.0.0 #.#.#.# username admin privilege 15 secret 0 TODO_CHANGE_PASSWORD wireless country J4 end C9800-40などの物理アプライアンスはGi0が管理系です。 ・Country Codeに日本 (J4)を指定しています。 ・Day 0 Express Setup Wizardをスキップさせる意味合いもあります。 IPアドレスやDefault Gatewayを適切なものに置き換えてください。 資格情報を適切なものに置き換えてください。 号機を識別できるようにします。なお、HA SSOを組むと優先度が高い方の設定に「Hostnameは同期」されます。 アップグレードの作業後に一度コンフィグを初期化したため、管理系の接続設定を改め て行います。
  40. HA SSOのサポート状況 • 仮想アプライアンスのC9800-CLはHA SSOのサポート可否が展開先によって異なります。 例えば、vSphere版はHA SSOに対応しています。しかし、AWSやAzureは2025年01月 時点で対応していません。 • C9800-CLの最新のHAサポート状況はData

    Sheetの「High availability」の項目を参 照してください。 • Cisco Catalyst 9800-CL Wireless Controller for Cloud Data Sheet - Cisco • https://www.cisco.com/c/en/us/products/collateral/wireless/catalyst -9800-cl-wireless-controller-cloud/nb-06-cat9800-cl-cloud-wirel-data- sheet-ctp-en.html
  41. HA SSOの方式 • HA SSOには「RMI+RP」と「RP」の2つの方式があります。 • 「High Availability SSO Deployment

    Guide」によると、v17.1よりRMIの使用が推 奨されています。RMIはSplit Brain対策の側面もあるため、本手順では「RMI+RP」の 方式を採用しています。 • 備考: RMIはv17.1.xから導入されています。 【略語】 RMI: Redundancy Management Interface RP: Redundancy Port
  42. 【製品の写真に関して】 ・Courtesy of Cisco Systems, Inc. Unauthorized use not permitted.​

    (Cisco Systems, Inc.の提供であり、無断使用を禁じます。)​ ・BX Public Collectionの写真を利用しています。 一例: C9800-40のRPやSP 拡大 ラベル上: SP (Service Port) OS上: GigabitEthernet0 ※VRF: Mgmt-intf RP (Redundancy Port)はHA SSOで冗長化する際に、 C9800同士を接続する役割があります。 RPを光ファイバーで接続したい際は、 SFPの用意を忘れないように注意してください。
  43. WMIのBest Practice • 物理版のWMIはPort-Channelを組んだ上でSVIを指定するのがBest Practiceです。 • なお、HA SSOを組むとWMIのIPアドレスは両号機で共通化されます。 C9800-40 Vlan102

    ※SVI TenGig0/0/0 TenGig0/0/1 Port-Channel1 (TenGig0/0/0, TenGig0/0/1) Allowed VLAN: ###, 102, ### Gi0 VRF: Mgmt-intf 物理版ではSVIをWMIに指定するのが推奨です。
  44. RMIのIPアドレス • HA SSOでRMIに割り当てるIPアドレスは、WMIと同じサブネットに所属します。 • HA SSOを組むとWMIのIPアドレスは正系と副系で共通化します。キッティング時 はセットアップに必要になるので、副系 (#2号機)にもIPアドレスを仮割り当てします。 C9800-40#1

    Vlan102 ※SVI C9800-40#2 Vlan102 ※SVI サービス系Switch WMIのVlan102: 198.51.100.241/24 〃 #2の仮割り当て: 198.51.100.242/24 ※HA SSO構成後は共通化 RMI IP#1: 198.51.100.231 RMI IP#2: 198.51.100.232 同じサブネット RP 【略語】 RMI: Redundancy Management Interface RP: Redundancy Port
  45. RPのIPアドレス • RPのIPアドレス (Local IP & Remote IP)は、RMIの第3~4オクテットから自動生 成されます。 IPアドレスの種別

    #1号機 #2号機 RMI IP A.B.C.D W.X.Y.Z ↓ 自動生成 ↓ 自動生成 RPのIPアドレス 169.254.C.D 169.254.Y.Z C9800-40#1 Vlan102 ※SVI サービス系Switch RP RP C9800-40#1 Vlan102 ※SVI 169.254.100.231 169.254.100.232 RMI IP#1: 198.51.100.231 RMI IP#2: 198.51.100.232 【略語】 RP: Redundancy Port RMI: Redundancy Management Interface
  46. RMIP IPのCLIでの確認 • RMI IPはCLIだと「show chassis rmi」で確認できます。 wlc01#show chassis rmi

    Chassis/Stack Mac Address : ****.****.**** - Local Mac Address Mac persistency wait time: Indefinite H/W Current Chassis# Role Mac Address Priority Version State IP RMI-IP -------------------------------------------------------------------------------------------------------- *1 Active ****.****.**** 1 V02 Ready 169.254.100.231 198.51.100.231 2 Standby ****.****.**** 1 V02 Ready 169.254.100.232 198.51.100.232 wlc01#
  47. C9800のIPアドレス設計の一例 IPアドレス 割当先や用途 備考 192.0.2.241 C9800#1 Gi0 管理系 HA SSO構成後は#1と#2の両号機で共用します。

    192.0.2.242 C9800#2 Gi0 管理系 (仮割り当て用) HA SSO構成後は設定が#1号機と同期されるため、仮割り当て用です。 …… …… 192.0.2.254 管理系Gateway C9800のルーティング設定に関連します。 IPアドレス 割当先や用途 備考 198.51.100.231 C9800#1 RMI HA SSO構成時に必要なIPアドレスです。 198.51.100.232 C9800#2 RMI 同上 …… …… 198.51.100.241 C9800#1 WMI HA SSO構成後は#1と#2の両号機で共用します。 198.51.100.242 C9800#2 WMI (仮割り当て用) HA SSO構成後は設定が#1号機と同期されるため、仮割り当て用です。 …… …… 198.51.100.254 サービス系Gateway C9800のルーティング設定に関連します。 管理系 ※TEST-NET-1の範囲で例示 サービス系 ※TEST-NET-2の範囲で例示 下記の例のようにC9800に関連するIPアドレスを整理しておくと、設定時の参考になりやすいです。
  48. Stack構成 HA SSOのInterfaceとIPアドレス視点の構成例 C9800-40#1 C9800-40#2 RP RP サービス系Switch#1 サービス系Switch#2 管理系Switch#1

    管理系Switch#2 GigabitEthernet0 VRF: Mgmt-intf (ラベル上はService Port) Gi0 IP: 192.0.2.241/24 〃 #2号機の仮割り当て: 192.0.2.242/24 ※HA SSO構成後は共通化 Gi0 【C9800-40想定】 Port-Channel1 - TenGigabitEthernet0/0/0 - TenGigabitEthernet0/0/1 【C9800-40想定】 Po1 - TenGig0/0/0 - TenGig0/0/1 WMIのVlan102: 198.51.100.241/24 〃 #2の仮割り当て: 198.51.100.242/24 ※HA SSO構成後は共通化 RMI IP#1: 198.51.100.231 RMI IP#2: 198.51.100.232 物理版ではPort-Channelを組んで WMIにSVIを割り当てるのがBest Practiceです。 WMIとRMIは同じサブネットに所属します。 Vlan102 Vlan102
  49. C9800-40におけるWMI側の設定例 configure terminal interface TenGigabitEthernet0/0/0 channel-group 1 mode active switchport

    mode trunk switchport trunk native vlan 1 switchport trunk allowed vlan #### no shutdown ! interface TenGigabitEthernet0/0/1 channel-group 1 mode active switchport mode trunk switchport trunk native vlan 1 switchport trunk allowed vlan #### no shutdown ! interface Port-channel1 switchport mode trunk switchport trunk native vlan 1 switchport trunk allowed vlan #### no shutdown ! end show etherchannel summary configure terminal interface Vlan#### ip address #.#.#.# #.#.#.# no shutdown ! end 【修正箇所】 主な修正箇所を列挙します。 • Interface名をModelや物理設計に合わせて修正します。 • LAGのModeを修正します。 • Native VLANを修正します。 • Allowed VLANを修正します。 • SVIのVLANやIPアドレスを修正します。 ↑ Port-Channelが組めてるか確認してください。
  50. ROMMONの確認 • 必須条件にはなっていませんが、物理アプライアンスの場合はROMMONのVersionも一致さ せます。またROMMON自体が最新化されているかも確認してください。 • 仮想アプライアンスのC9800-CLでは下記のように情報が表示されません。 • 見逃しやすい観点のため、ROMMONが意図的なものかを必ず確認してください。 wlc01#show rom-monitor

    chassis active R0 ========================================================== wlc01# wlc01#show rom-monitor chassis active r0 ========================================================== System Bootstrap, Version 17.12(1r), RELEASE SOFTWARE Copyright (c) 1994-2023 by cisco Systems, Inc. wlc01# C9800-40の表示例です。
  51. 設計要素: Chassis Number • C9800でHA SSOを組む際に、#1号機と#2号機のChassis NumberとPriorityは意 図した値に設定します。Chassis Numberは一意 (Unique)に設定します。

    • 一般的には、Chassis Numberは号機番号に合わせて、#1号機の優先度を高くするのが 想定されます。下記は設計の一例です。 wlc01#show chassis Chassis/Stack Mac Address : 0001.0202.aabb - Local Mac Address Mac persistency wait time: Indefinite H/W Current Chassis# Role Mac Address Priority Version State IP ------------------------------------------------------------------------------------- *1 Active 0001.0202.aabb 1 V02 Ready 0.0.0.0 対象のC9800 Chassis Number Priority #1号機 1 2 ※優先度: 高 #2号機 2 1 ※優先度: 低 【補足】 Priorityが同じ場合は、 最も小さいMACアドレスが優先されます。 本例は冗長化を組む前のため、1台分しか表示されていません。
  52. 設定個所: メニュー「Administration > Device > Redundancy」 設定項目 #1号機 #2号機 Redundancy

    Configuration ENABLED Redundancy Pairing Type RMI+RP RMI IP for Chassis 1 #1号機のRMI IPアドレス 例: 198.51.100.231 RMI IP for Chassis 2 #2号機のRMI IPアドレス 例: 198.51.100.232 HA Interface ※C9800-CLの場合 例: GigabitEthernet3 ※C9800-CLの場合はHA SSO専用にするInterfaceを指定 Wireless Management Interface WMIを自動選択 Chassis Renumber 1 2 Active Chassis Priority 2 (優先度: 高) 1 (優先度: 低) その他の設定項目は適宜チューニングしてください。 Chassis RenumberとActive Chassis Priorityの明示的な指定を忘れないように!!
  53. 仮想アプライアンスであるC9800-CLにはRPがないため、 「HA Interface」の設定項目が表示されます。 vSphere上 C9800-CL上 Network Adapter 1 GigabitEthernet1 Network

    Adapter 2 GigabitEthernet2 Network Adapter 3 GigabitEthernet3 vSphere上ではNetwork Adapter扱いになっており、 その中から1つをHA Interface専用 (RP相当)にします。 本サンプル画面は仮想アプライアンスのC9800-CLです。
  54. HA SSO設定直後の差分の一例 #1号機 HA SSO設定後且つ同期前 #2号機 HA SSO設定後且つ同期前 interface Vlan102

    ip address 198.51.100.231 255.255.255.0 secondary ip address 198.51.100.241 255.255.255.0 no ip proxy-arp ! redun-management interface Vlan102 chassis 1 address 198.51.100.231 chassis 2 address 198.51.100.232 interface Vlan102 ip address 198.51.100.231 255.255.255.0 secondary ip address 198.51.100.242 255.255.255.0 no ip proxy-arp ! redun-management interface Vlan102 chassis 1 address 198.51.100.231 chassis 2 address 198.51.100.232 「redun-management」を設定したタイミングでSecondaryアドレスが自動的に生成されます。 そして、そのSecondary Addressが重複するため、HA SSOが組み終わるまでIPアドレスの重複メッセージが出る可能性があります。 C9800-CLの場合は、再起動後にHA Interfaceに指定したものが消えます。 例えば、HA InterfaceがGi3であれば、HA SSOの構成後にshow running-configを見るとGi3が非表示になります。 折り返し 1行で 入力
  55. HA SSOの設定 - #2号機機 (Standby機) 設定項目 #1号機 #2号機 Chassis Renumber

    1 2 Active Chassis Priority 2 1 #1号機と#2号機で同じ順序で指定します。 #1号機と#2号機で設定が異なります。
  56. HA SSOの設定 - Apply時のメッセージの違い #1号機 (Active機) #2号機 (Standby機) 設定項目 #1号機

    #2号機 Chassis Renumber 1 2 Active Chassis Priority 2 1 #2号機はChassis Renumberをデフォルトの1から変更しているため、 メッセージが異なります。この後の大きな手順の違い自体は無いです。 Apply時のメッセージが異なります。 この後の手順は共通 設定後の反映を忘れないでください。
  57. HA SSOの同期状態の確認 wlc01#show chassis Chassis/Stack Mac Address : ****.****.***1 -

    Local Mac Address Mac persistency wait time: Indefinite H/W Current Chassis# Role Mac Address Priority Version State IP ------------------------------------------------------------------------------------- *1 Active ****.****.***1 2 V02 Ready 169.254.100.231 2 Standby ****.****.***2 1 V02 HA sync in progress 169.254.100.232 wlc01# Chassis# Role Mac Address Priority Version State IP ------------------------------------------------------------------------------------- *1 Active ****.****.***1 2 V02 Ready 169.254.100.231 2 Standby ****.****.***1 1 V02 Ready 169.254.100.232 同期中の状態です。 同期が完了すると両号機ともReadyになります。
  58. HA SSO構成後のSSHやWeb UIへの接続 • HA SSOを構成すると、Priorityが高い方の設定で同期されます。そのた めWeb UIやSSHの接続は、#1号機のIPアドレスを指定します。 設定項目 #1号機

    Priority: 2 (高) #2号機 Priority: 1 (低) Gi0のIPアドレス 192.0.2.241 192.0.2.242 WMIのIPアドレス 198.51.100.241 198.51.100.242 RP C9800#1 Priority: 2 (高) Gi0 VRF: Mgmt-intf C9800#2 Priority: 1 (低) Gi0 VRF: Mgmt-intf RP 端末からGi0側へのアクセスは「192.0.2.241」を指定 無線APにはWMI側の「198.51.100.241」を指定 Active機
  59. DNAライセンスの明示的な設定 • ライセンス違反にならないように、DNAライセンスの Levelを明示的に指 定します。 • 補足ですが、Cisco Network Subscription (サブスクリプション)の導

    入に伴って、v17.15.2からは下記のLevel指定も追加されています。 • Cisco Wireless Essentials (LIC-CW-E) • Cisco Wireless Advantage (LIC-CW-A)
  60. HA SSO同期前後のshow redundancy states wlc01#show redundancy states my state =

    13 -ACTIVE peer state = 1 -DISABLED Mode = Simplex Unit = Primary Unit ID = 1 Redundancy Mode (Operational) = Non-redundant Redundancy Mode (Configured) = sso Redundancy State = Non Redundant Maintenance Mode = Disabled Manual Swact = disabled (system is simplex (no peer unit)) Communications = Down Reason: Simplex mode client count = 128 client_notification_TMR = 30000 milliseconds RF debug mask = 0x0 Gateway Monitoring = Enabled Gateway monitoring interval = 8 secs wlc01# wlc01#show redundancy states my state = 13 -ACTIVE peer state = 8 -STANDBY HOT Mode = Duplex Unit = Primary Unit ID = 1 Redundancy Mode (Operational) = sso Redundancy Mode (Configured) = sso Redundancy State = sso Maintenance Mode = Disabled Manual Swact = enabled Communications = Up client count = 128 client_notification_TMR = 30000 milliseconds RF debug mask = 0x0 Gateway Monitoring = Enabled Gateway monitoring interval = 8 secs wlc01# 設定前 (Before) 設定後 & 同期後 (After)
  61. 冗長化の関連ドキュメント • 冗長化関連のドキュメントはTechnical Referencesのページにまとまっ ています。 • Cisco Catalyst 9800 Series

    Wireless Controllers - Technical References - Cisco • https://www.cisco.com/c/en/us/support/wireless/catalyst- 9800-series-wireless-controllers/products-technical-reference- list.html • 筆者の確認時点 (2025年01月時点)で、全てのVersion分が用意されている わけではないので、最も近しいものを参照するのが良いと思われます。
  62. 障害時のステータス • 障害時に取りうるステータスは下記に整理されています。 • Cisco Catalyst 9800 Series Wireless Controller

    Software Configuration Guide, Cisco IOS XE 17.14.x - High Availability [Cisco Catalyst 9800 Series Wireless Controllers] - Cisco • https://www.cisco.com/c/en/us/td/docs/wireless/controller/9800/17 -14/config- guide/b_wl_17_14_cg/m_vewlc_high_availability.html#system-netw- fault-handle • > Table 2. System and Network Fault Handling