Swimlane 10.15.2 Upgrade Instructions
29 min
use these upgrade instructions to upgrade your instance of swimlane 10 x the instructions are organized by subsections of this document that will help you upgrade by specific installation type, whether you have an embedded, or existing cluster installation upgrade swimlane on embedded cluster installations use the following instructions to upgrade this version of swimlane on an embedded cluster installation prerequisites swimlane version 10 13+ if you are not on a version that is >= 10 13, contact your swimlane support representative mongodb 5 0 14 important! swimlane recommends that you perform a mongodb backup prior to starting this update for more information, see backup and restore on an embedded cluster with snapshots upgrade instructions ssh into the any node in your deployment and execute the following command to begin the swimlane platform installer component upgrade $ curl ssl https //kurl sh/swimlane platform stable 10 15 2 | sudo bash s ha” note if you have configured selinux, add this to the end of the command above “installer spec file=se yaml” for a multi node (ha) cluster, the script prompts you to drain node one (1) and apply the upgrade once the upgrade on node one (1) is complete, the process continues running it then asks for confirmation to drain node two (2) as well as a command to run in that node see this example ✔ kubernetes host packages installed node/ip 10 1 0 147 swimlane io already uncordoned drain node ip 10 1 0 186 swimlane io to prepare for upgrade? (y/n) y pod/swimlane syslog receiver 86f79c8fd6 2rvwt evicted pod/swimlane tasks 5dfd4d5f94 tkrb2 evicted node/ip 10 1 0 186 swimlane io evicted run the upgrade script on remote node to proceed ip 10 1 0 186 swimlane io cat upgrade sh | sudo bash s kubernetes version=1 26 6 docker registry ip=10 96 3 115 run the upgrade command on the node that was drained use this command to find the ip of the node that was drained kubectl get nodes o wide the primary script that ran in node 1 will detect that node 2 has been upgraded, and will now ask to drain and upgrade node three (3) follow the same steps for node 2 to complete the kubernetes portion of the upgrade once the additional nodes are complete, press enter in the terminal window of the first node in which you ran the install command to complete the installation log in to the swimlane platform installer dashboard (https //\<swimlanedns> 8800) go to the version history tab and look for the new published version if this version doesn’t show up initially, click check for updates a pop up window appears, click go to updated version click deploy on the new 10 15 2 version with the highest sequence number at the top of the versions list (currently 10 15 2 xxx) once the application tab shows ‘ready’ your upgrade is complete see update the swimlane python driver python package if you want to update the driver at this time upgrade swimlane on existing cluster installations prerequisites swimlane version 10 6 or greater if you are not on a version that is > 10 6, contact your swimlane support representative mongodb 5 0 14 kubernetes 1 22 1 26 kots kubectl plugin 1 102 0 velero 1 11 x important! swimlane recommends that you perform a mongodb backup prior to starting this update for more information, see backup and restore on an existing cluster with snapshots upgrade kotsadm to v1 102 0 download the latest spi kubectl add on for the os version where you run kubectl commands from $ curl https //kots io/install/v1 102 0 | bash $ kubectl kots version the kots kubectl plugin version should match what is listed in the prerequisites above upgrade velero to 1 11 x velero 1 11 includes a change that replaces the restic daemonset with the node agent daemonset depending on what version you are upgrading from, there are different steps for patching the container images see the velero documentation for details download velero 1 11 x for your os version https //github com/vmware tanzu/velero/releases/tag/v1 11 0 untar the file and then change directory (cd) into the uncompressed directory $ tar zxf \<filename> tar gz $ cd \<directory> update velero custom resource definitions $ /velero install crds only dry run o yaml | kubectl apply f upgrade container images as instructed in the velero upgrade to 1 11 article confirm that both the client and server versions are on the same 1 11 0 release $ /velero version upgrade the swimlane kots application next, upgrade the swimlane platform installer (spi) $ kubectl kots admin console upgrade n \<namespace> log in to the swimlane platform installer dashboard (https //\<swimlanedns> 8800) go to the version history tab and look for the new published version if this version doesn’t show up initially, click check for updates a pop up window appears, click go to updated version or visit the version history tab click deploy on the new 10 15 2 version with the highest sequence number at the top of the versions list once the application tab shows ‘ready’ your upgrade is complete see update the swimlane python driver python package if you want to update the driver at this time upgrade swimlane on embedded airgap cluster installations prerequisites swimlane version 10 13+ if you are not on a version that is >= 10 13, contact your swimlane support representative mongodb 5 0 14 links to the offline installer package and offline airgap bundle if you do not have these linked, contact your swimlane support representative important! swimlane recommends that you perform a mongodb backup prior to starting this update for more information, see backup and restore on an embedded cluster with snapshots upgrade instructions copy the latest offline installer package to each airgapped server untar the offline installer package on each server $ tar xzvf swimlane platform 10 15 2 xxx tar gz run the swimlane platform installer update on any node in your deployment $ cat install sh | sudo bash s airgap ha once the install is complete, if you have a multi node (ha) cluster, the script prompts you to run an additional command on every node run this script on node swimlane 2 to load required images before proceeding cat /tasks sh | sudo bash s load images have images been loaded on node swimlane 2? (y/n) run cat /tasks sh | sudo bash s load images on nodes two (2) and node three (3) before proceeding to run the command on node one (1) this command can be run simultaneously on nodes 2 and 3 once the load images script completes on nodes 2 and 3, enter y in the node 1 terminal session twice the install script now runs on node 1 for a few minutes once it completes, follow the prompts to run the upgrade script on nodes 2 and 3, similar to this example (the ip address will depend on your deployment) when both upgrade scripts are complete, press enter on node 1 and then upload the airgap bundle to the spi dashboard log in to the swimlane platform installer dashboard (https //\<swimlanedns> 8800) go to the version history tab and click upload a new version , then browse to the swimlane platform 10 15 2 xxx airgap file and click upload the sequence number “ xxx” of the airgap file may be higher than shown if a new sequence has been published once the upload of the airgap completes, refresh the page or switch tabs to see the status of the file extraction go back to the version history tab and click deploy on the new 10 15 2 version at the top of the versions list once the application tab shows ‘ready’ your upgrade is complete see update the swimlane python driver python package if you want to update the driver at this time upgrade swimlane on existing airgap cluster installations prerequisites swimlane version 10 6+ if you are not on a version that is > 10 6, contact your swimlane support representative mongodb 5 0 14 kubernetes 1 22 1 26 kots kubectl plugin 1 102 0 velero 1 11 x important! swimlane recommends that you perform a mongodb backup prior to starting this update for more information, see backup and restore on an existing cluster with snapshots upgrade kotsadm to v1 102 0 download the latest spi kubectl add on linux https //get swimlane io/existing cluster/install/linux osx https //get swimlane io/existing cluster/install/osx download the latest spi offline package https //get swimlane io/existing cluster/install/offline package copy the latest spi kubectl add on and spi offline packages to your jumpbox $ scp kots \<os version> tar gz user@\<swimlanedns> /tmp/kots \<os version> tar gz $ scp kotsadm tar gz user@\<swimlanedns> /tmp/kotsadm tar gz untar the spi kubectl add on $ tar zxvf kots \<os version> tar gz rename or remove the original kubectl kots file $ rm /usr/local/bin/kubectl kots rename and move the latest spi kubectl add on file to /usr/local/bin/kubectl kots $ mv kots kubectl kots $ mv kubectl kots /usr/local/bin/ verify version $ kubectl kots version upgrade velero to 1 11 x velero 1 11 includes a change that replaces the restic daemonset with the node agent daemonset depending on what version you are upgrading from, there are different steps for patching the container images see the velero documentation for details download velero 1 11 to the jumpbox for the jumpbox's os version https //github com/vmware tanzu/velero/releases/tag/v1 11 0 untar the file and then change directory into the uncompressed directory $ tar zxf \<filename> tar gz cd \<directory> update velero custom resource definitions $ /velero install crds only dry run o yaml | kubectl apply f download the new velero images and push them to your private registry from your jumpbox upgrade container images as instructed in the velero upgrade to 1 11 article confirm both client and server version are on the same 1 11 0 release $ /velero version upgrade the swimlane kots application push the spi (kotsadm) images to your registry $ kubectl kots admin console push images kotsadm tar gz \<your registry endpoint>/\<your registry name> registry username \<username> registry password \<password> next, upgrade the swimlane platform installer (spi) $ kubectl kots admin console upgrade kotsadm registry \<your registry endpoint>/\<your registry name> registry username \<username> registry password \<password> n \<namespace> when the spi upgrade is complete, upload the swimlane airgap bundle to the spi dashboard log in to the swimlane platform installer dashboard (https //\<swimlanedns> 8800) go to the version history tab and click upload a new version , then browse to the swimlane platform 10 15 2 xxx airgap file and click upload the sequence number “ xxx” of the airgap file may be higher than shown if a new sequence has been published once the upload of the airgap completes, refresh the page or switch tabs to see the status of the file extraction go to the version history tab you will see a version for 10 15 2 xxx click deploy on the new 10 15 2 xxx version with the highest sequence number at the top of the versions list once the application tab shows ‘ready’ your upgrade is complete see update the swimlane python driver python package if you want to update the driver at this time update the swimlane python driver python package beginning with swimlane version 10 2 0, the python driver swimlane python package must be manually updated after an upgrade delete the old swimlane python package update the swimlane python package in the swimlane ui to version 10 9 1 if this is an embedded airgapped upgrade, please download the swimlane python wheel ( whl) package from here and update it in the swimlane ui restart the swimlane api and tasks pods with this command kubectl rollout restart deployments/swimlane api deployments/swimlane tasks download and push new velero images use these commands to download and push new velero images $ docker pull velero/velero\ v1 11 0 $ docker tag velero/velero\ v1 11 0 \<my registry>/\<my namespace>/velero/velero\ v1 11 0 $ docker push \<my registry>/\<my namespace>/velero/velero\ v1 11 0 $ docker pull velero/velero restic restore helper\ v1 11 0 $ docker tag velero/velero restic restore helper\ v1 11 0 \<my registry>/\<my namespace>/velero/velero restic restore helper\ v1 11 0 $ docker push \<my registry>/\<my namespace>/velero/velero restic restore helper\ v1 11 0 $ docker pull velero/velero plugin for aws\ v1 7 1 $ docker tag velero/velero plugin for aws\ v1 7 1 \<my registry>/\<my namespace>/velero/velero plugin for aws\ v1 7 1 $ docker push \<my registry>/\<my namespace>/velero/velero plugin for aws\ v1 7 1 $ docker pull velero/velero plugin for gcp\ v1 7 1 $ docker tag velero/velero plugin for gcp\ v1 7 1 \<my registry>/\<my namespace>/velero/velero plugin for gcp\ v1 7 1 $ docker push \<my registry>/\<my namespace>/velero/velero plugin for gcp\ v1 7 1 $ docker pull velero/velero plugin for microsoft azure\ v1 7 1 $ docker tag velero/velero plugin for microsoft azure\ v1 7 1 \<my registry>/\<my namespace>/velero/velero plugin for microsoft azure\ v1 7 1 $ docker push \<my registry>/\<my namespace>/velero/velero plugin for microsoft azure\ v1 7 1 troubleshooting upgrading will sometimes leave the hangfire notifications in a corrupted state the swimlane api and swimlane tasks pods will be crashlooping with logs of this form swimlane api core errorhandling contractrequiresexception rabbitmqconnectionstring is not defined in orchestration configuration swimlane tasks core errorhandling contractrequiresexception rabbitmqconnectionstring is not defined in orchestration configuration dropping the hangfire notifcations collection in mongo will remedy this kubectl exec swimlane tools 0 /bin/bash c 'mongo $swimlane data mongo swimlaneconnectionstring quiet tls tlsallowinvalidcertificates eval \\'db\["hangfire notifications"] drop()\\''