Datalore Help

Upgrade Datalore Enterprise

The instructions below explain how to upgrade your Datalore Enterprise version.

Upgrade from versions 2021.3.5-2022.1.4 to 2022.2 (Helm installation)

  1. (Optional) To upgrade from versions 2021.3.5-2022.1.2 to version 2022.1.4, update the image version:

    appVersion: "2022.1.4"
  2. Change FRONTEND_URL to DATALORE_PUBLIC_URL.

  3. Change the format of dataloreEnv to a helm map.

    Old format:

    dataloreEnv: | export FRONTEND_URL="https://datalore.example.com" export HUB_PUBLIC_BASE_URL="https://hub.datalore.example.com/hub" export HUB_DATALORE_SERVICE_ID="XXX" export HUB_DATALORE_SERVICE_SECRET="YYY" export HUB_PERM_TOKEN="perm:ZZZ"

    New format:

    dataloreEnv: DATALORE_PUBLIC_URL: "https://datalore.example.com" HUB_PUBLIC_BASE_URL: "https://hub.datalore.example.com/hub" HUB_DATALORE_SERVICE_ID: "XXX" HUB_DATALORE_SERVICE_SECRET: "YYY" HUB_PERM_TOKEN: "perm:ZZZ"

Migrate data

  1. To access the Datalore container, run the following command:

    kubectl exec -it datalore-0 -c datalore -- bash
  2. Depending on whether you migrate data before or after the upgrade to 2022.2, do one of the following:

    • To migrate after the upgrade, rename the data directories in the new version:

      mv /opt/data/webdav /opt/data/web-dav mv /opt/data/blobs /opt/data/blob
    • To migrate before the upgrade, rename the data directories in the current version:

      mv /home/storage/webdav /home/storage/web-dav mv /home/storage/blobs /home/storage/blob

Earlier versions

Perform the steps in the collapsed section to upgrade from version 0.3.0.

Upgrade from version 0.3.0

  1. Execute the following command to stop traffic to Datalore:

    kubectl delete svc datalore-on-premise
  2. Wait for approximately one minute until the running computations are stopped. Then, execute the following command:

    kubectl exec -it datalore-on-premise-0 -c postgres -- psql -ddatalore -Uadmin -c 'delete from core."RunningComputationsData";'
  3. Delete the Docker Hub token:

    kubectl delete secret regcred
  4. Continue the procedure as described below.

Upgrade to version 2021.3.5

  1. Delete Datalore:

    kubectl delete -k ./datalore
  2. Clone the datalore-configs repository.

  3. Check out the 2021.1.3.5 branch.

  4. Update Hub:

    • Copy the spec.template.spec.volumes values from the old hub/statefulSet.yaml file into the new one (in the new branch).

    • Update statefulset:

      kubectl apply -k hub/
    • Get the Hub token and copy it:

      kubectl logs service/hub
    • Open Hub at HUB_ROOT_URL, specify the token, and click login and, in the next window, upgrade.

  5. Update Datalore:

    • Copy datalore/configs/volumes_config.yaml from the old directory to the new one.

    • Copy datalore/configs/plans_config.yaml to the new directory.

    • If the agent configuration was changed, copy the datalore/configs/agents_config.yaml to the new directory and change the image: field to the respective tag.

    • If you used custom environments, copy datalore/configs/envs too.

    • Copy the ROOT_PASSWORD value from datalore/configs/db_config.yaml to datalore/configs/db_secret_env.txt.

      Pay attention to the difference in format:

      • Old file:

        apiVersion: v1 kind: ConfigMap metadata: name: datalore-on-premise-db-env data: ROOT_PASSWORD: "changeme"
      • New file:

        ROOT_PASSWORD=changeme

    • Copy the variables from datalore/configs/user_config.yaml to datalore/configs/user_secret_env.sh.

      Pay attention to the difference in format:

      • Old file:

        apiVersion: v1 kind: ConfigMap metadata: name: datalore-on-premise-env data: FRONTEND_URL: "http://datalore.example.com" HUB_PUBLIC_BASE_URL: "http://hub.datalore.example.com/hub" ...
      • New file:

        export FRONTEND_URL="http://datalore.example.com" export HUB_PUBLIC_BASE_URL="http://hub.datalore.example.com/hub" ...

  6. Launch Datalore:

    kubectl apply -k datalore/
Last modified: 04 July 2022