Upgrading to Kubernetes 1.17
  • 18 May 2022
  • 5 Minutes to read
  • Contributors
  • Dark
    Light
  • PDF

Upgrading to Kubernetes 1.17

  • Dark
    Light
  • PDF

Sisense V8.2.1 introduced support for Kubernetes version 1.17. To upgrade to Sisense L8.2.6.SP3.31 or later, you must now have Kubernetes version 1.17.

You can check which version of Kubernetes you are using with the following command:

kubectl version

If your Kubernetes version is 1.17 or later, you can upgrade to Sisense L8.2.6.SP3.31 and later with no additional actions needed.

If you have an earlier version of Sisense or Kubernetes, see the instructions below. As upgrading to Kubernetes 1.17 is a Kubernetes upgrade of more than a single version, it cannot be done automatically by the Sisense upgrade process.

If you have a single node deployment, you have two options:

  1. You can uninstall Sisense including Kubernetes and keep your data, and then install a new deployment on the same machine. This method continues using your existing data from local storage, but does not retain your scheduled builds. You must reschedule your builds following the upgrade.

  2. You can back up your existing Sisense deployment data, install a fresh deployment, and restore the data.

If you have a multi-node deployment, you cannot upgrade without backing up your existing cluster, deploying a new cluster, and restoring your backup.

The following instructions describe how to upgrade:

  • A single node deployment
  • A multi-node deployment
  • Sisense in cloud environments

Single Node Deployments

  1. Navigate to your installation folder.

  2. Backup any Kubernetes CronJobs for scheduled builds.

    Kubectl -n sisense get cronjobs.batch -o json > cronjobs.json

  3. Configure the following parameters in the single_config.yaml file.

    uninstall_cluster: true

    uninstall_sisense: true

  4. Run the installation script.

    ./sisense.sh single_config.yaml --yes

  5. When the script finishes, download the latest Sisense version to the home directory of the user, and extract it where X.X.X is the current version number.

    cd && \

    wget https://data.sisense.com/linux/sisense_linux_L8.X.X.tar.gz && \

    tar zxf sisense_linux_L8.X.X.tar.gz

  6. Navigate to the new version of Sisense you just extracted.

    cd sisense-$SISENSE_VERSION/

  7. Edit and configure your single configuration file for the new installation.

    vim single_config.yaml

  8. Make sure the parameters in the "uninstalling" section of the configuration file are set to “false” as shown below.

    update: false

    uninstall_cluster: false

    uninstall_sisense: false

    remove_user_data: false

  9. Run the installation script.

    ./sisense.sh single_config.yaml --yes

  10. Restore the Kubernetes CronJobs for your Scheduled Builds.
    kubectl create -f cronjobs.json

Multi-Node Environment

Back up your Sisense Assets

Sisense recommends that you regularly back up your Sisense assets in your Linux environment. In addition to regular backups, you should always create a backup before upgrading to a new version of Sisense. From the Sisense CLI, you can backup up the following assets:

  • ElastiCube data
  • Sisense application database
  • Sisense configuration database
  • Add-ons
  • Rebranding files
  • Email templates

These assets are collected by Sisense and stored in a tar.gz file. After you have backed up your assets, you can restore them as described in the Sisense documentation. For your convenience, the instructions are also available here.

To back up Sisense assets:

  1. Enter your Linux host and run the following command to load the Sisense CLI from the home directory of the user.

    source add_completion-ns-sisense.sh

  2. To include your ElastiCube data within the backup tarball, add the following flag.

    -include-farms yes

    The default flag value is “no”, which means the backup tarball will not include the ElastiCube data backed up and you will need to rebuild them from scratch after restoring your environment.

  3. Run the backup command.

    si system backup -include-farms no

    Sisense creates an archive of all your assets called: sisense_assets_collector_YYYY-MM-DD_hh_mm_ss.tar.gz where YYYY-MM-DD_hh_mm_ss is the time when the file was created.

  4. Copy your backup file to home directory on the server.

    kubectl cp -n sisense

    $managemenet_pod_name:/opt/sisense/storage/system_backups/sisense_assets_collector_YYYY-MM-DD_hh_mm_ss.tar.gz

    ./sisense_assets_collector_YYYY-MM-DD_hh_mm_ss.tar.gz

    management_pod_name is your management pod's name.

Uninstall and Reinstall your Sisense deployment
  1. Navigate to the installation folder.

  2. Configure the following parameters in the cluster_config.yaml file.

    uninstall_cluster: true

    uninstall_sisense: true

    remove_user_data: false

  3. Run the installation script.

    ./sisense.sh cluster_config.yaml --yes

  4. Download the latest Sisense version to the home directory of the user, and extract it. In the example below, replace X.X with the current version.

    cd && \

    wget https://data.sisense.com/linux/sisense_linux_L8.X.X.tar.gz && \

    tar zxf sisense_linux_L8.X.X.tar.gz

  5. Navigate to the new version of Sisense you just extracted.

    cd sisense-$SISENSE_VERSION/

  6. Edit and configure the single configuration file for the new installation. For Cloud deployments on EKS, AKS, or GKE, the file is cloud_config.yaml.

    vim cluster_config.yaml

  7. Make sure the parameters in the "uninstalling" section of the configuration file are set to “false” as shown below.

    update: false

    uninstall_cluster: false

    uninstall_sisense: false

    remove_user_data: false

  8. Run the installation script. For Cloud deployments on EKS, AKS, or GKE, the file is cloud_config.yaml.

    ./sisense.sh cluster_config.yaml --yes

Restoring your Sisense Assets to the New Deployment

If you have backed up your Sisense assets on Linux, you can restore them using the Sisense CLI.

The procedure below restores the following assets that were backed up and stored in a tar.gz file:

  • ElastiCube data
  • Sisense application database
  • Sisense configuration database
  • Addons
  • Rebranded files
  • Email templates

To restore your Sisense assets:

  1. Enter your Linux host and run the following command to load the Sisense CLI from the home directory of the user.

    source add_completion-ns-sisense.sh

  2. Copy the backup file to the shared storage through the management pod.

    kubectl cp -n sisense ./sisense_assets_collector_YYYY-MM-DD_hh_mm_ss.tar.gz $managemenet_pod_name:/opt/sisense/storage/system_backups/sisense_assets_collector_YYYY-MM-DD_hh_mm_ss.tar.gz

  3. Run the restore command.

    si system restore -path
    /opt/sisense/storage/system_backups/sisense_assets_collector_20XX-XX-
    XX_XX_XX_XX.tar.gz [-include-farm yes/no]

  4. After the restoration finishes, a confirmation message is displayed. Your backed up Sisense configuration is now restored.

    Note :

    After the system is up and running, you must enable the relevant add-ons. This option is available from Admin > AddOns in Sisense.

Upgrading Sisense on the Cloud

If you deployed Sisense on Deploying Sisense on Amazon EKS, Deploying Sisense on Azure Kubernetes Service, and Deploying Sisense on Google GKE follow the instructions below to upgrade your environment to Sisense V8.2.6.

For Online Installations

  1. Backup your current version of Sisense. See Backing Up and Restoring Sisense.

  2. Upgrade to Sisense V8.2.4. See Upgrading Sisense on Linux.

  3. Upgrade your cloud provider’s environment to Kubernetes 1.17.

  4. Upgrade to Sisense V8.2.6.SP3.31 or later.

For Offline Installations

  1. Backup your current version of Sisense. See Backing Up and Restoring Sisense

  2. Uninstall Sisense.

  3. Upgrade your cloud provider’s environment to Kubernetes 1.17.

  4. Install Sisense V8.2.6 as described in Deploying Sisense on Amazon EKS,Deploying Sisense on Azure Kubernetes Service, and Deploying Sisense on Google GKE.

  5. Restore Sisense from the backup.


Was this article helpful?