Skip to content

Catalyst 9300 のバージョンアップ手順

Catalyst 9300 でバージョンアップする手順をメモしておきます。

ストレージ容量を空ける

リリースノートによると、新しい OS のインストールを実施する前に 1GB 以上の空きを確保しておくに記載されています。

Use this command to clean-up old installation files in case of insufficient space and to ensure that you have at least 1GB of space in flash, to expand a new image.

ファイルシステム全体の空き容量は show file systems で確認出来ます。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
C9300# show file systems
File Systems:

       Size(b)       Free(b)      Type  Flags  Prefixes
             -             -    opaque     rw   system:
             -             -    opaque     rw   tmpsys:
    1651314688    1183600640      disk     rw   crashinfo:
*  11353194496    4268130304      disk     rw   flash: bootflash:
    3840843776    3727015936      disk     ro   webui:
             -             -    opaque     rw   null:
             -             -    opaque     ro   tar:
             -             -   network     rw   tftp:
       2097152       2070035     nvram     rw   nvram:
             -             -    opaque     wo   syslog:
             -             -   network     rw   rcp:
             -             -   network     rw   http:
             -             -   network     rw   ftp:
             -             -   network     rw   scp:
             -             -   network     rw   sftp:
             -             -   network     rw   https:
             -             -    opaque     ro   cns:

利用していないパッケージ (.pkg ファイル) や OS バイナリ (.bin ファイル) を削除するには install remove inactive を実行します。

1
2
3
4
5
6
7
8
9
C9300# install remove inactive
    ・
    ・
    ・
Do you want to remove the above files? [y/n] y
    ・
    ・
    ・
SUCCESS: install_remove  Sun Mar  7 13:19:37 JST 2021

これで flash の空き容量が確保されました。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
C9300# show file systems
File Systems:

       Size(b)       Free(b)      Type  Flags  Prefixes
             -             -    opaque     rw   system:
             -             -    opaque     rw   tmpsys:
    1651314688    1183559680      disk     rw   crashinfo:
*  11353194496    9843171328      disk     rw   flash: bootflash:
    3840843776    3727015936      disk     ro   webui:
             -             -    opaque     rw   null:
             -             -    opaque     ro   tar:
             -             -   network     rw   tftp:
       2097152       2070035     nvram     rw   nvram:
             -             -    opaque     wo   syslog:
             -             -   network     rw   rcp:
             -             -   network     rw   http:
             -             -   network     rw   ftp:
             -             -   network     rw   scp:
             -             -   network     rw   sftp:
             -             -   network     rw   https:
             -             -    opaque     ro   cns:

OS バイナリのコピー

必要な空き容量が確保出来たら OS バイナリをコピーします。 TFTP によるコピーは非常に時間がかかるので、SCP や HTTP などでの転送をおすすめします。

SCP でのコピー

SCP でコピーを行う際は copy コマンドに vrf オプションを指定します。

1
2
3
4
5
6
7
8
C9300# copy scp: flash: vrf Mgmt-vrf
Address or name of remote host []? 10.0.0.1
Source username [admin]? root
Source filename []? cat9k_iosxe.17.03.03.SPA.bin
Destination filename [cat9k_iosxe.17.03.03.SPA.bin]?
Password:
 Sending file modes: C0644 901741775 cat9k_iosxe.17.03.03.SPA.bin
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

HTTP でのコピー

HTTP でコピーを行う場合は copy コマンドに vrf オプションを指定することが出来ません。

1
2
C9300# copy http: flash: ?
  <cr>  <cr>

HTTP でコピーを行う際の送信元インターフェイス (VRF) はコンフィグ上、ip http client source-interface で設定されたインターフェイスが利用されます。 例えば Mgmt-vrf として設定された GigabitEthernet 0/0 を HTTP の送信元として利用する場合は以下のように設定します。

1
2
3
4
configure terminal
 ip http client source-interface GigabitEthernet 0/0
!
end

これで copy コマンドを実行すると ip http client source-interface で指定したインターフェイス (VRF) を送信元として copy コマンドが実行されます。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
C9300# copy http: flash:
Address or name of remote host []? 10.0.0.1
Source filename []? /cat9k/cat9k_iosxe.17.03.03.SPA.bin
Destination filename [cat9k_iosxe.17.03.03.SPA.bin]?
Accessing http://10.0.0.1//cat9k/cat9k_iosxe.17.03.03.SPA.bin...
Loading http://10.0.0.1//cat9k/cat9k_iosxe.17.03.03.SPA.bin !!!!!
    ・
    ・
    ・
901741775 bytes copied in 85.640 secs (10529446 bytes/sec)

バージョンアップ前の準備

バージョンアップを実行する前に必要な環境変数を定義しておきます。

1
2
3
4
5
configure terminal
 boot system flash:packages.conf
 no boot manual
!
end

write memory を実行して設定を startup-config に反映しておきます。

1
2
3
C9300# write memory
Building configuration...
[OK]

copy running-config startup-config でも良いのですが、これは宛先ファイル名を確認される為、Destination filename の入力が必要です (Enter を押すだけですが…)。

1
2
3
4
C9300# copy running-config startup-config
Destination filename [startup-config]?
Building configuration...
[OK]

show boot を実行し、下記の 2 点を確認します。

  1. BOOT variable = flash:packages.conf; であること
  2. Manual Boot = no であること
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
C9300# show boot
---------------------------
Switch 1
---------------------------
Current Boot Variables:
BOOT variable = flash:packages.conf;

Boot Variables on next reload:
BOOT variable = flash:packages.conf;
Manual Boot = no
Enable Break = no
Boot Mode = DEVICE
iPXE Timeout = 0

バージョンアップ

install add file [BINARY] activate commit を実行してバージョンアップを開始します。 y を入力してしばらくすると自動的にスイッチが再起動されます。

1
2
3
4
5
C9300# install add file flash:cat9k_iosxe.17.03.03.SPA.bin activate commit
    ・
    ・
    ・
This operation may require a reload of the system. Do you want to proceed? [y/n] y

再起動が完了すると指定したバージョンに変更されているはずです。

1
2
3
4
5
C9300# show version
Cisco IOS XE Software, Version 17.03.03
    ・
    ・
    ・

参考