Skip to main content
ONTAP MetroCluster

Upgrading or downgrading the firmware on a Cisco FC switch

Contributors netapp-aoife

To upgrade or downgrade the firmware on a Cisco FC switch you must use the Cisco-specific commands to disable the switch, perform and verify the upgrade, and reboot and reenable the switch.

  • The system must be properly cabled.

  • All paths to the storage shelves must be available.

  • The disk shelf stacks must be stable.

  • The FC switch fabric must be healthy.

  • All components in the system must be healthy.

  • The system must be operating normally.

  • You need the admin password and access to an FTP or SCP server.

The switch fabric is disabled during the firmware upgrade or downgrade and the MetroCluster configuration relies on the second fabric to continue operation.

You must repeat this task on each of the switch fabrics in succession to ensure that all switches are running the same firmware version.

You must have the firmware files.

Note This procedure is nondisruptive and takes approximately one hour to complete.
Steps
  1. Log in to each of the switches in the fabric.

    In the examples, the switches are called FC_switch_A_1 and FC_switch_B_1.

  2. Determine whether there is enough space in the bootflash directory on each switch:

    dir bootflash

    If not, delete the unwanted firmware files by using the delete bootflash:file_name command.

  3. Copy the kickstart and system files to the switches:

    copy source_filetarget_file

    In the following example, the kickstart file (m9200-s2ek9-kickstart-mz.5.2.1.bin) and the system file (m9200-s2ek9-mz.5.2.1.bin) are located on the FTP server 10.10.10.55 in the /firmware/ path.

    The following example shows the commands issued on FC_switch_A_1:

    FC_switch_A_1# copy ftp://10.10.10.55/firmware/m9200-s2ek9-kickstart-mz.5.2.1.bin bootflash:m9200-s2ek9-kickstart-mz.5.2.1.bin
    FC_switch_A_1# copy ftp://10.10.10.55/firmware/m9200-s2ek9-mz.5.2.1.bin bootflash:m9200-s2ek9-mz.5.2.1.bin
  4. Disable all of the VSANs on both of the switches in this fabric.

    Use the following procedure to disable the VSANs:

    1. Open the config terminal:

      config t

    2. Enter: vsan database

    3. Check the state of the VSANs:

      show vsan

      All VSANs must be active.

    4. Suspend the VSANs:

      vsan vsan-num suspend

      Example: vsan 10 suspend

    5. Check the state of the VSANs again:

      show vsan
      All VSANs must be suspended.

    6. Exit the config terminal:

      end

    7. Save the configuration.

      copy running-config startup-config

      The following example displays the output for FC_switch_A_1:

      FC_switch_A_1# config t
      Enter configuration commands, one per line.  End with CNTL/Z.
      FC_switch_A_1(config)# vsan database
      FC_switch_A_1(config-vsan-db)# show vsan
      vsan 1 information
               name:VSAN0001  state:active
               interoperability mode:default
               loadbalancing:src-id/dst-id/oxid
               operational state:up
      
      vsan 30 information
               name:MC1_FCVI_2_30  state:active
               interoperability mode:default
               loadbalancing:src-id/dst-id
               operational state:up
      
      vsan 40 information
               name:MC1_STOR_2_40  state:active
               interoperability mode:default
               loadbalancing:src-id/dst-id/oxid
               operational state:up
      
      vsan 70 information
               name:MC2_FCVI_2_70  state:active
               interoperability mode:default
               loadbalancing:src-id/dst-id
               operational state:up
      
      vsan 80 information
               name:MC2_STOR_2_80  state:active
               interoperability mode:default
               loadbalancing:src-id/dst-id/oxid
               operational state:up
      
      vsan 4079:evfp_isolated_vsan
      
      vsan 4094:isolated_vsan
      
      FC_switch_A_1(config-vsan-db)# vsan 1 suspend
      FC_switch_A_1(config-vsan-db)# vsan 30 suspend
      FC_switch_A_1(config-vsan-db)# vsan 40 suspend
      FC_switch_A_1(config-vsan-db)# vsan 70 suspend
      FC_switch_A_1(config-vsan-db)# vsan 80 suspend
      FC_switch_A_1(config-vsan-db)# end
      FC_switch_A_1#
      FC_switch_A_1# show vsan
      vsan 1 information
               name:VSAN0001  state:suspended
               interoperability mode:default
               loadbalancing:src-id/dst-id/oxid
               operational state:down
      
      vsan 30 information
               name:MC1_FCVI_2_30  state:suspended
               interoperability mode:default
               loadbalancing:src-id/dst-id
               operational state:down
      
      vsan 40 information
               name:MC1_STOR_2_40  state:suspended
               interoperability mode:default
               loadbalancing:src-id/dst-id/oxid
               operational state:down
      
      vsan 70 information
               name:MC2_FCVI_2_70  state:suspended
               interoperability mode:default
               loadbalancing:src-id/dst-id
               operational state:down
      
      vsan 80 information
               name:MC2_STOR_2_80  state:suspended
               interoperability mode:default
               loadbalancing:src-id/dst-id/oxid
               operational state:down
      
      vsan 4079:evfp_isolated_vsan
      
      vsan 4094:isolated_vsan
  5. Install the desired firmware on the switches:

    install all system bootflash:systemfile_name kickstart bootflash:kickstartfile_name

    The following example shows the commands issued on FC_switch_A_1:

    FC_switch_A_1# install all system bootflash:m9200-s2ek9-mz.5.2.1.bin kickstart bootflash:m9200-s2ek9-kickstart-mz.5.2.1.bin
    Enter Yes to confirm the installation.
  6. Check the version of the firmware on each switch to make sure the correct version was installed:

    show version

  7. Enable all of the VSANs on both of the switches in this fabric.

    Use the following procedure to enable the VSANs:

    1. Open the config terminal:

      config t

    2. Enter: vsan database

    3. Check the state of the VSANs:

      show vsan

      The VSANs must be suspended.

    4. Activate the VSANs:

      no vsan vsan-num suspend

      Example: no vsan 10 suspend

    5. Check the state of the VSANs again:

      show vsan

      All VSANs must be active.

    6. Exit the config terminal:

      end

    7. Save the configuration:

      copy running-config startup-config

      The following example displays the output for FC_switch_A_1:

      FC_switch_A_1# config t
      Enter configuration commands, one per line.  End with CNTL/Z.
      FC_switch_A_1(config)# vsan database
      FC_switch_A_1(config-vsan-db)# show vsan
      vsan 1 information
               name:VSAN0001  state:suspended
               interoperability mode:default
               loadbalancing:src-id/dst-id/oxid
               operational state:down
      
      vsan 30 information
               name:MC1_FCVI_2_30  state:suspended
               interoperability mode:default
               loadbalancing:src-id/dst-id
               operational state:down
      
      vsan 40 information
               name:MC1_STOR_2_40  state:suspended
               interoperability mode:default
               loadbalancing:src-id/dst-id/oxid
               operational state:down
      
      vsan 70 information
               name:MC2_FCVI_2_70  state:suspended
               interoperability mode:default
               loadbalancing:src-id/dst-id
               operational state:down
      
      vsan 80 information
               name:MC2_STOR_2_80  state:suspended
               interoperability mode:default
               loadbalancing:src-id/dst-id/oxid
               operational state:down
      
      vsan 4079:evfp_isolated_vsan
      
      vsan 4094:isolated_vsan
      
      FC_switch_A_1(config-vsan-db)# no vsan 1 suspend
      FC_switch_A_1(config-vsan-db)# no vsan 30 suspend
      FC_switch_A_1(config-vsan-db)# no vsan 40 suspend
      FC_switch_A_1(config-vsan-db)# no vsan 70 suspend
      FC_switch_A_1(config-vsan-db)# no vsan 80 suspend
      FC_switch_A_1(config-vsan-db)#
      FC_switch_A_1(config-vsan-db)# show vsan
      vsan 1 information
               name:VSAN0001  state:active
               interoperability mode:default
               loadbalancing:src-id/dst-id/oxid
               operational state:up
      
      vsan 30 information
               name:MC1_FCVI_2_30  state:active
               interoperability mode:default
               loadbalancing:src-id/dst-id
               operational state:up
      
      vsan 40 information
               name:MC1_STOR_2_40  state:active
               interoperability mode:default
               loadbalancing:src-id/dst-id/oxid
               operational state:up
      
      vsan 70 information
               name:MC2_FCVI_2_70  state:active
               interoperability mode:default
               loadbalancing:src-id/dst-id
               operational state:up
      
      vsan 80 information
               name:MC2_STOR_2_80  state:active
               interoperability mode:default
               loadbalancing:src-id/dst-id/oxid
               operational state:up
      
      vsan 4079:evfp_isolated_vsan
      
      vsan 4094:isolated_vsan
      
      FC_switch_A_1(config-vsan-db)# end
      FC_switch_A_1#
  8. Verify the operation of the MetroCluster configuration in ONTAP:

    1. Check whether the system is multipathed:

      node run -node node-name sysconfig -a

    2. Check for any health alerts on both clusters:

      system health alert show

    3. Confirm the MetroCluster configuration and that the operational mode is normal:

      metrocluster show

    4. Perform a MetroCluster check:

      metrocluster check run

    5. Display the results of the MetroCluster check:

      metrocluster check show

    6. Check for any health alerts on the switches (if present):

      storage switch show

    7. Run Config Advisor.

    8. After running Config Advisor, review the tool's output and follow the recommendations in the output to address any issues discovered.

  9. Repeat this procedure for the second switch fabric.