Seamless Upgrade of F5 BIG-IP SSL Orchestrator (SSLO) L3 HA Cluster Without Downtime

Introduction

Upgrading the SSL Orchestrator (SSLO) in a high availability (HA) deployment can be a daunting task. especially in the BFSI sector, where even minimal downtime can impact mission-critical services such as net banking and mobile banking.

While F5’s official knowledge article K64003555 provides detailed steps for SSLO upgrades, it typically involves a 30–45 minute service outage. This may not be acceptable in many production environments.

This article provides a practical, tested method to upgrade SSLO (version 15.x.x and above) in an HA cluster without any service disruption.

 

Step-by-Step: Zero-Downtime Upgrade Procedure

 

1. Convert Full SSLO Topologies to LTM VIPs

SSLO topologies consist of tightly coupled components: virtual servers, access profiles, per-request policies, service chains, inspection services, and iRules. These objects are auto-generated and logically bound. Manual changes or upgrades can cause them to break or behave unpredictably.

To avoid this, the first step is to recreate your SSLO traffic flow using native LTM virtual servers.

Use duplicate IPs (or source IP-based routing) to create new LTM VIPs. Attach the corresponding SSLO access policies, profiles, and iRules to the LTM VIPs manually.

Test traffic flow through these LTM VIPs to ensure they replicate the behavior of your existing SSLO topologies.

Note: In my setup, I used existing VIP IPs by limiting the source address to my own public IP. I then changed source matching rules for controlled traffic diversion during testing.

 

2. Detach SSLO Profiles/Policies from VIPs on the Standby Device

Once the LTM VIPs are functional and validated, detach SSLO-related profiles from them on the standby device before starting the upgrade.

Use the following example command:

modify ltm virtual myapp.example.com \

  per-flow-request-access-policy none \

  profiles delete { sslo_myapp_topology.app/sslo_myapp_topology_accessProfile } \

  rules none

Once detached, the device will act as a standard LTM unit—safe for upgrades without SSLO-related interruptions.

 

3. Upgrade Standby Device to New TMOS Version

Continue to upgrade the standby SSLO device to your desired TMOS version (e.g., from 16.x to 17.x). Follow the standard BIG-IP upgrade process:

🔗 F5 KB: Upgrade Process

⚠️ Important: Do not access SSLO → Configuration in the GUI before both devices are upgraded. This may trigger an SSLO RPM package upgrade prematurely.

 

4. Validate Post-Upgrade Configuration

After the upgrade:

  • Confirm all access policies and profiles are present via Access → Profiles / Policies
  • Verify that the LTM VIPs created earlier are intact and function as expected.

 

5. Re-Attach SSLO Policies and Profiles

Once validation is complete, re-attach the access profiles, policies, and rules to the respective LTM VIPs. You can automate this using TMSH commands, like the example below:

modify ltm virtual myapp.example.com \

  per-flow-request-access-policy ssloP_IDS_IPS_WAF.app/ssloP_IDS_IPS_WAF_per_req_policy \

  profiles add { sslo_appname.app/sslo_appname_accessProfile { } } \

  rules { sslo_appname.app/sslo_appname-min_in_t ssloS_WAF.app/ssloS_WAF-port_remap }

 

6. Failover to the Upgraded Device

Perform a manual failover to the upgraded standby device. Monitor application behavior and test traffic flow thoroughly.

 

7. Repeat for the Second Device

Now, repeat Steps 2–6 for the second (now standby) SSLO device. This will complete the upgrade process for the full HA pair.

 

8. Trigger SSLO GUI Upgrade

Once both devices are upgraded and traffic is tested from both nodes, access SSLO → Configuration via GUI. This will initiate the SSLO RPM package upgrade safely.

 

9. Monitor Upgrade Status

Use the following REST API calls for monitoring upgrade progress and sync status:

restcurl -u admin: shared/gossip | grep status

restcurl -u admin: tm/cm/device

restcurl -u admin: tm/cm/device | jq '.items[] | {devicename: .name, ConfigSyncIP: .configsyncIp, UnicastAddress: .unicastAddress}'

 

References

 

Conclusion

Upgrading a F5 SSLO HA cluster without downtime is possible with proper planning and by converting topologies into LTM-native VIPs. This approach ensures continuous traffic flow and minimizes the risk associated with auto-generated SSLO objects during upgrades.

 

Published Jul 21, 2025
Version 1.0
No CommentsBe the first to comment