Introduction and Terminology

This guide describes the back-up, reset and restoration of an installed LILT system. The terminology master and node refer to Kubernetes nodes created in the original installation.
masterAll apps are deployed in kubernetes cluster
nodeContent is saved inside $shared_storage

Creating Back-up

Creating a database backup saves database information, documents, and assets for later restoration.

master

Database
$ mysqldump --host <DBHost> --user root -p lilt_dev > backup.sql
<DBHost> can be found by running:
$ kubectl get configmap -n lilt front-configmap -o yaml | grep -i dbhost

node

Documents and Assets Copy and save contents of $shared_storage/PVC(s) (e.g. /liltdata/pvc_*), to the desired location.

Reset

Resets the installation to its initial state. This is an optional procedure for the following use case:
Team A in the organization is using LILT, and has accumulated data. Then, Team B asks for a “fresh install” of LILT, but instead of re-provisioning a second set of hardware and re-installing from scratch, you can backup Team A’s data, reset LILT to a pristine state, and allow Team B to use LILT. When Team B is finished with the evaluation, you can backup Team B’s data, reset LILT to a pristine state, and restore Team A’s data.
Do not run these steps without performing a back-up. It will irrevocably delete all data in the system.
Follow the below steps in order:

master

Remove all apps Run the following: $ cd $install_dir $ ./uninstall-lilt.sh

node

Remove $shared_storage $ sudo rm -rf /$shared_storage/pvc*

master

Install apps with no data Run the following: $ cd $install_dir $ ./install-lilt.sh

Verification

If you see Error: UPGRADE FAILED: timed out waiting for the condition, please continue as this can happen due to time taken by the pods to startup, apps deployment happens as expected.
  • Please ensure all the pods are healthy (in “Running” status). This can take some time as all pods would connect to local docker-registry to download the new images in the node.
  • $ kubectl get pods -n lilt
  • Browse the site over ingress host URL by pointing it to one of the node IP addresses.