インサービス ソフトウェア アップグレードを使用したシャーシ クラスタのアップグレード
このトピックでは、インサービスソフトウェアアップグレード(ISSU)により、ダウンタイムを最小限に抑えながら、あるJunos OSバージョンから新しいJunos OSバージョンへのソフトウェアアップグレードを可能にすることを説明します。
機能エクスプローラーを使用して、特定の機能のプラットフォームとリリースのサポートを確認します。
プラットフォームに関連する注意事項については、「 プラットフォーム固有のインサービスソフトウェアアップグレード動作 」セクションを参照してください。
詳細については、「 補足プラットフォーム情報 」セクションを参照してください。
シャーシクラスターのISSUについて
ISSU(インサービスソフトウェアアップグレード)により、ダウンタイムをほとんど発生させずに、あるJunos OSバージョンから新しいJunos OSバージョンにアップグレードできます。ISSUは、デバイスがシャーシクラスターモードで動作している場合にのみ実行されます。
フェイルオーバーイベント中に観測されるダウンタイムは、導入環境や以下のような外部要因によって異なります。
- 接続されたデバイスが GARP(Gratuitous ARP)アップデートを処理して応答する速度。
- アップストリームおよびダウンストリームスイッチでのMACアドレス再学習と転送テーブルの更新。
- アプリケーションの動作と使用中のプロトコル(例えば、TCPセッションの回復方法はUDPベースのトラフィックとは異なる場合があります)。
シャーシクラスター ISSU機能により、クラスターノード間でアップグレードプロセスを調整することで、トラフィックの中断を最小限に抑え、サービスの中断もなく、クラスター内の両方のデバイスをサポートされているJunos OSバージョンからアップグレードできます。
ISSUには、以下のようなメリットがあります。
-
ソフトウェアイメージのアップグレード中のネットワークダウンタイムをなくす
-
運用コストを削減しながら、サービスレベルを向上
-
新機能の迅速な実装が可能
ISSUには以下の制限があります。
-
ISSUは、Junos OSリリース10.4R4以降でのみ使用できます。
-
ISSUはソフトウェアのダウングレードをサポートしていません。
-
IPv4のみをサポートするJunos OSバージョンからIPv4とIPv6の両方をサポートするバージョンにアップグレードした場合、IPv4トラフィックはアップグレードプロセス全体を通じて正常に機能し続けます。IPv4とIPv6の両方をサポートするJunos OSバージョンから、両方のプロトコルをサポートする別のバージョンにアップグレードした場合、アップグレード中もIPv4とIPv6の両方のトラフィックは機能し続けます。Junos OSがサポートするプラットフォームは、IPv6トラフィックのフローベース処理をサポートしています。
-
ISSU中は、PICをオンラインにすることはできません。コミット、再起動、停止などの操作は実行できません。
-
ISSU実行中は、ファブリック監視、制御リンクリカバリ、RGXプリエンプトなどの操作が中断されます。
-
ISSU中は、設定をコミットすることはできません。
ISSUのサポートステータスの詳細については、ナレッジベースの記事 KB17946を参照してください。
次のシーケンスは、シャーシクラスターで動作するデバイスのISSUの動作を説明します。このシーケンスは、RG-0がプライマリノードであるノード0でホストされている場合に適用されます。RG-0プライマリノードからISSUを開始する必要があります。ノード1(RG-0セカンダリノード)からISSUを起動しようとすると、エラーメッセージが表示され、アップグレードは続行されません。
- 初期冗長グループフェイルオーバー
シャーシクラスターISSUの開始時に、システムは、ISSUが開始されたノードでまだプライマリではないすべてのRG-1以上(RG-1+)冗長性グループを自動的にフェイルオーバーします。このアクションにより、ソフトウェアのアップグレードが開始される前に、RG-0プライマリノードですべての冗長性グループがアクティブになります。
すべてのRG-1+冗長性グループの自動フェイルオーバーは、システムによって実行されます。Junos OSリリース18.1R1以前を実行している場合は、ISSUを開始する前に、すべてのRG-1+冗長性グループがRG-0プライマリノードでアクティブになっていることを手動で確認する必要があります。
すべてのRG-1+冗長性グループがフェイルオーバーした後、システムは手動フェイルオーバービットを設定し、アップグレード中の冗長グループの移動を防ぎます。システムは、このステップ中にRG-0プライマリノードにフェイルオーバーしたかどうかに関係なく、すべてのRG-1+冗長性グループのプライマリノードの優先度を255に変更します。
-
ISSU中に、プライマリノード(ノード0)はデバイス設定を検証し、新しいJunos OSバージョンを使用して正常にコミットできることを確認します。この検証プロセスの一環として、システムは両方のノードで以下のチェックを実行します。
-
/varファイルシステムのディスク容量の可用性
-
サポートされていない設定ステートメント
-
サポートされていない物理インターフェイスカード(PIC)
いずれかのルーティングエンジンの
/varファイルシステムの使用可能なディスク容量が不十分な場合、ISSUプロセスは失敗してエラーメッセージを返し、アップグレードは続行されません。サポートされていないPICは、ISSUの続行を妨げるものではありません。ただし、アップグレード中にこれらのPICが再起動することを示す警告がソフトウェアによって生成されます。
同様に、サポートされていないプロトコル設定が存在しても、ISSUはブロックされません。このような場合、アップグレードプロセス中に影響を受けるプロトコルのパケット損失が発生する可能性があるという警告がソフトウェアから発行されます。
-
-
検証に成功すると、カーネル状態同期デーモン(ksyncd)は、セカンダリノード(ノード1)上のカーネルをノード0と同期します。
-
ノード1が新しいソフトウェアイメージでアップグレードされます。アップグレードされる前に、ノード1はノード0から設定ファイルを取得し、新しいソフトウェアバージョンを使用してコミットできることを確認する設定を検証します。アップグレード後、ノード0と再同期します。
-
ノード0のシャーシクラスタープロセス(シャーシ)は、lSSU用に他のソフトウェアプロセスを準備します。すべてのプロセスの準備ができたら、chassisdはデバイスにインストールされているPICにメッセージを送信します。
-
各FPC(フレキシブルPICコンセントレータ)上のパケット転送エンジンは、その状態を保存し、ノード1から新しいソフトウェアイメージをダウンロードします。次に、各パケット転送エンジンがメッセージ(統合型ISSU対応)をシャーシに送信します。
-
シャーシドは、パケット転送エンジンからメッセージ(統合型ISSU対応)を受信した後、パケット転送エンジンが存在するFPCに再起動メッセージを送信します。FPCが新しいソフトウェアイメージで再起動します。FPCが再起動されると、パケット転送エンジンがFPC状態を復元し、ノード1が新しいソフトウェアを実行して高速内部リンクが確立されます。シャーシもノード0で再確立されます。
-
すべてのパケット転送エンジンがノード0のシャーシを使用して 準備完了 メッセージを送信した後、他のソフトウェアプロセスがノードスイッチオーバー用に準備されます。この時点で、システムはスイッチオーバーの準備が整っています。
-
ノードの切り替わりが発生し、ノード1が新しいプライマリノード(これまではセカンダリノード1)になります。
-
これで、新しいセカンダリ ノード(これまでのプライマリ ノード 0)が、新しいソフトウェア イメージにアップグレードされました。
両方のノードのアップグレードに成功すると、ISSUは完了です。
暗号化をサポートしていない Junos OS バージョンから暗号化をサポートするバージョンにシャーシ クラスターをアップグレードする場合は、一度に 1 ノードずつアップグレードを実行します。
-
最初のノードを新しい Junos OS バージョンにアップグレードします。
暗号化が構成されておらず有効になっていない場合、2つのノードが異なるソフトウェアバージョンを実行していても、2つのノード間のクラスター通信はそのまま残り、サービスは中断されることなく続行されます。
-
2番目のノードを同じ新しいJunos OSバージョンにアップグレードします。
両方のノードのアップグレードが正常に完了したら、必要に応じて暗号化を設定して有効にすることを選択できます。
暗号化をサポートしていない Junos OS バージョンにダウングレードする場合は、ダウングレードを開始する前に暗号化が無効になっていることを確認してください。ダウングレード前に暗号化を無効にすることで、以下の間の通信障害を防止します。
- 暗号化が有効な Junos OS バージョンをまだ実行しているノード、および
- 暗号化をサポートしていないバージョンにダウングレードされたノード。
両方のノードで暗号化を無効にすることで、ダウングレードプロセス全体を通して、クラスター通信は暗号化されず、運用可能な状態を保ちます。
設定をコミットするには、ルーティングエンジンとパケット転送エンジンのポリシーが同期されている必要があります。ポリシー設定が変更され、ポリシーが同期されていない場合、システムはエラーメッセージを表示します。
回避策として、アップグレード後にセキュリティポリシーが同期していないことに気付いた場合に備えて、request security policies resync コマンドを使用して、ルーティングエンジンとパケット転送エンジンのセキュリティポリシーの設定を同期させる必要があります。
ISSUのシステム要件
ISSUを使用して、ISSU対応ソフトウェアリリースからそれ以降のリリースにアップグレードできます。
ISSUを実行するには、デバイスが特定のプラットフォームのISSUをサポートするJunos OSリリースを実行している必要があります。
詳細については、「 シャーシクラスター向けISSUについて 」セクションを参照してください。
ISSUのサポートと制限の詳細については、 SRXシリーズデバイスでのISSU/ICUアップグレードの制限を参照してください。
ISSUを実行する際の制限事項は次のとおりです。
-
インストール用に指定されたJunos OSのバージョンが、デバイス上で現在実行されているバージョンよりも前の場合、ISSUプロセスは終了します。
-
指定されたアップグレードが以下と競合する場合、ISSUは終了します。
-
現在のデバイス構成
-
サポートされているハードウェアコンポーネント
-
その他のプラットフォームまたはソフトウェアへの依存
-
-
ISSUは、Junos OS SDKを使用して開発された拡張アプリケーションパッケージをサポートしていません。
-
ISSUは、すべてのファイアウォールでバージョンダウングレードをサポートしているわけではありません。
-
ISSUはCPU負荷が高いとフェイルする可能性があるため、アップグレードを開始する前に十分なシステムリソースを確保することをお勧めします。
ISSU対応のJunos OSリリースからそれ以前のリリース(ISSU対応かどうかにかかわらず)にダウングレードするには、 request system software add コマンドを使用します。
ISSUのアップグレードとは異なり、ダウングレードするとネットワークが中断する可能性があります。
ダウングレードプロセス中にデータが失われるリスクもあります。
ダウングレードは慎重に計画し、バックアップが適切に取得されていることを確認してから続行してください。
以下の条件下でISSUを実行することを強くお勧めします。
-
プライマリ ノードとセカンダリ ノードの両方が正常な場合
-
システム保守期間中
-
トラフィックが可能な限り少ない時間帯に
-
ルーティングエンジンのCPU使用率が40%未満の場合
ISSUがサポートされていない、または推奨されていないが、システムアップグレードのダウンタイムを最小限に抑える必要があるシナリオでは、最小ダウンタイムのアップグレード手順を使用できます。関連するナレッジベースの記事 KB17947を参照してください。
ISSUを使用してシャーシクラスター内の両方のデバイスをアップグレードする
両方のデバイスをアップグレードするための ISSU を開始する前に、以下のガイドラインに留意してください。
-
以下のISSU事前チェック要件が満たされていることを確認します。
-
すべての冗長性グループ 優先度が0より大きい
-
すべての冗長性グループは、状態がプライマリまたはセカンダリのいずれかです
-
/var/tmp には十分な (画像サイズの 2 倍の) 空き容量があります
-
5秒以内にCPUの使用率が80%未満の場合
事前チェック要件が満たされない場合、ISSUは最初から終了します。
-
-
各ルーティングエンジンで
request system snapshotコマンドを使用してソフトウェアをバックアップし、システムのハードディスクにシステムソフトウェアをバックアップします。 -
Junos OSリリース18.1R1以前を使用している場合は、ISSUを開始する前に、すべての冗長性グループのフェイルオーバーを設定して、1つのノード(プライマリ)でのみすべてがアクティブになるようにします。 シャーシクラスター手動冗長グループのフェイルオーバーの開始を参照してください。
Junos OSリリース18.1以降を実行している場合、システムは自動的にすべてのRGをRG0プライマリにフェイルオーバーします。
-
トラフィックの中断を最小限に抑えるために、ISSUを開始する前に、すべてのルーティングプロトコルのグレースフルリスタートを有効にすることをお勧めします。
サポートされているすべてのファイアウォールで、リリース から 最初に推奨されるISSUはJunos OSリリース18.1R1です。
シャーシクラスターのISSU機能により、クラスター内の両方のデバイスをサポートされているJunos OSリリースからアップグレードすることができ、トラフィックへの影響は冗長性グループのフェイルオーバーに匹敵します。
ルーティングエンジン2上のCLIからISSUを実行するには
ISSU(インサービスソフトウェアアップグレード)後に、冗長性グループをプライマリとしてノード0に自動的に戻す場合は、ノード0の優先度が高くなるように冗長性グループの優先度を設定し、 preempt オプションを有効にする必要があります。
このアプローチは、冗長性グループ 0(RG0)を除くすべての冗長性グループに適用されます。RG0の場合、フェイルオーバーは手動で実行する必要があります。
冗長性グループの優先度を設定し、 preempt オプションを有効にするには、 例:シャーシクラスター冗長性グループの設定を参照してください。
冗長性グループのフェイルオーバーを手動で設定するには、 シャーシ クラスタの手動冗長性グループのフェイルオーバーの開始を参照してください。
アップグレード中、両方のデバイスで冗長性グループのフェイルオーバーが発生する可能性があります。ただし、トラフィックは中断されません。アップグレードを開始する前に、各デバイスはアップグレードパッケージを検証し、バージョンの互換性を確認します。新しいパッケージバージョンが現在インストールされているバージョンと互換性がないことがシステムによって検出された場合、アップグレードは拒否されるか、是正措置の実行を求められます。場合によっては、特定の機能に互換性がないことがあります。このような状況では、アップグレードソフトウェアは、アップグレードを終了するか、互換性のない機能を無効にしてから続行するように求めます。
ファイアウォールをスタンドアロンデバイスとして運用する場合、またはシャーシクラスターからノードを削除する場合は、両方のノードでISSU手順が完全に終了していることを確認してください(ISSUが開始されている場合)。
ルーティングエンジン3を搭載したSRX5Kデバイスと、SRX1600、SRX2300、SRX4120、SRX4300デバイスでISSUプロセスを開始するには:
-
次のコマンドを実行して ISSU を起動します。
user@host> request vmhost software in-service-upgrade image-name-with-full-path
関連項目
ISSU後にシャーシクラスター内のデバイスをロールバックする
ISSUが完了せず、クラスター内の1台のデバイスのみがアップグレードされる場合、アップグレードされたデバイスで以下のコマンドのいずれかを発行することで、アップグレードされたデバイスのみで以前の設定にロールバックできます。
-
request chassis cluster in-service-upgrade abort -
request system software rollback node node-id reboot -
request system reboot
ISSU後の自動シャーシクラスターノードフェイルバックを有効にする
ISSU(インサービスソフトウェアアップグレード)後に、冗長性グループが自動的にプライマリとしてノード0に戻るようにするには、ノード0の優先度が高くなるように冗長性グループの優先度を設定し、 preempt オプションを有効にする必要があります。
このメカニズムは、冗長性グループ 0 を除くすべての冗長性グループに適用されます。冗長グループ0は自動プリエンプションをサポートしていないため、手動でフェイルオーバーする必要があります。
冗長性グループの優先度を設定し、 preempt オプションを有効にするには、 例: シャーシ クラスタ冗長性グループの設定を参照してください。冗長グループのフェイルオーバーを手動で開始するには、 シャーシ クラスタの手動冗長グループ フェイルオーバーの開始を参照してください。
ISSU後にアップグレードを完了し、シャーシクラスターでノード0を使用できるようにするには、ノード0を手動で再起動する必要があります。ノード0は、ISSUプロセスの一部として自動的に再起動しません。
プラットフォーム固有の インサービスソフトウェアアップグレード 動作
機能エクスプローラーを使用して、特定の機能のプラットフォームとリリースのサポートを確認します。
お使いのプラットフォームに固有の動作を確認するには、以下の表を使用してください。
|
プラットフォーム |
違い |
|---|---|
|
SRXシリーズ |
|
補足プラットフォーム情報
機能エクスプローラーを使用して、特定の機能のプラットフォームとリリースのサポートを確認します。
追加のプラットフォームがサポートされる場合があります。
|
デバイス |
Junos OSリリース |
|---|---|
|
SRX5800およびSRX5600 |
10.4R4以降 |
|
SRX5400 |
12.1X46-D20以降 |
|
SRX1500 |
15.1X49-D70以降 |
|
SRX1600とSRX2300、SRX4120 |
23.4R1以降 |
|
SRX4100およびSRX4200 |
15.1X49-D80以降 |
|
SRX4300 |
24.2R1以降 |
|
SRX4600 |
17.4R1以降 |