VirtualChassisのEX4500スむッチでのJunOSアップデヌト-䜕が問題になる可胜性がありたすか パヌト1

Habréを怜玢しおも、このトピックをカバヌする蚘事が必芁な量で芋぀かりたせんでした。この投皿はここからです。 トラむアル蚘事のボリュヌムが倚すぎるため、2぀の郚分がありたす。



私はここにいるので、自己玹介をしたしょう。私の名前はナラで、珟圚はサヌビスプロバむダヌの䌚瀟でネットワヌク゚ンゞニアずしお働いおいたす。 シスコネットワヌキングアカデミヌでの指導の背埌にある、圌らのデバむスの䞋䜍/䞭間ラむンず過去4幎間のかなり緊密な知り合い-ゞュニパヌデバむス。 長い間、私はこの投皿に぀いお自分の考えを集めるこずができたせんでしたが、最終的には、倖芋䞊の認識ぞの枇望ず同僚を助けたいずいう欲求が取り䞊げられたした。



はじめに、曎新の原理ず䞊蚘の蚈算は、ほずんどのすべおではないにしおもゞュニパヌのデバむスに圓おはたりたす。 私の堎合、これらはVirtualChassis仮想シャヌシ/ VCで実行されおいる2぀のEX4500スむッチです。 VirtualChassisテクノロゞヌ自䜓は、投皿を䞍適切な次元に膚らたせるため、私には考慮されたせん。 たた、このテヌマは、 ここでHabréに぀いお以前に怜蚎されたした 。 シスコのVSSにリモヌトで䌌おいるこずに泚意しおください。耇数の物理デバむスが、共通のコントロヌルパネル、構成、プロトコル、テヌブルなどを備えた1぀の論理デバむスに結合されおいたす。 あたり気にせず、長所/短所、実装、その他の耇雑さに぀いお考えたす-ここでの比范は参照マヌクのようなもので、VCずVSSの違い、およびCisco IOSずJunOSの違いが倧きくなっおいたす。



私の患者は、前述のVC぀たり、1぀の論理デバむスで結合され、ネットワヌクのコアに立っおいる2぀の物理スむッチEX4500です。 ネットワヌクの䞊に2぀の独立したBGPルヌタヌがあり、それぞれが1぀のリンクで物理EX4500仮想シャヌシの「メンバヌ」に接続され、デフォルトルヌトを送信しお、フルビュヌテヌブルを合蚈したす。 以䞋のネットワヌクは、VCをデフォルトゲヌトりェむずしお䜿甚する仮想マシンず物理サヌバヌを備えたサヌバヌ矀です。 JunOS 11.1R3.5の初期バヌゞョン、皌働時間-むンストヌルから玄800日。



曎新自䜓ずその必芁性は、私が䌚瀟に登堎するずっず前に浮かびたしたそのため、非垞に叀いバヌゞョンです。もはや重芁ではありたせん。 このバヌゞョンのサポヌト期間は終わりに近づいおいたため、曎新を行う必芁がありたした。 これはサヌビスプロバむダヌのネットワヌクの䞭栞であるため、その顧客の䞭には到達䞍可胜な倚くの重芁なクラむアントがいるため、ダりンタむム芁件は非垞に厳しいものです。 ずりわけ、ここには内郚トラフィックバックアップなどが远加され、カヌネルを通過したす。 これから先、少し運がなければ、これらの芁件を満たせなかったでしょう。 䞀方、倱敗のシェアがなければ、この投皿は存圚したせん。



そのため、補造元からの情報によるず、システムは次の方法で曎新できたす。



  1. 定期的な曎新
  2. ノンストップ゜フトりェアアップグレヌドNSSU
  3. むンサヌビス゜フトりェアアップグレヌドISSU


最埌から開始-ISSU。 その考えは、最初にメむンRoutingEngineREでOSが曎新され、すべおの管理ずトラフィックがスタンバむRoutingEngineREで切り替えられるずいうものです。 次に、゚ンゞンずバックアップREの曎新が切り替えられたす。 このためのプロトコルずテヌブルは、゚ンゞン間で同期する必芁がありたす-これは、グレヌスフルルヌティング゚ンゞンスむッチオヌバヌGRESおよびノンストップブリッゞング/ルヌティングNSB / NSRテクノロゞヌを䜿甚しお実珟されたす。



このタむプの曎新は、デュアル物理RoutingEngine別名ControlPlane、 ここではアヌキテクチャずRoutingEnginsに関する情報を参照および/たたはJunOSが仮想化されおいるデバむスたずえば、䞀郚のMXルヌタヌたたはQFX5100およびEX4600スむッチがスタンドでのみ動䜜するに適しおいたす-単独モヌド。 ぀たり、私の堎合、䞡方のカりントのスパンです。



NSSUは、VCたたはVCFVirtualChassis Fabric、぀たり次䞖代VCに統合された1぀の物理REを持぀デバむスに適しおいたす。 この堎合、スタンバむRoutingEngineの圹割は、他のデバむスのREによっお実行されたす。 この手順では、仮想シャヌシのシステムを曎新し、䞀床に1぀のメンバヌデバむスを過負荷にしたす。これにより、異なるVCメンバヌで終端する集玄チャネルが䜿甚され、サポヌトされおいるVC / VCF構成に適しおいる堎合、ダりンタむムを最小限に抑えたす。 ここでのGRESずNSB / NSRの存圚は、本質的に助蚀であり、ダりンタむムを削枛できたす。 玠晎らしいように聞こえたすが、2぀の泚意事項がありたす。JunOS12.1の最小バヌゞョンず、Juniper TACから䜿甚しないこずを匷く掚奚したす。 私の堎合、システムのタヌゲットバヌゞョンは12.3で、その時点でメヌカヌが掚奚する最も叀いバヌゞョンです。 NSSUずNSB / NSRを有効にしたす-これにより、シャヌシ内のメむンREをパケット損倱なしでオンザフラむで倉曎でき、ナヌザヌのダりンタむムなしでシステムを曎新できたす。



最終的に、私の珟実を考えるず、唯䞀の方法が残っおいたす-「通垞の」アップデヌトです。 ここでは通垞、すべおのVCデバむスの同時再起動を䌎う曎新を意味したす。それぞれ、玄5〜15分間のネットワヌク非アクティブ状態です。 掚定時間はメヌカヌのマニュアルから取られたすが、私の堎合は玄4分でした。 このような曎新問題なしの手順もここで考慮されたす 。 読曞にうんざりしおいお、曎新時に起こりうる問題を恐れおいない堎合は、蚪問するこずをお勧めしたす。



準備にかなりの時間を費やしたので、すべおの蚈算が私の状況に圓おはたるわけではないこずを考慮しおも、完党な蚈算を行うこずに挑戊したした。 さらに、それらはあなたにずっお有甚である可胜性がありたす。



たず最初に、補造元そしお今ではすでに私は、JunOSロヌダヌのバヌゞョンず内郚ストレヌゞのレむアりトをチェックしお曎新するこずをお勧めしたす。 私の特定のケヌスでは、これは必芁ではありたせんでしたが、埌でこれが重芁である理由を瀺したす。



デバむスをバヌゞョン10.4R2以前から10.4R3以降にアップグレヌドする堎合、OS自䜓の曎新に加えお、各プラットフォヌムに固有のブヌトロヌダヌを曎新する必芁がありたす。 ブヌトロヌダヌを曎新するず、内郚ストレヌゞが再フォヌマットされ、オペレヌティングシステムを保存するための2番目のパヌティションが䜜成されたす。 その結果、デバむスにはオペレヌティングシステムの2぀のパヌティションがありたす。1぀はアクティブでもう1぀はスペアで、他のファむルログ、ホヌムディレクトリなどには2぀のパヌティションがありたす。 どのような状況でブヌトロヌダヌを曎新する必芁がありたすか 最初show chassis firmwareコマンドの出力に、「U-boot」ずいう単語の埌、括匧の前のブヌトロヌダヌバヌゞョンに関する情報が含たれおいない堎合



user@switch> show chassis firmware Part Type Version FPC 0 uboot U-Boot (May 19 2010 - 05:03:13) loader FreeBSD/PowerPC U-Boot bootstrap loader 2.2
      
      





このコマンドずそれに続く倚くのコマンドは、個々のVCメンバヌデバむスに関する情報を衚瀺するこずに泚意しおください。 各デバむスは、FPC番号デバむスの数に応じお0、1、2などで識別されたす。 この䟋では、実皌働環境に十分な叀いデバむスがなく、ラボからデバむスを1぀取り出したため、1぀のデバむスがありたした。



2番目内郚ストレヌゞのshow system storageコマンドの出力に3぀のパヌティションスラむスず呌ばれるのみが含たれる堎合



チヌム出力
user @ switch> show system storage

fpc0

-䜿甚されるファむルシステムのサむズ䜿甚可胜な容量

/ dev / da0s1a 184M 120M 50M 71/

devfs 1.0K 1.0K 0B 100/ dev

/ dev / md0 35M 35M 0B 100/パッケヌゞ/ mnt / jbas e

/ dev / md1 18M 18M 0B 100/パッケヌゞ/ mnt / jcry pto-ex-10.3R1.9

/ dev / md2 6.4M 6.4M 0B 100/パッケヌゞ/ mnt / jdoc s-ex-10.3R1.9

/ dev / md3 145M 145M 0B 100/パッケヌゞ/ mnt / jker nel-ex-10.3R1.9

/ dev / md4 22M 22M 0B 100/パッケヌゞ/ mnt / jpfe -ex42x-10.3R1.9

/ dev / md5 46M 46M 0B 100/パッケヌゞ/ mnt / jrou te-ex-10.3R1.9

/ dev / md6 27M 27M 0B 100/パッケヌゞ/ mnt / jswi tch-ex-10.3R1.9

/ dev / md7 21M 21M 0B 100/パッケヌゞ/ mnt / jweb -ex-10.3R1.9

/ dev / md8 126M 10.0K 116M 0/ tmp

/ dev / da0s1f 123M 1.3M 112M 1/ var

/ dev / da0s3d 314M 146K 289M 0/ var / tmp

/ dev / da0s3e 55M 78K 51M 0/ config

/ dev / md9 118M 12M 96M 11/ var / rundb

procfs 4.0K 4.0K 0B 100/ proc

/ var / jail / etc 123M 1.3M 112M 1/ packages / mnt / jweb -ex-10.3R1.9 / jail / var / etc

/ var / jail / run 123M 1.3M 112M 1/ packages / mnt / jweb -ex-10.3R1.9 / jail / var / run

/ var / jail / tmp 123M 1.3M 112M 1/ packages / mnt / jweb -ex-10.3R1.9 / jail / var / tmp

/ var / tmp 314M 146K 289M 0/ packages / mnt / jweb -ex-10.3R1.9 / jail / var / tmp / uploads

devfs 1.0K 1.0K 0B 100/パッケヌゞ/ mnt / jweb -ex-10.3R1.9 / jail / dev

{マスタヌ0}



ここでは、デバむス/ dev / da0ず、dev / da0s1Xずdev / da0s3Xの3぀のパヌティションのみの存圚に泚目しおいたす。 dev / da0s2Xはどこに行きたしたか聞かないで-答えが芋぀かりたせんでした。 いずれにしおも、ここには4番目のスラむスはありたせん。 存圚する堎合、 / dev / da0s4dず呌ばれたす。



再パヌティションが必芁であるこずを確認する別の方法は、 show system storage partitionsコマンドを発行するこずです。 コマンドが゚ラヌを返す堎合、曎新が必芁です。

ブヌトロヌダヌを曎新し、リポゞトリを再パヌティションする必芁がある堎合疑わしい堎合に掚奚、これはフォヌマットを意味し、その結果、すべおの情報が削陀されるこずを忘れないでください。 したがっお、すべおの重芁な情報を保存する必芁がありたすが、内郚フラッシュドラむブの内容党䜓を保存する必芁がありたす。 ブヌトロヌダヌ自䜓を曎新するプロセスは䞀般的であり、JunOSの堎合も繰り返したす。



 user@switch> request system software add /var/tmp/ jloader-XXX.tgz user@switch> request system reboot
      
      





ブヌトロヌダヌずシステムを同時に曎新するこずをお勧めしたす-これにより、デバむスを䞀床だけ再起動できたす。 1぀の䟋倖を陀きたす。 叀いマヌクアップシステム3パヌティションを新しいもの4パヌティションにアップグレヌドし、同時にJunOSをアップグレヌドするず、曎新されたバヌゞョンが䞡方のブヌトパヌティションプラむマリおよびバックアップに曞き蟌たれたす。 これは、曎新されたシステムが本番環境でどのように動䜜するかわからない状況では望たしくない堎合がありたす。 この堎合、ブヌトロヌダヌずシステムを個別に曎新し、デバむスを2回再起動する必芁がありたす。 EX4200が1぀あるラボでは、ロヌダヌずシステムの曎新に13分かかりたした。新しいデバむスや高速なデバむスの堎合は、それよりも短いかもしれたせん。



ここでメむントピックに戻りたす。



既に述べたように、ブヌトロヌダヌを曎新する必芁はなく、すべおのファむルをSFTP、テキスト蚭定、スナップショットを内郚ストレヌゞおよび倖郚フラッシュドラむブに保存するこずから始めたした。



 user@switch> request system snapshot media internal member 0 user@switch> request system snapshot media internal member 0 slice alternate user@switch> request system snapshot media internal member 1 user@switch> request system snapshot media internal member 1 slice alternate user@switch> request system snapshot partition media external
      
      





ゞュニパヌネットワヌクスでは認定フラッシュドラむブの䜿甚を掚奚しおいたすが、容量が2GB以䞋のほずんどの人はMBRを䜿甚しおFATでフォヌマットされおいたす。 䞊蚘のスクリプトでは、最初の4行で、VCの䞡方のデバむスのアクティブおよびスタンバむスラむス代替セクションで実行䞭のOSず構成のスナップショットが䜜成されたす。 さらにデバむスがある堎合は、「メンバヌN」ごずに繰り返したす。 メンバヌNの代わりに、「 all-members 」キヌを䜿甚するこずもできたすが、私は確実性を奜みたす。 スナップショット自䜓を䜿甚するず、埌でシステムの叀いバヌゞョンにロヌルバックしたり、バックアップパヌティションから起動したり、問題が発生した堎合に倖郚フラッシュドラむブを䜿甚したりできたす。



重芁 スナップショットを䜜成する前に、システムの珟圚の実行バヌゞョン show version およびメむンセクションずバックアップセクションの内容 show system snapshot media internal のバヌゞョンコンプラむアンスを確認したす。 キャッチは、コマンド「システムスナップショットメディアの内郚メンバヌNを芁求する」が珟圚実行䞭の正垞な、たたは実行䞭のバヌゞョンをメむンパヌティションにコピヌし、コマンド「システムスナップショットメディアの内郚メンバヌNスラむスを代替する」コマンドがメむンパヌティションからバックアップにコピヌするこずです。 私のメむンセクションでは、䜕らかの理由で、バックアップよりも叀いバヌゞョンがありたした。 オタクず泚意は良いだけです。



最埌のコマンドは、倖郚フラッシュドラむブにスナップショットを䜜成し、内郚フラッシュドラむブの内容ずパヌティションテヌブルに埓っおフォヌマットしたすパヌティションキヌが必芁です。



アップグレヌドする前に、倖郚ドラむブ/ FTP / HTTPサヌバヌからアップグレヌドしない堎合は、システムの新しいバヌゞョンを内郚ストレヌゞにコピヌするこずをお勧めしたす。 ゞュニパヌネットワヌクスでは、システムむメヌゞを/ var / tempに配眮するこずを掚奚しおいたす。 アップグレヌドプロセス䞭に/ varの内容が削陀され、トラブル私のようなものが発生した堎合は、むメヌゞを再床アップロヌドする必芁があるため、これを行うこずはお勧めしたせん。 蚀うたでもなく、システムの重芁性を䌎うこの遅延は望たしくありたせん。 ルヌトでより適切な事前䜜成ディレクトリを䜿甚し、曎新埌、「 file delete / directory / filename 」を䜿甚しおリポゞトリをクリヌンアップしたす。



次に、再起動を䌎う実際の曎新



 user@switch> request system software add /var/tmp/jinstall-XXX.tgz validate user@switch> request system reboot
      
      





「怜蚌」キヌを䜿甚するず、デバむス構成ず新しいバヌゞョンのOSずの互換性を確認できたす。 私のEX4500デバむスでは、自動的に実行され、明瀺的に指定する必芁はありたせんが、他のデバむスでは蚭定する必芁がありたす-明らかに優れおいる、悪化するこずはありたせん。



なぜこの長い投皿ず譊告付きの説明がたくさんあるのですか 4分間の再起動ず曎新の埌、むンタヌフェむスLEDは2番目のデバむスmember1でのみ点灯するこずがわかりたす。 すべおのLACPリンクが䞡方のデバむスに接続され、幞運、こんにちはこのデバむスがメむンのむンタヌネットチャネルに接続され、クラむアントが再びオンラむンになったため、私にずっおこれはもはや悪くありたせん。 唯䞀の非LACPリンクがmember0に接続され、フリヌトをバックアップサヌバヌに接続したす。 私にずっおは、すべおのバックアップが停止されたため、重芁ではありたせん。



この堎所で、幞せな管理者が仕事を終え、残りのコヌヒヌを䞞lurみし、静かな心で家に垰り、倜の街で埮笑んでいたす。 私の堎合、匕甚された資料は蚘事党䜓の1/3です。 このトピックがナヌザヌの興味を匕くものである堎合、私は楜しみを続けたす-それから面癜いこずだけです



All Articles