Stronghold EE can be upgraded to Stronghold CSE in one of the following ways:
- in a standalone installation;
- in a Deckhouse Platform installation.
Upgrading from Stronghold EE 1.15.x to Stronghold CSE 1.16.0 is supported. If you use a Stronghold EE version earlier than 1.15.x, first update to the latest version of the branch.
The service may be temporarily unavailable during the upgrade to Stronghold CSE.
Upgrading a standalone installation
Before starting the upgrade, do the following:
Check the current Stronghold version in the
Versionfield:d8 stronghold statusSave the unseal keys and the root token to a secure storage.
Create a snapshot of the Stronghold cluster. Example:
d8 stronghold operator raft snapshot save stronghold-$(date +%F_%H-%M).snapCheck that the snapshot has been created:
ls -lh ./stronghold-*.snapStore the resulting files outside the Stronghold cluster and outside the nodes it runs on.
Prepare the Stronghold CSE 1.16.0 package or binary on each node.
Upgrading a single-node cluster
To upgrade a single-node cluster, do the following:
Check the cluster state before the upgrade:
d8 stronghold statusThe following values must be present:
Initialized true Sealed false Version 1.15.0+ee HA Mode activeStop the
strongholdservice:sudo systemctl stop strongholdReplace the Stronghold EE binary with the Stronghold CSE 1.16.0 binary.
Make sure the binary permissions have not changed, or run:
sudo chmod 0755 /opt/stronghold/stronghold sudo chown stronghold:stronghold /opt/stronghold/strongholdStart the
strongholdservice:sudo systemctl start stronghold sudo systemctl status stronghold --no-pagerCheck that the node has started correctly:
d8 stronghold statusCheck that:
- the
strongholdservice is in theRunningstate; - there are no startup errors;
- the version is 1.16.0 (CSE).
- the
If necessary, unseal Stronghold.
Upgrading a multi-node cluster
A multi-node cluster is upgraded node by node so that the cluster remains available.
Determine the current leader node:
d8 stronghold statusThe output contains the address of the current leader node in the
HA Clusterfield:... HA Cluster https://10.241.32.36:8201 ...Note the leader node.
Upgrade all follower nodes one by one. On each follower node:
Stop the service:
sudo systemctl stop strongholdReplace the Stronghold EE binary with Stronghold CSE 1.16.0. If necessary, restore the permissions:
sudo chmod 0755 /opt/stronghold/stronghold sudo chown stronghold:stronghold /opt/stronghold/strongholdStart the service:
sudo systemctl start stronghold sudo systemctl status stronghold --no-pagerIf necessary, unseal the Stronghold node.
Check the node state:
d8 stronghold statusCheck that:
- the
strongholdservice is in theRunningstate; - there are no startup errors;
- the version is 1.16.0 (CSE).
- the
Move on to the next follower node only after the current one has been checked successfully.
After upgrading all follower nodes, change the leader node:
d8 stronghold operator step-down # Wait for a while. d8 stronghold statusExpected result: the leader node has changed, and the
HA Clusterfield shows a different value.Upgrade the former leader node:
sudo systemctl stop stronghold # Replace the Stronghold EE binary with Stronghold CSE 1.16.0. # If necessary, restore the permissions. # sudo chmod 0755 /opt/stronghold/stronghold # sudo chown stronghold:stronghold /opt/stronghold/stronghold sudo systemctl start stronghold sudo systemctl status stronghold --no-pager d8 stronghold statusCheck that:
- the
strongholdservice is in theRunningstate; - there are no startup errors;
- the version is 1.16.0 (CSE).
- the
If necessary, unseal the last Stronghold node.
Perform the final cluster check:
d8 stronghold statusCheck that:
- all cluster nodes are available;
- there are no replication errors or quorum problems;
- version 1.16.0 (CSE) is installed on the nodes.