はじめに
Nexus 9000 Seriesで使用されるOSであるNX-OSのバージョンアップ方法について事前の計画段階から実際のバージョンアップ方法について、わかりやすく解説しました。
こちらを一通り目を通して理解していただければ、難解なCisco公式ドキュメントも読みやすくなることでしょう。
(本当はCisco社が網羅的に整理した資料を提供してくれれば良いのですが…)
バージョンアップ前に行うこと(机上)
ライフサイクルポリシーの確認
まずはNX-OSのバージョンの命名規則やライフサイクルポリシーについて理解しましょう。
利用しているOSバージョンのEOLの確認
ライフサイクルポリシーについて理解したら、次はOSバージョンのEOLを確認しましょう。
EOLを過ぎるとサポートが効かなくなるので、EOLの少なくとも3か月前にはバージョンアップを完了することが出来るように計画を立てましょう。
推奨リリースバージョンの確認
次のドキュメントにCisco社が推奨するNX-OSのバージョンが掲載されています。2025/1/16現在の推奨バージョンは10.3(6)となります。
ISSUについて
NX-OSではISSU(In-Service Software Upgrade)と呼ばれる機能で無停止アップグレードを行うことが可能です。どういった機能か理解しておきます。
ターゲットOSのバージョン選定とリリースノートの確認・整理・評価
推奨バージョンやライフサイクルを踏まえた上で、どのOSバージョンをターゲットにするのか決定します。また、該当OSバージョンのリリースノートを確認して、新機能の確認、新規不具合、既知の不具合、互換性などを確認・整理・評価します。この作業が一番時間を要します。
アップグレードパスの確認
ターゲットOSバージョンが決まったら、現在のOSバージョンからのアップグレードパスを確認します。中間アップグレードを挟む場合もあります。
インストールとアップグレードガイドの確認
次にインストール方法やアップグレード方法について確認します。
ターゲットバージョンのEPLDの確認
OSのバージョンによってはEPLD( Electronic Programmable Logic Device)が提供されています。ハードウェア機能の強化や既知の問題の解決をするためにも、バージョンアップすることをお勧めします。ただし、機器の再起動を必ず伴うため、サービス影響について考慮した上で、実施可否を決めます。
バージョンアップ前に行うこと(実機)
机上の評価が完了したところで、続いては実機で確認を行います。
以下のリソースについて準備しておきます。
- ターゲットOSのbinファイル
- ターゲットOSのハッシュ値
- EPLDのimgファイル
現在のOSのバージョンの確認
現在のOSのバージョンを確認します。
show version
現在のEPLDのバージョンの確認
現在のEPLDのバージョンを確認します。
show version module 1 epld
OS・EPLDのアップロード
事前に取得したOSやEPLDをNexusにアップロードします。
TFTPサーバを立てるよりは、feature sftp-serverコマンドでSFTPサーバ機能をNexusで有効化して、WINSCPなどのSFTPクライアントでSFTPによる転送を行うことをお勧めします。TCPを使用することからパケット損失によるファイルの欠損が発生しないためです。また、通信が暗号化されるためセキュアです。
ハッシュ値の確認
次のコマンドでアップロードしたファイルのハッシュ値を確認します。
show file bootflash:///nxos64-cs.10.x.x.M.bin sha512sum
show file bootflash:///nxos64-cs.10.x.x.M.img sha512sum
互換性チェック及びISSU対応可否の確認
次のコマンドでアップロードしたOSを引数に指定して、無停止アップグレード(ISSU)に対応しているか確認してください。
impact列にnon-disruptiveと表示されれば、ISSUに対応しています。disruptiveの場合はOSのアップグレードに伴い、機器の再起動が発生します。
show install all impact nxos bootflash:///nxos64-cs.10.x.x.M.bin non-disruptive
設定変更途中の有無の確認
設定変更が現在されていないことを確認します。
show configuration session summary
OnePKの無効化確認
OnePK が有効である場合、ISSU はサポートされません。そのため次のコマンドで無効化されていることを確認します。disabledと表示されていれば、ISSUを利用可能です。
show feature | include onep
boot poapの無効化確認
boot poapが無効化されていないとISSUを利用できません。boot poap enable ではないことを確認します。
show boot
boot modeの一致を確認
標準ISSUもしくは拡張ISSU(lxc)のどちらかで動作していることを確認します。
vPCを利用して冗長構成を組んでいる場合は必ず確認してください。
show boot mode
ISSU利用可否の確認(STP)
アップグレードガイドに記載されておりますが、Spanning-treeトポロジの中でISSUを利用できるかどうかを事前に確認します。
show spanning-tree issu-impact
※以下は原文
For non-disruptive ISSU in spanning tree topology, before running the show spanning-tree issu-impact command, verify the following criteria:
・No Topology change must be active in any STP instance
・Bridge assurance(BA) should not be active on any port (except MCT and vPC peer link)
・There should not be any Non-Edge Designated Forwarding port (except MCT and vPC peer link)
・ISSU criteria must be met on the vPC peer switch
running-configの保存
念のため、running-configをstartup-configに保存します。
copy running-config startup-config
アップグレード
ここまで確認して問題が無ければ、次のコマンドでOSのアップグレードを行います。
ISSUを利用可能な場合は無停止でOSのアップグレードが可能です。ただし、1分程度はmgmtインタフェースへのSSH接続ができません。
install all nxos bootflash:///nxos64-cs.10.x.x.M.bin non-disruptive
EPLDのバージョンアップは必ず再起動を伴います。ただし、一般的には冗長化構成で運用しているため1秒未満の通信断で済みます。検証可能であれば事前に確認してください。
install all epld bootflash:///n9000-epld.10.x.x.M.img nxos bootflash:///nxos64-cs.10.x.x.M.bin
ダウングレード
OSはダウングレードを行うことが可能です。コマンドはアップグレードのコマンドと全く一緒です。
その他
- EPLDのダウングレードできません。
- OSのアップグレードに伴い、10.3(もしかしたら4).x以降はlxc(linux container)モードに設定されます。
- そのため、vPCを利用している場合、隣接関係にある機器と一時的にboot modeに差分が発生します。
コメント