v5.5.0.1

Date of Release: September 2023

Resolved Issues

NOTE The "*" symbol next to ID refers to the issues that have been resolved in the current release.

JIRA ID

Issue

IPD-24529*

Subset of users unable to authenticate via SAML after upgrade to 5.5.

IPD-24093*

Config-maps are getting overwritten during upgrade.

Prerequisites

NOTE Before going through the below mentioned prerequisites for this section, ensure that all the Prerequisites for Installing Infoworks on AKS are validated.

  • Ensure the current deployment’s chart is present in /opt/infoworks.

  • Python 3.8 or later version with the pip module is installed in the Bastion VM.

  • Stable internet connectivity on the Bastion VM to download the required python packages from the python repository during installation/upgrades.

  • Validate that the version of the old chart is 5.5.0.

cat /opt/infoworks/iw-k8s-installer/infoworks/Chart.yaml | grep appVersion
appVersion: 5.5.0
Important

Ensure to take backup of MongoDB Atlas and PostgresDB PaaS. In case you don't take the backup, jobs will fail after the rollback operation. For more information, refer to the MongoDB Backup and PostgresDB PaaS Backup

Upgrade Instructions

To upgrade Infoworks on Kubernetes:

ASSUMPTION

It is assumed that the existing chart is placed in the /opt/infoworks directory and the user has the access permission.

export IW_HOME="/opt/infoworks"

Before selecting the type of upgrade execute the following commands.

Step 1: Create the required directories and change the path to that directory.

mkdir -p $IW_HOME/downloads cd $IW_HOME/downloads

Internet-free Upgrade

NOTE If you are upgrading via Internet-based procedure, skip to the next section.

Step 1: Download the upgrade tar files shared by the Infoworks team to the Bastion (Jump host) VM and place it under $IW_HOME/downloads.


Step 2: To configure Internet-free upgrade, execute the following command:

export INTERNET_FREE=true

Internet-based Upgrade

Step 1: Download the Update script tar file.

wget https://iw-saas-setup.s3-us-west-2.amazonaws.com/5.5/iwx_updater_k8s_5.5.0.1.tar.gz

Common Steps for Both Internet-free and Internet-based

NOTE Once you have selected the type of upgrade, the below mentioned steps are common for both Internet-free and Internet-based.

Step 1: Extract the iwx_updater_k8s_5.5.0.1.tar.gz under $IW_HOME/downloads.

WARNING

Do not extract the tar file to /opt/infoworks/iw-k8s-installer as it would result in loss of data.

tar xzvf iwx_updater_k8s_5.5.0.1.tar.gz

This should create two new files as follows - update-k8s.sh and configure.sh.

Step 2: Run the script.

./update-k8s.sh -v 5.5.0.1

NOTE At the end of the above command's execution, if you want to run helm upgrade manually, then type N and press Enter. There is a 30-second timeout set to abandon the deployment of the upgraded version. If no input is received within the timeout duration, the deployment is triggered.

helm upgrade 531 /opt/infoworks/iw-k8s-installer/infoworks -n aks-upgrade-540 -f /opt/infoworks/iw-k8s-installer/infoworks/values.yaml Enter N to skip running the above command to upgrade the helm deployment. (timeout: 30 seconds): N Upgrade success

Step 3: To modify any of the configurations listed below, follow the steps:

  1. Email configurations: smtpHost, smtpPort, smtpUsername, smtpPassword

  2. Timeout for DT

  3. Timeout for ingestion

  4. nginx.ingress.kubernetes.io/proxy-body-size

Step 3A: Navigate to the directory IW_HOME/iw-k8s-installer. And Edit the values.yaml file


Name

Description

Default Values

Email configuration

smtpHost

The SMTP host URL to connect to

smtp.gmail.com


smtpPort

SMTP port

587


smtpUsername

The SMTP User to authenticate as

email address


smtpPassword

The Password for the SMTP user

Encrypted password

DT

timeoutSeconds

Timeout for DT

7200

Ingestion

timeoutSeconds

Timeout for Ingestion

7200

nginx.ingress

kubernetes.io/proxy-body-size

Nginx proxy body size

10m

NOTE

  • Email configurations can be found under customiwConfigs section in values.yaml

  • Timeouts for DT and ingestion can be found under databricks section in values.yaml

  • kubernetes.io/proxy-body-size can be found in nginx.ingress section in values.yaml

Step 3B : After editing the annotations, the values.yaml file should look as shown below:



Update the values and save the file.

Step 3C : Navigate to the directory IW_HOME/iw-k8s-installer. And Run the iw_deploy script

./iw_deploy.sh

NOTE During the above command's execution, when it prompts if we need to override, type y and press Enter.

Step 3D: Restart all the deployments

kubectl rollout restart deployment -n <namespace>

Rollback

Prerequisites

  • Before executing the rollback script, ensure that IW_HOME variable is set.

  • Assuming Infoworks home directory is /opt/infoworks, run the below command to set the IW_HOME variable.

  • Validate that the version of the old chart is 5.5.0.1.

export IW_HOME=/opt/infoworks
  • Ensure the current deployment’s chart is present in /opt/infoworks.

  • Execute the below command to check the appVersion.

cat $IW_HOME/iw-k8s-installer/infoworks/Chart.yaml | grep appVersion
appVersion: 5.5.0.1
Important

Ensure to restore MongoDB Atlas and PostgresDB PaaS. In case you don't take the backup, jobs will fail after the restore operation. For more information, refer to the MongoDB Restore and PostgresDB Restore.

Rollback Instructions

NOTE Since IW_HOME has been exported in the Prerequisites section mentioned above, the following steps can be executed from any location for users with read/write access to the aforementioned IW_HOME.

Step 1: Download the rollback script.

wget https://iw-saas-setup.s3.us-west-2.amazonaws.com/5.5/rollback-k8s.sh

Step 2: Place the Update script in the same directory as that of the existing iw-k8s-installer.

Step 3: Ensure you have permission to the $IW_HOME directory.

Step 4: Give executable permission to the rollback script using the below command.

chmod +x rollback-k8s.sh

Step 5: Run the script.

./rollback-k8s.sh -v 5.5.0

Step 6: You will receive the following prompt, "Enter N to skip running the above command to upgrade the helm deployment. (timeout: 30 seconds): ", type Y and press Enter.

NOTE If you want to run helm upgrade manually, then type N and press Enter.

Enter N to skip running the above command to upgrade the helm deployment. (timeout: 30 seconds): Y

NOTE There is a 30-second timeout set to abandon the deployment of the downgraded version. If no input is received within the timeout duration, the deployment is triggered.

On This Page