Changing Appliance Software

Solace PubSub+ appliances are shipped with preloaded, default software. As future software releases become available, you can save them to an external file server on your network, and later install them on your appliances.

With Solace PubSub+ appliances you can downgrade to earlier software versions installed on them, or rollback to the previous software that was running before the last upgrade was performed.

Displaying Versions

Solace PubSub+ event broker software consists of the following major components:

  • Command Line Interface (CLI)
  • Data Plane
  • Control Plane
  • Management Plane

To determine the version of all components, as well as current and available software loads, and the amount of time the system has been running, enter the following User EXEC CLI command:

solace> show version

Event brokers do not currently support upgrades or patches to an individual event broker software component. So in a properly installed event broker, all of the software components display the same release number.

Upgrading Versions

Procedures for upgrading older versions of software on appliances and software event brokers to the most recent versions are described in their respective sections: Upgrade Procedures for software event brokers, or Upgrade Procedures for appliances.

Downgrading Versions

To change the software version on an appliance to an earlier version than what is currently installed (that is, to downgrade an appliance’s software load to an older version), use the steps presented in the following procedures as appropriate.

These procedures assume that you are moving between currently supported loads.

Downgrading software versions is supported on appliances only. Do not attempt to use these procedures to downgrade a software broker.

  • On downgrade, all spooled Guaranteed messages are lost.
  • The current configuration is not preserved on downgrade. After the appliance restarts, it uses the last configuration saved with the software version you downgrade to.
  • Downgrades that require changing the underlying version of SolBase will not preserve files in the root partition of the appliance’s internal file system. This will affect any Linux services configured on the appliance for applications such as NetProbe or Solace Geneos Agent, and those services must be re-configured after the downgrade.
  • Downgrading or reloading software loads will disrupt service because these operations restart an appliance to activate the old software. It is best to downgrade software at a time when a service disruption is of minimal impact to clients.
  • Downgrading from the remote appliance of a Message VPN bridge will stop Guaranteed messages from being delivered across that VPN bridge. If this occurs, remove the durable message queue configured on that VPN bridge, then add it back again. For example, for a VPN bridge configured with a queue named q/market/orders:

    solace(configure/bridge/remote/message-vpn# message-spool no queue
    solace(configure/bridge/remote/message-vpn)# message-spool queue q/market/orders

Downgrading Standalone and Redundant Appliances

Use the following procedure to downgrade or reload software versions on appliances in either standalone or redundant deployments.

In the examples, both a standalone appliance, and the first appliance in the redundant pair, are referred to as solace1, and the mate appliance in a redundant pair is referred to as solace2. If downgrading or reloading a pair of redundant mates, some of the procedures must be repeated on the second appliance (as indicated).

  1. Verify the current software versions installed and available on the appliance to be downgraded.

    Enter the following User EXEC command in the Solace CLI:

    solace1> show version

    Key things to observe in this display include:

    • the backout load is the software version that was running before the last upgrade was performed
    • the locally available software versions are listed under the “Loads available on the appliance" heading
    • the required SolBase for each load is indicated
  2. Make a local copy of the current software configuration in the /configs subdirectory.

    Enter the following commands:

    solace1> enable
    solace1# copy current-config /configs/<old_version>_preDowngradeCfg

    Where:

    <old_version> is the version number of the software that you are downgrading from.

  3. If the software version that you want to downgrade to is not already installed on the appliance, you must copy that version on to the appliance to be downgraded from an SFTP or SCP server.

    On each appliance, copy the old software from an external file server (using SFTP or SCP) to the /loads subdirectory on the appliance, enter one of the following commands:

    solace1# copy sftp://[<username>@]<ip-addr>/<remote-pathname> /loads
    solace1# copy scp://[<username>@]<ip-addr>/<remote-pathname> /loads

    Where:

    <username> is your SFTP or SCP user name and <ip-addr> and <remote-pathname> point to where the old software is located.

  4. The target load needs the appropriate SolBase (as indicated by the show version command output). Use SFTP or SCP to copy the appropriate SolBase for each load to the appliance.

    Examples:

    solace1# copy sftp://[<username>@]<ip-addr>/<remote-pathname> /loads
    solace1# copy scp://[<username>@]<ip-addr>/<remote-pathname> /loads

    Where:

    <username> is your SFTP or SCP user name and <ip-addr> and <remote-pathname> point to where the SolBase files are located.

  5. If you are using a redundant pair of appliances, shut down redundancy, and enter the following commands.

    solace1> enable
    solace1# configure
    solace1(configure)# redundancy
    solace1(configure/redundancy)# shutdown
    solace1(configure/redundancy)# exit

  6. Shut down the message backbone IP and enter these commands.

    solace1(configure)# service msg-backbone shutdown

  7. Shut down and then reset the message spool.

    solace1(configure)# hardware message-spool
    solace1(configure/hardware/message-spool)# shutdown
    solace1(configure/hardware/message-spool)# end
    solace1# admin
    solace1(admin)# system message-spool
    solace1(admin/system/message-spool)# reset
    solace1(admin/system/message-spool)# end

  8. If you are using a redundant pair of appliances, repeat steps 1 to 7 on the mate appliance (solace2).
  9. Downgrade the software version.

    Enter the following command and answer all prompts that display on screen:

    solace1# boot {<version> | backout}

    Where:

    <version> is the version number of the old software that you are downgrading to.

    backout rolls the software version back to the previous one that was running before the last upgrade was performed.

  10. Reset the message spool after the appliance restarts and the ADB Power Module is in the "OK" state. Use the show hardware details command to verify the ADB Power Module's state. If the state is "Charging", it can take up to 15 minutes to transition to "OK".

    It may be necessary to shut down redundancy or the message spool before resetting the message spool if the last configuration saved by the software version that has been downgraded to had redundancy or the message spool active.

    Enter the following commands:

    solace1> enable
    solace1# admin
    solace1(admin)# system message-spool
    solace1(admin/system/message-spool)# reset
    solace1(admin/system/message-spool)# end

  11. If you are using a redundant pair of appliances, perform the steps 9 and 10 for the mate appliance (solace2).
  12. Re-enable the message spool, as well as redundancy (if you are using redundant appliances), and enter the following commands.

    solace1# configure
    solace1(configure)# no hardware message-spool shutdown primary
    solace1(configure/hardware/message-spool)# end

     

    solace1# configure
    solace1(configure)# redundancy
    solace1(configure/redundancy)# no shutdown
    solace1(configure/redundancy)# end

    You may also need to enable message backbone service on the appliance to restart the messaging services.

  13. If you are using redundant appliances, re-enable the message spool and redundancy for the mate appliance (solace2).

    solace2# configure
    solace2(configure)# no hardware message-spool shutdown backup
    solace2(configure/hardware/message-spool)# end

     

    solace2(configure)# redundancy
    solace2(configure/redundancy)# no shutdown
    solace2(configure/redundancy)# end

    You may also need to enable message backbone service on the appliance to restart the messaging services.

  14. When downgrading a redundant pair of appliances, their configurations may need reconciliation. Use Config-Sync to assert one appliance’s configuration over its mate. For more information, refer to Asserting Event Broker System Configurations.

Downgrading Replication Sites

This procedure provides a simplified overview of the steps required to downgrade software versions used by the event brokers in each Replication site. The exact steps may differ depending on your specific deployment. In this procedure, the Replication sites to be downgraded are referred to as Site 1 and Site 2.

  1. On each event broker, make a local copy of the current software configuration in the /configs subdirectory.

  2. If you are downgrading from software version 7.2.x or higher, the target load needs the appropriate SolBase (as indicated by the show version User EXEC command). Copy the correct SolBase file to the event brokers’ /loads directory.

  3. On Site 2’s primary appliance, switch the Replication configuration state from Active to Standby for each Message VPN that Replication is administratively-enabled.

  4. On Site 2, wait for the Replication queues of the formally active Message VPNs to completely drain.

  5. On Site 1’s primary event broker, switch each Message VPN that is Replication standby to Replication active. Clients are now using Site 1.

  6. On Site 2, do the following:
    • If the appliance is running load 7.1.x or higher, enter the service msg-backbone shutdown Config command.
    • If the appliance is running load lower than 7.1.x, enter the service smf shutdown Config command.
  7. On Site 2’s primary appliance, shutdown Replication on each Message VPN on which it is enabled. This step is required to disable Config-Sync.

  8. On Site 2, disable Config-Sync on every appliance.
  9. On Site 2, on each event broker, enable Replication for each Message VPN that was shut down step in 7.

  10. On Site 2, do the following:
    • If the appliance is running load 7.1.x or higher, enter the no service msg-backbone shutdown Config command.
    • If the appliance is running load lower than 7.1.x, enter the no service smf shutdown Config command.
  11. On Site 2, enable Config-Sync on every appliance that was disabled in step 8.
  12. On Site 1’s primary appliance, switch the Replication configuration state from Active to Standby for each Message VPN that Replication is administratively-enabled.

  13. On Site 1, wait for the Replication queues of the formally active Message VPNs to completely drain.

  14. On Site 2, switch each Message VPN that is Replication standby to Replication active. Clients are now using Site 2.

  15. Downgrade the appliances in Site 1.

    Follow the procedures provided in Downgrading Standalone and Redundant Appliances.

    • You may skip steps 1 through 4 in that downgrade procedure, as you may have already carried them out in this procedure.
    • If you are downgrading a redundant pair of appliances, delay the final step to reconcile their configurations until Replication is Active.

  16. On Site 2, on each appliance, switch each Message VPN that has a Replication of Active to Replication Standby.

  17. On Site 2, wait for the Replication queues of the formally active Message VPNs to completely drain.

  18. On Site 1’s primary appliance, switch each Message VPN that is Replication standby to Replication active. Clients are now using Site 1.

  19. Downgrade the appliances in Site 2.

    Follow the procedures provided in Downgrading Standalone and Redundant Appliances.

    You may skip steps 1 through 4 in that downgrade procedure, as you may have already carried them out in this procedure.

Deleting Versions

To delete any version of the software already installed on an appliance, with the exception of the software identified as either the current or backout load, perform the following steps.

Deleting software versions is only supported on appliances.

  1. To display and determine the current software versions installed and available on the appliance, enter the following User EXEC command:

    solace> show version

    Take note of the version values listed under “Loads available on the appliance” near the bottom.

  2. To delete a software version already installed in the /loads subdirectory on the appliance, enter the following commands:

    solace> enable
    solace#
    solace# delete-load <version>

    Where:

    <version> is the version number of the software to be deleted.