Upgrading Sisense with Kubernetes using RKE2
Note:
This entire topic relates only to on-premise customers who chose to use the Sisense deployment script to deploy and manage your on-premise Kubernetes cluster via the RKE tool.
Overview
Rancher Kubernetes Engine (RKE) is a tool developed by Rancher, which is used for deploying and running Kubernetes clusters on your on-premise server(s).
RKE is reaching its End Of Life:
RKE uses Docker, which is no longer maintained as a container runtime by Kubernetes.
This is critical as Docker’s removal from the Kubernetes project (as of release 1.24) necessitates a shift.
RKE2 adopts containerd, providing a more secure and efficient environment.
This change not only enhances the stability of container workloads but also aligns with the latest industry standards for container management.
RKE2 and K3S offer a more secure, efficient, and future-proof environment for your Kubernetes needs.
Therefore, Sisense has updated our on-prem deployment process to deploy the Kubernetes cluster using the new RKE2.
The final Sisense version that will install/upgrade Kubernetes using RKE1 is L2025.1.
Subsequent Sisense versions will still be able to deploy over RKE1 (using only update: true
and update_k8s_version: false
).
However, for new installations for which deploying the Kubernetes cluster via the Sisense deployment code is desired, RKE2 will be installed.
Upgrading from RKE1 to RKE2
Upgrading from RKE1 to RKE2 is not supported. This means that if you have RKE installed via a Sisense version <=L2025.1 and you are about to update to a newer version, you could run update: true
, but you cannot run it with update_k8s_version: false
.
Therefore, if you want to update to the later Kubernetes version, there are two options:
Note:
Whichever method you choose, you must first backup your Sisense data, and then restore your data in the new environment:
-
Recommended method: Launch a new server(s) and run a fresh install on it. This will ensure that you do not lose any data while migrating from the old environment to the new one.
-
Less preferred method: Completely uninstall (
uninstall_cluster: true
,uninstall_sisense: true
, andremove_user_data: true
) and then run a fresh reinstall.
Removing a Node
The remove_node
feature is no longer supported, as RKE2 has deprecated this functionality.
If you want to remove a node from your existing Kubernetes cluster, you must do it manually (and update your config.yaml
file accordingly).
-
Uninstall | RKE2 (uninstall RKE2 only inside the server/node you wish to remove)
NFS Storage Class Change
For on-premise customers who use NFS storage:
Once upgrading to RKE2 (whether installing on a new server(s) or uninstall+reinstall), the old storage class nfs-client
will be replaced with nfs-csi
.
The nfs-csi
storageClass is the native way to work with your NFS.
Containerd Installation Required
For the offline/air-gapped customers:
See Installing Sisense in an Offline Environment.
It is no longer necessary to have Docker pre-installed before running the installation. However, you must have Containerd v1.7.24 or newer installed on your server(s) before running the installation.
Note:
Containerd is included as part of Docker, so if you already have Docker installed, there is no need to separately install Containerd.
ubuntu@node1:~$ ctr --version
ctr containerd.io 1.7.24
In addition, running ./installer/offline/offline_installer.sh run <your_config_file>.yaml
will automatically start the installation. This means that there is no need to cd sisense-${SISENSE_VERSION}
and run ./sisense.sh <your_config_file>.yaml
.
Note:
If you want to skip parameters validation, you can run ./installer/offline/offline_installer.sh run <your_config_file>.yaml -y
.