목차

소개

요구 사항

사용되는 구성 요소

배경 정보

설치 모드 개요

번들 모드

설치 모드

업그레이드 방법

자동 업그레이드

설치 모드

프로세스 개요

설치 모드 명령

번들 모드

레거시 방법

Stackwise 가상

Dual-Sup

Quad-Sup

ISSU

업그레이드 옵션

ReloadFast

Cleanup

문제 해결

V-Mismatch

Rommon에서 복구

BIN 파일이 구성원에게 없음

슈퍼 패키지가 이미 설치됨

잘못된 부팅 변수

시나리오 1

시나리오 2

관련 정보

Cisco 버그 ID

소개

이 문서에서는 Catalyst 9000(Cat9K) 스위치의 업그레이드 방법을 설명합니다.

요구 사항

이 문서에 대한 특정 요건이 없습니다.

사용되는 구성 요소

이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.

- C9200

- C9300

- C9400

- C9500

- C9600

참고: 다른 Cisco 플랫폼에서 이러한 기능을 활성화하는 데 사용되는 명령은 해당 설정 가이드를 참조하십시오.

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.

배경 정보

이 문서에서는 번들 또는 설치 모드를 사용하는 Catalyst 9K 유형 스위치의 신규 및 기존 업그레이드 절차를 설명합니다.

설치 모드 개요

번들 모드

번들 모드란 스위치가 Cisco IOS®의 기존 방식으로 실행되는 것을 의미합니다. Cisco IOS를 실행하는 데 필요한 모든 것이 포함된 .bin 파일을 부팅합니다. 기존 Cisco IOS의 경우 로드할 .bin 파일을 가리키고 부팅 시 로드되도록 하는 부팅 명령문이 있습니다.

Switch#show boot

BOOT variable = bootflash:cat9k_iosxe.16.11.01.SPA.bin;

Configuration Register is 0x102

MANUAL_BOOT variable = no

BAUD variable = 9600

ENABLE_BREAK variable does not exist

BOOTMODE variable does not exist

IPXE_TIMEOUT variable does not exist

CONFIG_FILE variable =

boot system 명령을 사용하여 이 부팅 명령문을 설정해야 합니다.  다음에 다시 로드하면 스위치가 16.11.01이 아닌 16.12.01로 부팅됩니다.

Switch#configure terminal

Enter configuration commands, one per line.  End with CNTL/Z.

Switch(config)#no boot system

Switch(config)#boot system bootflash:cat9k_iosxe.16.12.01.SPA.bin <---

Switch(config)#end

Switch#wr

Switch#

Switch#show run | include boot system

boot system bootflash:cat9k_iosxe.16.12.01.SPA.bin

Switch#

Switch#show boot

BOOT variable = bootflash:cat9k_iosxe.16.12.01.SPA.bin; <---

Configuration Register is 0x102

MANUAL_BOOT variable = no

BAUD variable = 9600

ENABLE_BREAK variable does not exist

BOOTMODE variable does not exist

IPXE_TIMEOUT variable does not exist

CONFIG_FILE variable =

설치 모드

설치 모드는 권장되는 새로운 실행 모드입니다. 이렇게 하면 .bin 파일이 더 작은 .pkg 파일로 분할되어 각각 독립적으로 메모리에 로드되어야 하고, 더욱 부팅 속도와 메모리 활용 효율성을 높일 수 있습니다. software.cisco.com에서 다운로드한 .bin 파일에는 필요한 모든 .pkg 파일이 포함되어 있습니다.

참고: .bin 파일은 .zip 파일로 간주할 수 있습니다. .bin 파일을 해제하여 .pkg 파일을 추출할 수 있습니다. 어떤 .pkg 파일이 필요한지 표시하는 데 사용되는 설정 파일도 있습니다. 이는 설치 모드에서 부팅할 때 사용되는 프로세스입니다.

1. 부팅 명령문에 따라 어떤 설정 파일을 로드할지(일반적으로 package.conf) 결정됩니다.

2. 설정 파일이 열리고 로드할 .pkg 파일을 정렬하는 데 사용됩니다.

3. .pkg 파일이 로드되고 Cisco IOS가 부팅 프로세스를 완료합니다.

- .conf 파일은 포인터로 사용되는 텍스트 파일이며, CLI에서 열고 살펴볼 수 있습니다.

- 이 설정 파일은 16.11.01을 로드하도록 설정되어 있습니다. 이제 디바이스를 업그레이드하기 위해 부팅 명령문을 변경할 필요가 없습니다. 새 .pkg 파일을 가리키도록 package.conf 파일을 변경하기만 하면 됩니다.

참고: 이 작업은 자동으로 수행되며 이 파일을 직접 편집할 필요가 없습니다. 하지만 다시 로드하기 전에 .conf 파일이 가리키는 패키지 파일을 확인하여 올바른 파일을 가리키는지 확인할 수 있습니다.

Switch#more packages.conf

#! /usr/binos/bin/packages_conf.sh

<...snip...>

# This is for CAT9k

boot  rp 0 0   rp_boot         cat9k-rpboot.16.11.01.SPA.pkg

iso   rp 0 0   rp_base         cat9k-rpbase.16.11.01.SPA.pkg

iso   rp 0 0   rp_daemons      cat9k-rpbase.16.11.01.SPA.pkg

iso   rp 0 0   rp_iosd         cat9k-rpbase.16.11.01.SPA.pkg

iso   rp 0 0   rp_security     cat9k-rpbase.16.11.01.SPA.pkg

iso   rp 0 0   rp_wlc          cat9k-wlc.16.11.01.SPA.pkg

iso   rp 0 0   rp_webui        cat9k-webui.16.11.01.SPA.pkg

iso   rp 0 0   srdriver        cat9k-srdriver.16.11.01.SPA.pkg

iso   rp 0 0   guestshell      cat9k-guestshell.16.11.01.SPA.pkg

boot  rp 1 0   rp_boot         cat9k-rpboot.16.11.01.SPA.pkg

iso   rp 1 0   rp_base         cat9k-rpbase.16.11.01.SPA.pkg

iso   rp 1 0   rp_daemons      cat9k-rpbase.16.11.01.SPA.pkg

iso   rp 1 0   rp_iosd         cat9k-rpbase.16.11.01.SPA.pkg

iso   rp 1 0   rp_security     cat9k-rpbase.16.11.01.SPA.pkg

iso   rp 1 0   rp_wlc          cat9k-wlc.16.11.01.SPA.pkg

iso   rp 1 0   rp_webui        cat9k-webui.16.11.01.SPA.pkg

iso   rp 1 0   srdriver        cat9k-srdriver.16.11.01.SPA.pkg

iso   rp 1 0   guestshell      cat9k-guestshell.16.11.01.SPA.pkg

<...snip...>

#

# -start- superpackage .pkginfo

#

# pkginfo: Name: rp_super

# pkginfo: BuildTime: 2019-03-28_09.46

# pkginfo: ReleaseDate: Thu-28-Mar-19-01:19

# pkginfo: .BuildArch: x86_64

# pkginfo: BootArchitecture: i686

# pkginfo: .BootArch: i686

# pkginfo: RouteProcessor: cat9k

# pkginfo: Platform: CAT9K

# pkginfo: User: mcpre

# pkginfo: PackageName: universalk9

# pkginfo: Build: 16.11.01

# pkginfo: .SupportedBoards: cat9k

# pkginfo: .InstallModel:

# pkginfo: .PackageRole: rp_super

# pkginfo: .RestartRole: rp_super

# pkginfo: .UnifiedPlatformList: passport,nyquist,starfleet

# pkginfo: CardTypes:

# pkginfo: .CardTypes:

# pkginfo: .BuildPath: /scratch/mcpre/release/BLD-V16_11_01_FC3/binos/linkfarm/stage-cat9k/hard/rp_super_universalk9.x86_64

# pkginfo: .Version: 16.11.1.0.312.1553791584..Gibraltar

# pkginfo: .InstallVersion: 1.0.0

# pkginfo: .InstallCapCommitSupport: yes

#

# -end- superpackage .pkginfo

#

설치 모드에서 업그레이드를 수행할 때 프로세스는 항상 동일합니다. 하지만 명령은 플랫폼마다 다를 수 있습니다.

1. 새 .bin 파일을 스위치에 복사합니다.

2. .bin 파일에서 .pkg 파일을 추출합니다.

3. .conf 파일을 업데이트하고 디바이스를 새 버전으로 다시 로드합니다.

4. 롤백 타이머를 중지하여 업그레이드가 완료되었는지 확인합니다.

대부분의 경우 단일 명령으로 2~4단계를 수행할 수 있습니다. 이를 통해 이전 버전으로 롤백할 수도 있습니다.

업그레이드 방법

자동 업그레이드

활성 수퍼바이저가 설치 모드에서 실행 중인 경우 자동 업그레이드를 사용하는 것이 가장 좋습니다. 이렇게 하면 대기 SUP(번들/설치/기타)에 로드되는 이미지와 무관하게 활성 SUP가 대기 SUP를 업그레이드할 수 있습니다. 하지만 프로세스를 시작하려면 대기를 유효한 이미지로 부팅해야 합니다.

참고: 자동 업그레이드는 rommon에서 sup를 복구하지 않습니다.

스위치에서 불일치가 탐지되면 대기 SUP를 자동으로 업그레이드하도록 이 명령을 활성화합니다.

software auto-upgrade enable

또는 수동으로 업그레이드 실행

install autoupgrade

참고: 자동 업그레이드는 활성 섀시가 설치 모드에 있는 한 StackWise Virtual 설정에서 작동합니다.

설치 모드

다음 섹션에서는 명령의 사용에 대해 "install" 설명합니다. 모든 9k에서 이러한 명령을 지원합니다. 하지만 이 옵션은 9600, 9400, 9200의 유일한 옵션입니다.

프로세스 개요

설명한 것과 같이 업그레이드는 4단계 프로세스입니다. 하지만 2~4단계에 대한 명령은 약간 암호화되어 있으므로 각 명령은 다음을 수행합니다.

설치 모드 명령

제한 사항

부팅 명령문은 항상 설치 모드의 package.conf여야 합니다. 업그레이드 도중 부팅 명령문을 다른 .conf 파일로 변경하려고 하면 업그레이드가 실패할 수 있습니다. 명령을 이미 실행한 경우 ADD 추가한 패키지를 활성화하거나 다시 시작하려면 패키지를 정리해야 합니다. 부팅 명령문을 비활성 패키지로 변경하지 마십시오.

요약

설치로 이동하려면 먼저 부팅 명령문을 package.conf로 변경한 다음 .bin 파일을 추가해야 합니다. 즉, TFTP 또는 USB에서 새 .bin 파일을 bootflash에 복사해야 합니다. 공간이 부족하여 스위치에 파일을 복사하는 데 문제가 있는 경우, 필요하지 않은 파일을 지우려면 이 문서의 정리 섹션을 참조하십시오.

이러한 명령은 업그레이드를 완료하므로 다른 단계를 수행할 필요가 없습니다. 하지만 한 단계로 업그레이드를 완료하지 않으려는 경우에는 개별 단계로 업그레이드를 나누어 진행할 수 있습니다.

configure terminal

no boot system

boot system bootflash:packages.conf

end

write

install add file bootflash:

activate commit

Install Add

- 업그레이드를 처음 시작할 때는 현재 버전만 있습니다.

Switch#show install summary

[ R0 R1 ] Installed Package(s) Information:

State (St): I - Inactive, U - Activated & Uncommitted,

C - Activated & Committed, D - Deactivated & Uncommitted

--------------------------------------------------------------------------------

Type  St   Filename/Version

--------------------------------------------------------------------------------

IMG   C    16.11.1.0.312

--------------------------------------------------------------------------------

Auto abort timer: inactive

--------------------------------------------------------------------------------

시작하려면 작업할 버전 목록에 새 버전을 추가해야 합니다.

install add file bootflash:cat9k_iosxe.16.12.01.SPA.bin

추가되면 플래시에서 .pkg 파일을 볼 수 있으며 16.12.01이 비활성 버전으로 나열됩니다.

Switch#dir | include .pkg

359097 -rw- 11359240 Sep 13 2019 16:10:08 +00:00 cat9k-cc_srdriver.16.11.01.SPA.pkg

359098 -rw- 84354052 Sep 13 2019 16:10:08 +00:00 cat9k-espbase.16.11.01.SPA.pkg

359099 -rw- 1676292 Sep 13 2019 16:10:08 +00:00 cat9k-guestshell.16.11.01.SPA.pkg

359100 -rw- 466576384 Sep 13 2019 16:10:08 +00:00 cat9k-rpbase.16.11.01.SPA.pkg

359106 -rw- 38552418 Sep 13 2019 16:10:30 +00:00 cat9k-rpboot.16.11.01.SPA.pkg

359101 -rw- 29877252 Sep 13 2019 16:10:08 +00:00 cat9k-sipbase.16.11.01.SPA.pkg

359102 -rw- 57259008 Sep 13 2019 16:10:08 +00:00 cat9k-sipspa.16.11.01.SPA.pkg

359103 -rw- 19936260 Sep 13 2019 16:10:08 +00:00 cat9k-srdriver.16.11.01.SPA.pkg

359104 -rw- 12321792 Sep 13 2019 16:10:08 +00:00 cat9k-webui.16.11.01.SPA.pkg

359105 -rw- 9216 Sep 13 2019 16:10:08 +00:00 cat9k-wlc.16.11.01.SPA.pkg

456963 -rw- 14222344 Sep 13 2019 17:05:35 +00:00 cat9k-cc_srdriver.16.12.01.SPA.pkg

456964 -rw- 88892420 Sep 13 2019 17:05:35 +00:00 cat9k-espbase.16.12.01.SPA.pkg

473282 -rw- 1684484 Sep 13 2019 17:05:35 +00:00 cat9k-guestshell.16.12.01.SPA.pkg

473283 -rw- 535475200 Sep 13 2019 17:05:35 +00:00 cat9k-rpbase.16.12.01.SPA.pkg

473289 -rw- 43111714 Sep 13 2019 17:06:00 +00:00 cat9k-rpboot.16.12.01.SPA.pkg

473284 -rw- 31425540 Sep 13 2019 17:05:35 +00:00 cat9k-sipbase.16.12.01.SPA.pkg

473285 -rw- 60183552 Sep 13 2019 17:05:35 +00:00 cat9k-sipspa.16.12.01.SPA.pkg

473286 -rw- 22676484 Sep 13 2019 17:05:35 +00:00 cat9k-srdriver.16.12.01.SPA.pkg

473287 -rw- 12854272 Sep 13 2019 17:05:35 +00:00 cat9k-webui.16.12.01.SPA.pkg

473288 -rw- 9216 Sep 13 2019 17:05:35 +00:00 cat9k-wlc.16.12.01.SPA.pkg

Switch#show install summary

[ R0 R1 ] Installed Package(s) Information:

State (St): I - Inactive, U - Activated & Uncommitted,

C - Activated & Committed, D - Deactivated & Uncommitted

--------------------------------------------------------------------------------

Type  St   Filename/Version

--------------------------------------------------------------------------------

IMG   I    16.12.1.0.544 <-- Installed but still Inactive (I)

IMG   C    16.11.1.0.312

--------------------------------------------------------------------------------

Auto abort timer: inactive

--------------------------------------------------------------------------------

Switch#show install inactive

[ R0 R1 ] Inactive Package(s) Information:

State (St): I - Inactive, U - Activated & Uncommitted,

C - Activated & Committed, D - Deactivated & Uncommitted

--------------------------------------------------------------------------------

Type  St   Filename/Version

--------------------------------------------------------------------------------

IMG   I    16.12.1.0.544  <-- Installed but still Inactive (I)

Install Activate

- 다시 로드되면 버전이 활성 상태이지만, 커밋되지 않은 것을 확인할 수 있습니다.

다음 단계는 새 버전을 활성화하는 것입니다.

- 이는 SUP를 다시 로드하고 새 버전을 로드하는 것을 의미합니다.

- 그러면 새 .pkg 파일을 가리키도록 .conf 파일이 편집됩니다.

install activate

디바이스를 다시 로드하기 전에 다시 로드할지 확인하는 메시지가 표시됩니다.

This operation may require a reload of the system. Do you want to proceed? [y/n]

Switch#show install sum

[ R0 R1 ] Installed Package(s) Information:

State (St): I - Inactive, U - Activated & Uncommitted,

C - Activated & Committed, D - Deactivated & Uncommitted

--------------------------------------------------------------------------------

Type  St   Filename/Version

--------------------------------------------------------------------------------

IMG   U    16.12.1.0.544

--------------------------------------------------------------------------------

Auto abort timer: active on install_activate, time before rollback - 01:52:08   <--- when this hits zero, the device reloads back to original version.

--------------------------------------------------------------------------------

Switch#show install uncommitted

[ R0 R1 ] Uncommitted Package(s) Information:

State (St): I - Inactive, U - Activated & Uncommitted,

C - Activated & Committed, D - Deactivated & Uncommitted

--------------------------------------------------------------------------------

Type  St   Filename/Version

--------------------------------------------------------------------------------

IMG   U    16.12.1.0.544

Install Commit

롤백 타이머를 중지하고 업그레이드 프로세스를 완료하려면 새 버전을 커밋해야 합니다.

install commit

이는 업그레이드 프로세스의 마지막 단계이며 이제 새 버전이 활성 커밋 버전으로 표시됩니다.

Switch#show install summary

[ R0 R1 ] Installed Package(s) Information:

State (St): I - Inactive, U - Activated & Uncommitted,

C - Activated & Committed, D - Deactivated & Uncommitted

--------------------------------------------------------------------------------

Type  St   Filename/Version

--------------------------------------------------------------------------------

IMG   C    16.12.1.0.544  <--- Now Active and Committed

--------------------------------------------------------------------------------

Auto abort timer: inactive

--------------------------------------------------------------------------------

Install Abort

명령을 실행한 후 activate 커밋하기 전에 새 버전에 문제가 있다고 판단하면 업그레이드를 중단할 수 있습니다. 이로 인해 디바이스가 다시 이전 버전으로 로드됩니다.

install abort

Prompt Level

install 명령의 끝에서 prompt-level을 none으로 설정할 수 있으며, 질문에 대해 yes/no를 묻지 않습니다(일반적으로 업그레이드의 commit 명령 끝에서 다시 로드할지 여부를 묻습니다). 를 (으)prompt-level로 none설정하면 준비된 즉시 스위치가 다시 로드됩니다.

install add file bootflash:cat9k_iosxe.16.12.01.SPA.bin activate commit prompt-level none

자동 업그레이드 타이머

업그레이드에 시간이 너무 오래 걸리면 스위치에서 문제가 발생한 것으로 간주하고 업그레이드를 중단합니다. 기본 타이머는 120분이지만 필요한 경우 수동으로 타이머를 중지할 수 있습니다.

install auto-abort-timer stop

활성화 단계를 수행할 때 롤백 타이머를 설정할 수 있습니다.

Switch#install activate auto-abort-timer ?

<30-1200>  Number of minutes the abort-timer is set for

번들 모드

이 섹션에서는 .bin 파일을 가리키는 부팅 명령문을 사용하여 소프트웨어를 업그레이드하는 기존 방법을 설명합니다(.pkg 파일과 비교).

경고: 스위치를 번들 모드로 업그레이드하려면 스택의 모든 스위치에 .bin을 복사해야 합니다.

Cisco IOS 파일을 로드한 후에는 부팅 명령문을 변경하고 다시 로드하기만 하면 됩니다.

configure terminal

no boot system

boot system bootflash:

end

write

reload

레거시 방법

주의: 이 방법은 9300 및 9500 스위치에만 적용됩니다

이 섹션에서는 request platform 명령 사용에 대해 설명하며 9500 및 9300에서 지원됩니다.

- 이 방법은 9300 또는 9500에서 권장되지 않습니다. 앞서 언급한 방법 중 하나를 사용하십시오.

- 이러한 명령은 16.10.1부터 더 이상 사용되지 않으며 install 명령을 사용하는 것이 좋습니다.

- 가장 중요한 세 가지 명령이 여기에 나와 있습니다(더 많은 옵션이 있지만 이러한 명령 install commands 대신 를 사용하는 것이 좋습니다).

Expand

이 명령은 지정한 .bin 파일을 가져와서 .pkg 파일을 추출합니다.

request platform software package expand switch all file flash:cat9k_iosxe.16.09.02.SPA.bin

참고: 스위치에서 번들 모드를 사용하는 경우. 먼저 expand 명령을 실행한 다음 부팅 명령문을 package.conf로 변경하고 다시 로드하여 설치 모드로 설정합니다.

Install

이미 설치 모드인 경우 이 명령을 사용하여 다른 버전으로 이동합니다.

request platform software package install switch all file flash:test auto-copy new

Clean

다음 명령은 install remove inactive와 동일한 작업을 수행합니다.

request platform software package clean

Stackwise 가상

Dual-Sup

Stackwise Virtual은 Dual SUP 설정과 매우 유사합니다. 일반 업그레이드를 수행하는 경우 두 섀시가 동시에 재부팅됩니다.

configure terminal

no boot system

boot sys bootflash:packages.conf

end

write

install add file bootflash:

activate commit

참고: ISSU를 수행하려면 단일 섀시에서 듀얼 슈퍼바이저 설정과 비교하여 stackwise 가상 를 고려해야 합니다.

- 각 섀시는 ISSU 프로세스 중에 한 번만 다시 로드되므로, 하나의 섀시에만 연결된 디바이스는 전체 재부팅 사이클 동안 중단됩니다.

- 이러한 상황을 방지하려면 모든 연결에 듀얼 홈 MEC를 사용하는 것이 좋습니다. ISSU에 대한 자세한 내용은 ISSU 섹션을 참조하십시오.

설치 롤백 모드

업그레이드를 완료하면 필요한 경우 이전 버전으로 롤백할 수 있습니다. 파일이 계속 플래시에 있는 경우 여러 버전으로 롤백할 수 있습니다.

Switch#show install rollback

ID      Label          Description

-----------------------------------------------

2    No Label        No Description

1    No Label        No Description

Switch#show install rollback id 1

Rollback id - 1 (Created on Fri Sep 13 13:14:40 2019)

Label: No Label

Description: No Description

Reload required: NO

State (St): I - Inactive, U - Activated & Uncommitted,

C - Activated & Committed, D - Deactivated & Uncommitted

--------------------------------------------------------------------------------

Type  St   Filename/Version

--------------------------------------------------------------------------------

IMG   C    16.11.1.0.312

이전 출력에는 2개의 롤백 포인트가 있습니다. 첫 번째 롤백은 16.11.01로 롤백합니다(설명 또는 날짜를 입력하려는 경우 롤백 포인트 레이블 지정).

Switch#install label 1 ?

description  Add a description to specified install point

label-name   Add a label name to specified install point

Switch#install label 1 label-name 16_11_01

install_add_label: START Fri Sep 13 16:43:48 UTC 2019

--- Starting install_add_label ---

Performing install_add_label on Active/Standby

[R0] install_add_label package(s) on R0

[R0] Finished install_add_label on R0

[R1] install_add_label package(s) on R1

[R1] Finished install_add_label on R1

Checking status of install_add_label on [R0 R1]

install_add_label: Passed on [R0 R1]

Finished install_add_label

SUCCESS: install_add_label  Fri Sep 13 16:43:57 UTC 2019

Switch#show install rollback

ID      Label          Description

-----------------------------------------------

2    No Label        No Description

1    16_11_01        No Description

롤백을 수행하려면 다음 명령만 실행하면 rollback 됩니다.

install rollback to id 1

Quad-Sup

이 문서 작성 시점에는 지원되지 않습니다. 17.2.1에서 지원될 예정입니다.

ISSU

이전 업그레이드 방법에서는 단일 SUP의 업그레이드 또는 두 SUP의 동시 업그레이드에 대해 설명합니다. 하지만 듀얼 SUP를 사용하면 ISSU(In Service Software Upgrade)를 통해 한 번에 하나의 SUP만 업그레이드할 수 있으므로 중단이 거의 또는 전혀 발생하지 않습니다.

참고: 9300 xFSU에 대한 자세한 내용은 Catalyst 9300 시리즈 스위치의 Extended Fast Software Upgrade 이해하기 문서를 참조하십시오.

주의: 여기에 나와 있는 명령을 실행하면 프로세스가 자동으로 시작되고 SUP를 다시 로드합니다. SUP가 재부팅을 시작할 준비가 될 때까지 명령을 실행하지 마십시오. 일반 업그레이드 프로세스와는 달리 다시 로드하기 전에 확인을 요청하지 않습니다.

install add file bootflash:cat9k_iosxe.16.11.01.SPA.bin activate issu commit

- 이 명령을 실행하면 ISSU 프로세스가 파일을 추출하고 대기 SUP를 다시 로드한 다음 SSO로 다시 돌아올 때까지 기다렸다가 페일오버에서 활성을 다시 로드합니다.

- ISSU는 설치 모드에서만 지원됩니다. 활성 수퍼바이저가 번들에 있는 경우 ISSU 프로세스를 수행할 수 없습니다.

- 9200 및 9300은 ISSU를 지원하지 않습니다. 9300은 reloadfast를 지원합니다.

업그레이드 옵션

ReloadFast

- ReloadFast는 다운타임을 최소화하기 위해 데이터 플레인이 오프라인 상태가 되기 전에 가능한 많은 업그레이드를 완료하는 기능입니다. reloadfast를 사용하는 경우 스택의 모든 스위치가 동시에 다시 로드됩니다. 하지만 대체로 일반 설치보다 훨씬 빠르게 재부팅됩니다.

- 단일 스위치에서도 reloadfast를 수행할 수 있습니다!

- 이 기능은 버전 16.8.1 이상에서 지원됩니다. 설치 모드에서만 지원됩니다.

- 빠른 다시 로드 도중 발생할 수 있는 루프를 방지하기 위해 STP 루트에 대한 단일 업링크가 있는 스위치에서만 지원됩니다. port-channel은 단일 업링크로 계산됩니다.

- 업그레이드에 마이크로 코드 또는 FPGA 업그레이드가 필요한 경우에도 지원되지 않습니다.

- C9300은 앞서 언급한 이유 중 하나로 수행할 수 없는 경우를 제외하고 항상 기본적으로 reloadfast 업그레이드를 시도합니다. 하지만 이 명령을 사용하여 명시적으로 요청할 수 있습니다.

install add file flash:cat9k_iosxe.16.10.01.SPA.bin activate reloadfast commit

Cleanup

업그레이드가 완료되면 모든 비활성 파일을 제거하여 필요하지 않은 모든 파일을 정리할 수 있습니다. 현재 로드된 .pkg 파일을 확인하고 나머지는 모두 제거합니다. 삭제하기 전에 삭제할 계획인 모든 파일을 검토할 수 있습니다.

install remove inactive

참고: 이렇게 하면 모든 .bin 파일이 제거되므로 업그레이드를 수행하기 전에 정리하려는 경우 새 .bin 파일에 복사하기 전에 정리를 수행해야 합니다.

문제 해결

V-Mismatch

스위치에서 실행 중인 소프트웨어와 활성 소프트웨어가 다른 경우 V-mismatch가 발생합니다. 설치 모드인 경우 자동 업그레이드로 이 문제를 해결할 수 있습니다. 번들 모드인 경우에는 해결하기가 약간 까다롭습니다.

Switch#show switch

Switch/Stack Mac Address : f8b7.e206.4900 - Local Mac Address

Mac persistency wait time: Indefinite

H/W   Current

Switch#   Role    Mac Address     Priority Version  State

-------------------------------------------------------------------------------------

1       Member   701f.5300.fa00     15     V01     V-Mismatch  <---Indicates a version mismatch

*2       Active   f8b7.e206.4900     14     V01     Ready

옵션 1

- 불일치 스위치를 스택에서 제거하고 올바른 버전으로 업그레이드한 다음 다시 스택에 추가합니다.

옵션 2

- 불일치 스위치에서는 부팅 명령문을 변경할 수 없습니다. 하지만 콘솔에 액세스할 수 있고 스위치 Rommon에 액세스할 수 있는 경우 올바른 버전으로 수동 부팅할 수 있습니다.

주의: 이 작업을 시도하기 전에 스위치에 대한 콘솔 액세스 권한이 있는지 확인하고, 스위치를 복구할 수 있는지 확인하십시오.

옵션 2의 단계

1. 스위치를 스태킹하고 부팅하여 상태로 V-Mismatch둡니다.

2. 이 스위치에서 원하지 않는 오래된 이미지를 삭제합니다(플래시: 불일치하는 경우에도 파일 시스템에 액세스할 수 있음).

3. 플래시할 새 .bin 파일을 복사합니다.

4. 이 스위치의 전원을 껐다가 켭니다(이미지가 삭제되고 스위치가 Rommon에 드롭되므로 부팅되지 않음).

5. (콘솔에서) 플래시에 복사한 새 이미지를 수동으로 부팅합니다.

6. 올바른 이미지로 부팅되면 활성에서 설정이 동기화됩니다.

Switch#dir ?

/all             List all files

/recursive       List files recursively

all-filesystems  List files on all filesystems

cns:             Directory or file name

crashinfo-1:     Directory or file name

crashinfo-2:     Directory or file name

crashinfo:       Directory or file name

flash-1:         Directory or file name   <----Flash for switch #1

flash-2:         Directory or file name   <----Flash for switch #2

flash:           Directory or file name

Rommon에서 이 명령을 사용합니다.

switch:  boot flash:cat9k_iosxe.16.12.01.SPA.bin <-- Image you copied that Active is running

옵션 3

- 처음 두 옵션은 일반적으로 스택을 중단할 필요 없이 불일치 스위치를 복구할 수 있습니다.

- 하지만 새 구축이거나 전체 스택을 다시 로드할 수 있는 경우, 불일치 스위치에서 나머지 스위치로 파일을 복사하고 나머지 스위치가 새 스위치와 일치하도록 하는 옵션이 있습니다.

- 이 옵션은 새 구축이고 물리적 액세스가 없는 경우 유용할 수 있습니다. 텔넷에서 이 모든 작업을 수행할 수 있기 때문입니다.

- 동기화가 되면 모든 버전을 올바른 버전으로 업그레이드할 수 있습니다.

Rommon에서 복구

유효한 이미지가 없는 Rommon에서 중단된 경우 USB를 통해 스위치에 파일을 복사하거나 TFTP를 통해 파일을 복사할 수 있습니다.

옵션 1

다음 명령을 사용하여 USB 스틱에서 바로 부팅합니다.

boot usbflash0:cat9k_iosxe.16.12.01.SPA.bin

옵션 2

TFTP 서버에서 복사하는 것이 좀 더 까다롭습니다. 노트북 컴퓨터를 TFTP 서버로 설정하고 이더넷 케이블을 디바이스의 관리 포트에 연결하거나, 디바이스의 관리 포트를 작동 중인 디바이스의 네트워크 포트에 연결해야 합니다. 그런 다음 이미지가 포함된 디바이스를 TFTP 서버로 설정합니다.

tftp-server flash:cat9k_iosxe.16.12.01.SPA.bin

TFTP 서버로서의 Cisco IOS 디바이스는 Windows 방화벽 또는 컴퓨터 계정 권한 문제에 대해 걱정할 필요가 없습니다. TFTP 서버를 설정하면 Rommon에서 이를 설정해야 합니다.

DEFAULT_GATEWAY=172.27.74.1

IP_ADDRESS=172.27.74.111

IP_SUBNET_MASK=255.255.255.0

TFTP_SERVER=172.19.64.31

TFTP 서버에 ping하여 설정을 테스트합니다.

ping 172.19.64.31

연결이 설정되면 TFTP의 파일로 바로 부팅합니다.

boot tftp://172.19.64.31/cat9k_iosxe.16.12.01.SPA.bin

참고: Rommon 복구에 대한 자세한 내용은 recover_from_corrupt_or_missing_file_image_or_in_rommon_mode 링크를 참조하십시오.

BIN 파일이 구성원에게 없음

.bin 파일이 스택의 모든 멤버 디바이스에 표시되는지 확인합니다.

1단계:

show file system이 있는 스택에서 사용되는 명명 규칙을 확인합니다.

Switch#show file systems

File Systems:

Size(b)       Free(b)      Type  Flags  Prefixes

-             -    opaque     rw   system:

-             -    opaque     rw   tmpsys:

*  11250098176    6275858432      disk     rw   bootflash: flash:         <- Name of Active Switch

11250171904    4123000832      disk     rw   bootflash-2:              <- Name of Standby Switch

1651314688    1344073728      disk     rw   crashinfo:

1651507200    1180696576      disk     rw   crashinfo-2:

236092686336  224026628096      disk     rw   disk0:

8166649856    8053047296      disk     ro   webui:

-             -    opaque     rw   null:

-             -    opaque     ro   tar:

-             -   network     rw   tftp:

33554432      33494025     nvram     rw   nvram:

-             -   network     rw   rcp:

-             -   network     rw   http:

-             -   network     rw   ftp:

-             -   network     rw   scp:

-             -   network     rw   sftp:

-             -   network     rw   https:

-             -    opaque     ro   cns:

33554432      33507337     nvram     rw   stby-nvram:

-             -     nvram     rw   stby-rcsf:

11250098176    4122718208      disk     rw   stby-bootflash:

1651314688    1180504064      disk     rw   stby-crashinfo:

-             -    opaque     rw   revrcsf:

참고: 파일 공간이 충분하지 않다는 오류가 발생하는 경우 show file systems는 사용 가능한 크기 및 여유 공간을 나타냅니다.

2단계:

.bin 파일에 대해 각 디렉토리를 개별적으로 확인합니다.

Switch#dir bootflash: | i .bin

81126   -rw-       1265422219  Jun 19 2023 03:04:30 +00:00  cat9k_iosxe.17.11.01.SPA.bin              <- The Active has 17.11.01.SPA.bin

194733  -rw-       1027574083  Jun 13 2023 01:33:41 +00:00  cat9k_iosxe.17.06.05.SPA.bin

Switch#dir bootflash-2: | i .bin

210971  -rw-       1027574083  Jun 29 2023 22:19:23 +00:00  cat9k_iosxe.17.06.05.SPA.bin              <- The Standby does not have 17.11.01.SPA.bin

참고: 설치 모드의 디바이스에서는 install add 명령이 커밋될 때까지 활성에 .bin 파일만 있어야 합니다. 문제가 발견되면 3단계로 진행합니다.

3단계:

수동 개입이 필요한 경우 .bin 파일을 Active에서 Member/Standby로 복사하는 두 가지 옵션이 있습니다.

옵션 1

다음과 같이 .bin 파일을 Member/Standby에 직접 복사합니다.

Switch#copy bootflash:cat9k_iosxe.17.11.01.SPA.bin bootflash-2:

옵션 2

.bin을 USB에 복사합니다(직접 복사가 불가능한 경우).

Switch#copy bootflash:cat9k_iosxe.17.11.01.SPA.bin usbflash0:

주의: USB는 FAT32용으로 포맷되어야 하며 스위치가 show file system을 사용하여 읽는지 확인합니다.

USB에 복사되면 대기/멤버에 삽입합니다.

Switch#copy usbflash0:cat9k_iosxe.17.11.01.SPA.bin bootflash-2:

4단계:

.bin 파일이 모든 장치에 있는지 확인합니다.

Switch#dir flash: | i .bin

81126   -rw-       1265422219  Jun 19 2023 03:04:30 +00:00  cat9k_iosxe.17.11.01.SPA.bin           <- The Active has 17.11.01.SPA.bin

194733  -rw-       1027574083  Jun 13 2023 01:33:41 +00:00  cat9k_iosxe.17.06.05.SPA.bin

Switch#dir bootflash-2: | i .bin

210971  -rw-       1027574083  Jun 29 2023 22:19:23 +00:00  cat9k_iosxe.17.06.05.SPA.bin

210974  -rw-       1265422219  Jun 20 2023 03:32:23 +00:00  cat9k_iosxe.17.11.01.SPA.bin           <- The Standby now has 17.11.01.SPA.bin

슈퍼 패키지가 이미 설치됨

전체 설치 추가 파일 flash:name activate commit(슈퍼 패키지가 이미 추가되어 있음)을 실행하려고 할 때 오류 출력이 발생하는 경우, 이는 패키지가 이미 비활성 상태로 채워져 있고 활성화 및 커밋을 대기 중임을 의미합니다.

Switch#install add file flash:cat9k_iosxe.17.11.01.SPA.bin activate commit

install_add_activate_commit: START Wed Jul 26 12:36:58 UTC 2023

*Jul 26 12:36:58.491: %INSTALL-5-INSTALL_START_INFO: R0/0: install_engine: Started install one-shot bootflash:cat9k_iosxe.17.11.01.SPA.bininstall_add_activate_commit: Adding PACKAGE

install_add_activate_commit: Checking whether new add is allowed ....

FAILED: install_add_activate_commit : Super package already added. Add operation not allowed. 'install remove inactive' can be used to discard added packages

show install summary 명령을 실행하여 이 상태를 확인할 수 있습니다

Switch#show install summary

[ 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.06.05.0.5797

IMG   I    17.11.01.0.1324                                                          <- Here it is seen as Inactive

--------------------------------------------------------------------------------

Auto abort timer: inactive

--------------------------------------------------------------------------------

이 문제를 해결하기 위해 두 가지 옵션을 사용할 수 있습니다

옵션 1

추가된 패키지를 지우려면 install remove inactive 명령을 수행합니다

Switch#install remove inactive

install_remove: START Wed Jul 26 13:42:14 UTC 2023

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 ...

cat9k-cc_srdriver.16.09.03.SPA.pkg

File is in use, will not delete.

cat9k-espbase.16.09.03.SPA.pkg

File is in use, will not delete.

<...snip...>

The following files will be deleted:

[R0]:

/bootflash/cat9k-cc_srdriver.17.06.05.SPA.pkg

/bootflash/cat9k-cc_srdriver.17.11.01.SPA.pkg

/bootflash/cat9k-espbase.17.06.05.SPA.pkg

/bootflash/cat9k-espbase.17.11.01.SPA.pkg

<...snip...>

Do you want to remove the above files? [y/n]y

[R0]:

Deleting file bootflash:cat9k-cc_srdriver.17.06.05.SPA.pkg ... done.

Deleting file bootflash:cat9k-cc_srdriver.17.11.01.SPA.pkg ... done.

Deleting file bootflash:cat9k-espbase.17.06.05.SPA.pkg ... done.

Deleting file bootflash:cat9k-espbase.17.11.01.SPA.pkg ... done.

<...snip...>

SUCCESS: Files deleted.

--- Starting Post_Remove_Cleanup ---

Performing Post_Remove_Cleanup on Active/Standby

[R0] Post_Remove_Cleanup package(s) on R0

[R0] Finished Post_Remove_Cleanup on R0

Checking status of Post_Remove_Cleanup on [R0]

Post_Remove_Cleanup: Passed on [R0]

Finished Post_Remove_Cleanup

옵션 2

설치 제거 비활성 문제가 해결되지 않으면 설치 상태 지우기

주의: 디바이스를 다시 로드해야 합니다.

Switch(config)#service internal                                        <- Service internal is required to be turned on for clear install state to work

Switch(config)#exit

Switch#clear install state

clear_install_state: START Wed Jul 26 12:25:09 UTC 2023

This command will remove all the provisioned SMUs, and rollback points. Use this command with caution.

A reload is required for this process. Press y to continue [y/n]y

--- Starting clear_install_state ---

Performing clear_install_state on Active/Standby

[1] clear_install_state package(s) on R0

[1] Finished clear_install_state on R0

Checking status of clear_install_state on [R0]

clear_install_state: Passed on [R0]

Finished clear_install_state

Send model notification for  before reload

Install will reload the system now!

옵션 1과 2를 모두 확인하려면 show install summary 명령을 사용하여 비활성 이미지가 더 이상 없는지 확인합니다.

Switch#show install summary

[ 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.06.05.0.5797                                                           <- 17.11.01 is no longer seen

--------------------------------------------------------------------------------

Auto abort timer: inactive

--------------------------------------------------------------------------------

전체 설치 파일 flash:name activate commit를 문제 없이 계속 실행합니다.

잘못된 부팅 변수

이 섹션에서는 업그레이드를 수행할 때 잘못된 부트 변수가 설정되어 있는 경우에 나타나는 문제를 다룹니다.

시나리오 1

- Boot 변수는 bootflash:packages.conf로 설정됩니다

- 어떤 이유로든 스위치는 설치 추가 파일 flash:name activate commit이 발생하기 전에 다시 로드됩니다

- 이로 인해 다른 packages.conf 파일이 손상되거나 비어 있으며 스위치에서 부팅 매개변수를 찾을 수 없습니다

Switch#show boot

BOOT variable = bootflash:packages.conf;

MANUAL_BOOT variable = no

스위치가 재부팅되거나 다시 로드될 때 오류가 표시됩니다

Preparing to autoboot. [Press Ctrl-C to interrupt]  0

boot: attempting to boot from [bootflash:packages.conf]

ERROR: failed to boot from bootflash:packages.conf (Not Found)

Please wait while the system restarts.

Initializing Hardware......

- 스위치/수퍼바이저의 모드 버튼을 물리적으로 누르거나(CTRL-C) ROMMON을 중단합니다.

- set 명령 실행

- BOOT=의 변수 확인

switch:set

BAUD=9600

BOOT=bootflash:packages.conf;

BOOTLDR=packages.conf

BSI=0

<snip>

원하는 IOS로 부팅하는 옵션에는 2가지가 있습니다

참고: 원하는 경우 이전 ios bin 파일로 부팅할 수도 있습니다

옵션 1

새 ios 버전을 사용하여 새 부팅 문 설정

switch:BOOT=cat9k_iosxe.17.09.03.SPA.bin

BOOT 문이 업데이트되었는지 확인합니다.

switch:set

BAUD=9600

BOOT=bootflash:cat9k_iosxe.17.09.03.SPA.bin                                        <-Boot statement successfully updated

BOOTLDR=packages.conf

BSI=0

<snip>

옵션 2

스위치가 ios로 로드될 때까지 변수를 변경하지 않고 즉시 부팅

switch:boot bootflash:cat9k_iosxe.17.09.03.SPA.bin

참고: 플래시에 어떤 .bin 파일이 있는지 확실하지 않으면 dir flash: 파일 목록에 대해 실행합니다.

시나리오 2

install add file flash:name activate commit 명령이 실행되지만 boot 변수는 packages.conf 대신 .bin 파일로 설정됩니다

Switch#show boot

Current Boot Variables:

BOOT variable = flash:cat9k_iosxe_npe.17.03.03.SPA.bin;

Boot Variables on next reload:

BOOT variable = flash:cat9k_iosxe_npe.17.03.03.SPA.bin;

Manual Boot = no

Enable Break = yes

Boot Mode = DEVICE

iPXE Timeout = 0

Switch#install add file flash:cat9k_iosxe.17.09.03.SPA.bin activate commit

install_add_activate_commit: START Tue Sep 12 15:01:12 UTC 2023

install_add_activate_commit: Adding PACKAGE

install_add_activate_commit: Checking whether new add is allowed ....

This operation requires a reload of the system. Do you want to proceed?

Please confirm you have changed boot config to flash:packages.conf [y/n]y

--- Starting initial file syncing ---

Info: Finished copying flash:cat9k_iosxe.17.09.03.SPA.bin to the selected switch(es)

Finished initial file syncing

<snip>

다시 로드할 때 17.9.3이 포함된 packages.conf 대신 17.3.3.SPA.bin으로 스위치가 로드되는 동안 출력을 볼 수 있습니다.

Initializing Hardware......

System Bootstrap, Version 17.9.2r, RELEASE SOFTWARE (P)

Compiled Wed 11/23/2022 12:30:48.96 by rel

Current ROMMON image : Primary

Last reset cause     : CpuReset

C9500-12Q platform with 16777216 Kbytes of main memory

Preparing to autoboot. [Press Ctrl-C to interrupt]  0

boot: attempting to boot from [flash:cat9k_iosxe_npe.17.03.03.SPA.bin]

boot: reading file cat9k_iosxe_npe.17.03.03.SPA.bin

스위치가 부팅되면 packages.conf가 17.9.3으로 올바르게 업데이트되었는지 확인합니다.

Switch#more flash:packages.conf

boot   rp 0 0   rp_boot cat9k-rpboot.17.09.03.SPA.pkg

boot   rp 1 0   rp_boot cat9k-rpboot.17.09.03.SPA.pkg

iso   rp 0 0   rp_base cat9k-rpbase.17.09.03.SPA.pkg

iso   rp 1 0   rp_base cat9k-rpbase.17.09.03.SPA.pkg                                                       <-All .pkg set to 17.9.3 correctly

iso   rp 0 0   rp_daemons cat9k-rpbase.17.09.03.SPA.pkg

iso   rp 1 0   rp_daemons cat9k-rpbase.17.09.03.SPA.pkg

iso   rp 0 0   rp_iosd cat9k-rpbase.17.09.03.SPA.pkg

iso   rp 1 0   rp_iosd cat9k-rpbase.17.09.03.SPA.pkg

iso   rp 0 0   rp_security cat9k-rpbase.17.09.03.SPA.pkg

iso   rp 1 0   rp_security cat9k-rpbase.17.09.03.SPA.pkg

iso   rp 0 0   rp_wlc cat9k-wlc.17.09.03.SPA.pkg

iso   rp 1 0   rp_wlc cat9k-wlc.17.09.03.SPA.pkg

iso   rp 0 0   rp_webui cat9k-webui.17.09.03.SPA.pkg

iso   rp 1 0   rp_webui cat9k-webui.17.09.03.SPA.pkg

<snip>

boot 변수를 flash:packages.conf로 변경합니다.

Switch(config)#no boot system

Switch(config)#boot system flash:packages.conf

Switch(config)#do wr                                                                  <- Configuration must be saved for boot variable to be updated properly before reloading

Switch#show boot

Current Boot Variables:

BOOT variable = flash:packages.conf;

Boot Variables on next reload:

BOOT variable = flash:packages.conf;

Manual Boot = no

Enable Break = yes

Boot Mode = DEVICE

iPXE Timeout = 0

스위치를 다시 로드하여 설치 모드 및 올바른 ios 이미지 17.9.3에 배치합니다.

Switch#reload

Initializing Hardware......

System Bootstrap, Version 17.9.2r, RELEASE SOFTWARE (P)

Compiled Wed 11/23/2022 12:30:48.96 by rel

Current ROMMON image : Primary

Last reset cause     : CpuReset

C9500-12Q platform with 16777216 Kbytes of main memory

Preparing to autoboot. [Press Ctrl-C to interrupt]  0

boot: attempting to boot from [flash:packages.conf]                                           <-Boot variable correctly loading from packages.conf instead of .bin file

boot: reading file packages.conf

<snip>

스위치를 로드한 후 버전 확인

Switch#show version

Cisco IOS XE Software, Version 17.09.03

Cisco IOS Software [Cupertino], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.9.3, RELEASE SOFTWARE (fc6)

관련 정보

Catalyst 3850, Catalyst 9000 시리즈 스위치의 ISSU(In-Service Software Upgrade)

Cisco 버그 ID

Cisco 버그 ID CSCvr29736 - Doc 버그: 9600에서 reloadfast를 수행할 수 없음

Cisco 버그 ID CSCvr29864 - 개선 사항: 9300에서 install 명령에 reloadfast 추가

Cisco 버그 ID CSCvr29886 - 개선 사항: v-mismatch에서 스위치의 부팅 명령문을 변경할 수 있음

Cisco 버그 ID CSCvr30159 - 개선 사항: install add 명령을 실행할 때 수동 부팅을 위한 검사 추가

Cisco 버그 ID CSCvr30189 - 개선 사항: .bin 파일을 삭제할 필요 없이 "install add"를 실행 취소하는 옵션 추가