Skip to main content

Upgrade, backup, restore, and uninstall

Inventory and cold backup

Record the exact version, package variant, asset digest, active services, and destination policy without logging secrets. Stop only the active components and archive /etc/spot, /var/lib/spot, and /var/lib/spot-agent-sap; for portable, archive config, data, and run. Include local Elasticsearch data only for the embedded suite. External cluster snapshots belong to its operator.

Generate and verify sha256sum BACKUP > BACKUP.sha256, store the backup outside the updated tree, and restart exactly the components that were active.

Do not exclude /var/lib/spot/license: it contains the installed license, verifiable history, and local identity for that installation. Portable keeps them below $SPOT_HOME/data/license. Restoring them together preserves continuity; never copy that state to another host. If the change coincides with a renewal, first generate a new package as described in Licenses and renewal.

Upgrade

Upgrade the same package name with rpm -Uvh or dpkg -i. The transaction replaces executable trees with clean root-owned payload and restarts only previously active services. It also removes reserved loader and package-identity variables from inherited spot.env files. Mutable configuration and data remain; foreign files inserted into old code trees do not.

The embedded suite follows package dependencies: Elasticsearch starts before the backend and agent. The agent does not attempt bootstrap before the local Elasticsearch service has been started.

For the embedded suite, /etc/spot/elasticsearch is executable JVM configuration and is restored from trusted package defaults during upgrade. Use SPOT-supported settings instead of adding JVM files there. Indices remain under /var/lib/spot/elasticsearch and are included in the cold backup. Portable upgrades use a new directory and keep the previous generation until health and ingestion pass.

Restore and rollback

Test restore on the same version and variant: install that package first, keep services stopped, verify the backup, restore state and ownership, then validate health and ingestion. For rollback, install the previous package before restoring its compatible backup.

Embedded to external uses the assistant and does not move history. External to embedded requires backup, uninstall, and a fresh spot-suite install; portable uses a new $SPOT_HOME.

Normal uninstall preserves configuration and data. Purge is a separate, destructive operation performed only after verifying the backup and exact SPOT paths. Recovery starts by reinstalling the same version and variant.