8.7 KiB
| title | description | published | date | tags | editor | dateCreated |
|---|---|---|---|---|---|---|
| Voyager SW10GG Upgrade | Cisco ESS 9300 | true | 2026-03-19T15:24:41.320Z | markdown | 2026-03-19T15:24:35.613Z |
Cisco ESS9300 — IOS XE Software Upgrade Guide
Platform Overview
The Cisco Embedded Services 9300 (ESS9300) is a ruggedized, embedded-form-factor switch running Cisco IOS XE. It shares its software lineage with the Catalyst 9300 family and uses the same IOS XE upgrade methodology. Software image files are stored on the system board flash device (flash:). The ESS9300 supports two boot modes:
- Install Mode (recommended) — software is expanded into discrete package files; supports rollback and clean uninstall
- Bundle Mode — the switch boots directly from a monolithic
.binfile
Note: All procedures in this guide use Install Mode. Cisco recommends Install Mode for all IOS XE upgrades on the ESS9300 platform. Verify your current boot mode before proceeding.
1. Pre-Upgrade Checks
Verify Current Software Version and Boot Mode
show version
show boot
Confirm the BOOT variable points to flash:packages.conf (Install Mode). If it shows a .bin filename, you are in Bundle Mode — see the Bundle Mode section at the end of this document before proceeding.
Check Switch Health
show module
show environment all
show logging last 100
Resolve any hardware faults, environmental alarms, or persistent log errors before proceeding.
Check FPGA Version (xFSU Consideration)
If you intend to use Extended Fast Software Upgrade (xFSU) to minimize downtime, check FPGA eligibility:
show xfsu eligibility
Note:
show xfsu eligibilityis available in IOS XE 17.8 and later. All fields must reportYesorEligiblefor xFSU to proceed. If the FPGA is unsupported, a standard install with reload is required first.
Verify Flash Space
IOS XE images for the ESS9300 platform typically require 1–1.5 GB of free flash space. Check available space and remove inactive packages if necessary:
dir flash:
install remove inactive
Backup the Running Configuration
copy running-config startup-config
copy running-config flash:backup-config.txt
2. Obtain the IOS XE Image
- Navigate to https://software.cisco.com and log in. A valid Cisco service contract is required.
- Go to Downloads → Switches → Industrial Ethernet Switches → Embedded Services 9300 Series.
- Select the target IOS XE release. Download the appropriate
cat9k_iosxe.xx.xx.xx.SPA.binimage. - Record the MD5 checksum from the download page for later verification.
Upgrade Path: Confirm that your current IOS XE release and the target release form a supported direct upgrade path. Certain version combinations require an intermediate stepping-stone upgrade. Review the target release notes and the IOS XE Migration Guide for IIoT Switches before proceeding.
3. Transfer the Image to the Switch
Option A — SCP from Windows PC (OpenSSH)
Verify the OpenSSH Server service is running on your PC:
net start sshd
From the switch CLI, pull the image from the Windows PC:
copy scp://YourUsername@<PC-IP>/C:/path/to/<image>.bin flash: vrf management
Tip: Place the image in a short, space-free path such as
C:\ios\to avoid syntax errors.
Option B — TFTP
From the switch CLI:
copy tftp://<TFTP-Server-IP>/<image>.bin flash: vrf management
Option C — USB Drive
Format a USB drive as FAT32 and copy the image to the root. Insert into the switch USB port, then from the CLI:
copy usbflash0:<image>.bin flash:
Verify the USB is recognized:
dir usbflash0:
4. Verify the Image Integrity
Confirm the image is present on flash:
dir flash:
Verify the MD5 checksum against the value from the Cisco download page:
verify /md5 flash:<image>.bin
Do not proceed if the checksum does not match — re-transfer the image.
5. Set the Boot Variable (Install Mode)
Ensure the boot variable is correctly configured before proceeding:
configure terminal
no boot system
boot system flash:packages.conf
end
write memory
Verify:
show boot
The BOOT variable line must read flash:packages.conf.
6. Install and Activate the New Image
Standard Install (Requires Reload)
Run the following command to stage, activate, and commit the new image. The switch will prompt for a reload — respond y to confirm:
install add file flash:<image>.bin activate commit
The process will:
- Expand the
.bininto package files on flash - Activate the new packages
- Prompt for a reload
- Commit the new version as the running baseline on first successful boot
Important: Do not interrupt the process or remove power during installation or reload. The entire operation typically completes within 10–15 minutes.
Extended Fast Software Upgrade — xFSU (Reduced Downtime, IOS XE 17.8+)
If the switch passed the show xfsu eligibility check, xFSU can be used to minimize traffic downtime during the upgrade:
install add file flash:<image>.bin activate xfsu commit
xFSU keeps the data plane forwarding during the control plane reload. Residual traffic loss is typically under 3 minutes. xFSU is not equivalent to ISSU — a brief reload still occurs.
For IOS XE 17.3 and 17.6 (pre-17.8 syntax):
install add file flash:<image>.bin activate reloadfast commit
7. Post-Upgrade Verification
After the switch reloads, confirm the upgrade was successful:
show version
show boot
show module
show environment all
show interface status
show logging last 50
Confirm that:
- The IOS XE version matches the target release
BOOT variablestill showsflash:packages.conf- All modules, interfaces, and environmental readings are normal
- No new faults or errors appear in the system log
8. Clean Up Old Installation Files
Once the upgrade is confirmed stable, remove inactive packages to reclaim flash space:
install remove inactive
Confirm when prompted.
Bundle Mode Upgrade (Alternative)
If the switch is currently running in Bundle Mode (boots from a .bin file), use the following procedure instead of the Install Mode steps above:
configure terminal
no boot system
boot system flash:<new-image>.bin
end
write memory
reload
After reloading, verify with show version. Bundle Mode does not support rollback. Cisco recommends transitioning to Install Mode going forward by setting the boot variable to flash:packages.conf and running install add file flash:<image>.bin activate commit.
ROMMON Upgrade (If Required)
On the first boot of a new IOS XE release, the primary SPI flash ROMMON is upgraded automatically if a newer bootloader version is included in the release. This is expected behavior.
The golden SPI flash ROMMON requires a manual upgrade and is only necessary in specific recovery scenarios:
upgrade rom-monitor capsule golden switch active
The golden ROMMON update takes effect on the next reload. Refer to the release notes to determine whether a ROMMON upgrade is applicable to your target release.
Emergency Recovery
If the switch fails to boot or is stuck at the ROMMON prompt, use the following recovery procedure:
- Connect a terminal to the console port (RJ-45 or USB-mini, 9600 baud / 8N1).
- Connect port Gi1/3 to a PC running a TFTP server with a valid IOS XE image at the TFTP root.
- If the switch is in a boot loop, hold the front-panel button for approximately 5 seconds to break the cycle and stop at the
switch:prompt. - From the ROMMON prompt, configure network parameters and boot the recovery image:
switch: boot emgy0:<image>.SPA.bin
Key Reminders
- Schedule upgrades during a maintenance window. The ESS9300 does not have a redundant supervisor — traffic will be interrupted during the reload unless xFSU is used.
- The boot loader (ROMMON) may be automatically upgraded on the first boot of a new IOS XE release. This is normal and does not indicate a failure.
- Smart Licensing Using Policy (SLUP) is enforced in newer IOS XE releases. Licenses remain in evaluation mode until the device is registered with Cisco Smart Software Manager (CSSM) or a satellite server.
- Starting with IOS XE 17.10, legacy SSH key exchange and MAC algorithms were removed from the default cipher list. If SSH access is disrupted post-upgrade, use the
ip ssh server algorithm kexandip ssh server algorithm maccommands to restore required algorithms. - If the switch uses an FPGA profile (e.g., for PRP or CTS IPv6), review the FPGA profile behavior in the target release notes. Profile configurations may need to be reselected after upgrade before writing to startup-config.