Cisco Nexus 9500 platform switches are generally configured with two supervisor modules to provide high availability (one
active supervisor module and one standby supervisor module). Each supervisor module has its own bootflash file system for
file storage, and the Active and Standby bootflash file systems are generally independent of each other. If there is a need
for specific content on the active bootflash, that same content is probably also needed on the standby bootflash in case there
is a switchover at some point.
Before the Cisco NX-OS 9.2(2) release, you had to manually manage this content between the Active and Standby supervisor modules.
Starting with Cisco NX-OS 9.2(2), certain files and directories on the active supervisor module, or active bootflash (/bootflash), can be automatically synchronized to the standby supervisor module, or standby bootflash (/bootflash_sup-remote), if the standby supervisor module is up and available. You can select the files and directories to be synchronized by loading
Bash on your switch, then adding the files and directories that you would like to have synchronized from the active bootflash
to the standby bootflash into the editable file /bootflash/bootflash_sync_list.
For example:
switch# run bash
bash-4.2# echo "/bootflash/home/admin" | sudo tee --append /bootflash/bootflash_sync_list
bash-4.2# echo "/bootflash/nxos.7.0.3.I7.3.5.bin" | sudo tee --append /bootflash/bootflash_sync_list
bash-4.2# cat /bootflash/bootflash_sync_list
/bootflash/home/admin
/bootflash/nxos.7.0.3.I7.3.5.bin
When changes are made to the files or directories on the active bootflash, these changes are automatically synchronized to
standby bootflash, if the standby bootflash is up and available. If the standby bootflash is rebooted, either as a regular
boot, switchover or manual standby reload, a catch-up synchronization of changes to the active bootflash is pushed out to
the standby bootflash, once the standby supervisor comes online.
Following are the characteristics and restrictions for the editable /bootflash/bootflash_sync_list file:
-
The /bootflash/bootflash_sync_list file is automatically created on the first run and is empty at that initial creation state.
-
Entries in the /bootflash/bootflash_sync_list file follow these guidelines:
-
One entry per line
-
Entries are given as Linux paths (for example, /bootflash/img.bin)
-
Entries must be within the /bootflash file system
-
The /bootflash/bootflash_sync_list file itself is automatically synchronized to the standby bootflash. You can also manually copy the /bootflash/bootflash_sync_list file to or from the supervisor module using the copy virtual shell (VSH) command.
-
You can edit the /bootflash/bootflash_sync_list file directly on the supervisor module with the following command:
run bash vi /bootflash/bootflash_sync_list
All output from the synchronization event is redirected to the log file /var/tmp/bootflash_sync.log. You can view or tail this log file using either of the following commands:
run bash less /var/tmp/bootflash_sync.log
run bash tail -f /var/tmp/bootflash_sync.log
The synchronization script will not delete files from the standby bootflash directories unless it explicitly receives a delete
event for the corresponding file on the active bootflash directories. Sometimes, the standby bootflash might have more used
space than the active bootflash, which results in the standby bootflash running out of space when the active bootflash is
synchronizing to it. To make the standby bootflash an exact mirror of the active bootflash (to delete any extra files on the
standby bootflash), enter the following command:
run bash sudo rsync -a --delete /bootflash/ /bootflash_sup-remote/
The synchronization script should continue to run in the background without crashing or exiting. However, if it does stop
running for some reason, you can manually restart it using the following command:
run bash sudo /isan/etc/rc.d/rc.isan-start/S98bootflash_sync.sh start