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.