You can keep an application available while moving a SLES 15 SP5 cluster to SP6, but you cannot upgrade and reboot a single operating-system instance with literally zero interruption. SUSE supports the SP5-to-SP6 service-pack migration, and the online migration process still requires a system restart. To avoid service downtime, upgrade one node at a time in a supported SUSE Linux Enterprise High Availability (SLE HA) cluster, or build a replacement SP6 environment and move traffic to it. The service must have somewhere healthy to run while each host is unavailable.
This beginner-oriented guide focuses on the rolling-upgrade path for a SLE HA cluster. It also explains what to do if you have only one server, what to check before the change, and how to tell whether the service stayed healthy. The exact commands and order for moving workloads depend on your cluster resources, storage, and application.
What “without system downtime” means
A service-pack migration replaces system packages while the source system is running. SUSE calls this an online migration. It reduces the need to boot from installation media, but the official procedure says to restart the system after a successful migration. Online migration is not the same as a live upgrade that leaves the same host continuously serving requests.
For a clustered service, a rolling upgrade means taking one node out of service, migrating and rebooting it, returning it to the cluster, and then repeating on the next node. The application can remain available from another node if failover works and the remaining capacity is enough. A failover may still cause a short interruption for active sessions, so measure the user-facing service rather than assuming that “high availability” guarantees every connection remains untouched.
SUSE lists SLES 15 SP5 as a supported source for SP6, both online and offline. The supported path is documented in the SLES 15 SP6 upgrade-path guide. SUSE HA documentation supports a cluster rolling upgrade between service packs within the same major release. See the SLE HA cluster upgrade guide.
Choose the right approach before changing anything
- One standalone server: schedule a maintenance window for the host migration and reboot. A load balancer cannot remove downtime if there is no second healthy application instance.
- Two or more SLE HA nodes: consider the documented rolling-upgrade procedure, after verifying quorum, fencing, resource placement, storage access, and spare capacity.
- Application with replicas outside SLE HA: upgrade a replacement SP6 host or pool, validate it, and shift traffic gradually. This is a blue-green or rolling deployment at the application layer; it is separate from an in-place SLES migration.
- SUSE Manager-managed host: follow SUSE Manager’s client migration workflow. SUSE says not to use YaST online migration or
zypper migration directly on a SUSE Manager client.
If your service is a database or another stateful application, treat application compatibility and data replication as a separate workstream. An operating-system migration path does not automatically upgrade the database or prove that its replication and failover design is safe.
Prepare the cluster and the change plan
1. Confirm versions, registration, and upgrade eligibility
Check that every node is on SLES 15 SP5, with the SLE HA extension and other modules or products registered as expected. The migration target list depends on installed products and extensions. A missing SP6 target can indicate a registration, repository, or extension-availability issue; do not try to force a different repository path just to make the target appear.
For a registered system, the following read-only checks can help establish its state:
cat /etc/os-release
sudo SUSEConnect --status
sudo zypper lr -u
Compare the installed SLES and SLE HA products, repositories, and architecture across all nodes. If the host is managed by SUSE Manager, use the corresponding client migration procedure instead of the direct steps below.
2. Patch, back up, and test
SUSE requires the source system to be at its most recent patch level before upgrading. Apply current SP5 maintenance updates and review the SP6 release notes for package, module, and application changes. SUSE’s upgrade preparation instructions also call for a current backup and a review of release notes.
Back up system configuration and application data, and verify that the backup can be restored. Test the whole procedure on a staging cluster that matches production, including network interfaces, storage, cluster resources, third-party repositories, and application health checks. Record how long migration and reboot take on each node so you can estimate the change window.
3. Prove that remaining nodes can carry the workload
Before removing a node, confirm the cluster is healthy and has no unresolved resource failures. Check that another node can run the services, mount or access required storage, and handle expected traffic. If losing one node would overload CPU, memory, network, or storage, add capacity, reduce load, or schedule a maintenance window instead of claiming no downtime.
Make sure cluster fencing is configured and functioning according to your established HA design. Fencing protects shared resources by isolating a node that cannot be trusted; disabling it to make an upgrade seem easier can create a split-brain risk. Keep console or out-of-band access available in case a node does not return after reboot.
Run a rolling upgrade, one node at a time
Use the steps below as a planning outline. Follow the procedure for your exact SLE HA version and resource setup; do not copy a resource-management sequence blindly into production.
- Confirm cluster health. Capture the current status and confirm all nodes and resources are healthy. In SLE HA,
crm status is one documented way to inspect cluster status.
- Move or drain services from the node. Use your cluster’s approved procedure to place its application resources on another healthy node. Verify the application endpoint and dependent storage before proceeding.
- Stop the cluster stack on the node being upgraded. SUSE’s rolling-upgrade instructions warn that leaving the cluster resource manager active during a software upgrade can lead to problems such as fencing active nodes. The documented node-level command is
crm cluster stop.
- Run the SLES service-pack migration. On a registered, non-SUSE-Manager-managed host, use
sudo zypper migration. Review the offered SP6 target and repository changes. Read the proposed package actions, especially packages to remove or downgrade, before confirming. The official SLES online migration instructions describe this command-line path.
- Reboot and verify the node. After migration completes, restart the host as instructed by SUSE. Confirm it boots SLES 15 SP6, the required products are registered, repositories match the target service pack, and the node has no critical system errors.
- Return the node to the cluster. Start its cluster stack using the approved procedure; the SLE HA guide shows
crm cluster start. Check crm status or Hawk2 and verify that the node rejoins without resource failures.
- Repeat only after the cluster is stable. Move the next node’s workload away, take that node out of the cluster, migrate, reboot, validate, and rejoin it. Do not begin the next node while the remaining cluster is degraded or carrying more work than it can safely handle.
SUSE states that mixed-version cluster nodes are supported only temporarily during the rolling upgrade and that the upgrade should be completed within one week. Plan a short, controlled sequence rather than leaving a mixed-version cluster in place indefinitely. Finish by confirming that all nodes run SP6, checking cluster and application health, and reviewing logs and repository registration.
Common problems and what to do
- No SP6 migration target appears: verify registration, active repositories, and whether each installed module or extension has a supported SP6 target. Resolve repository or entitlement issues before starting.
- The solver proposes unexpected removals: stop and investigate package origins, third-party repositories, and dependencies. SUSE notes that obsolete local or DVD repositories should be disabled for the migration. Do not accept a package plan you cannot explain.
- The upgraded node will not rejoin: keep the application on healthy nodes, inspect cluster and system logs, and verify the node’s network, product registration, repository configuration, and SLE HA packages before retrying.
- The service is reachable but users report errors: test application transactions, not only host availability. Validate database connections, shared storage, authentication, scheduled jobs, and any load-balancer health checks.
- A single-server system must stay online: there is no in-place SLES service-pack migration procedure that avoids the restart on that same host. Add a second application instance or plan a maintenance period.
How to judge whether downtime was avoided
Define a measurable success condition before the change. For example: the service’s external health check continues to pass throughout each node’s maintenance, error rates remain within the agreed threshold, and a representative user transaction succeeds while one node is unavailable. Record any failover gap, dropped sessions, queued work, or degraded performance. If the endpoint stayed up but a key workflow failed, the migration did not meet the service-level goal.
A rolling upgrade can keep an appropriately designed service available while individual servers reboot. It cannot guarantee uninterrupted sessions, compensate for a cluster with insufficient capacity, or remove the reboot from each migrated host. For single-node deployments, stateful applications without tested replication, or clusters with unsupported extensions, use a planned maintenance window or build and validate a replacement environment before shifting production traffic.
Official references