Skip to main content

MarkLogic Server on Kubernetes

Upgrading the MarkLogic root image to rootless

To upgrade the MarkLogic image from root to rootless, follow these steps:

  1. Set the rootToRootlessUpgrade flag in the values.yaml to true:

    rootToRootlessUpgrade: true
    
  2. Update the image.tag in the values.yaml file to the rootless MarkLogic version to upgrade to:

    repository: marklogicdb/marklogic-db
    tag: <11.2.0-ubi-rootless>
  3. Upgrade the Helm Chart using the helm upgrade command with the release name, chart name, and values.yaml:

    helm upgrade <release-name> <chart-name>  -n <release-namespace>
    
  4. Use this command to start the upgrade. The command will delete the pod with the smallest ordinal that is a MarkLogic bootstrap host:

    kubectl delete pod <pod-name> -n <release-namespace>
    

    For example:

    kubectl delete pod dnode-group-marklogic-0
  5. Once the pod is terminated, a new pod is created with a rootless MarkLogic version. Monitor the pod status with this command:

    kubectl get pods --nampespace=<your-namespace> -w
    
  6. As soon as all pods are back running, verify the upgrade by checking the permissions on volume mounts or by running the required tests.

    Note

    If rootToRootlessUpgrade is set to true and the image tag is not rootless, then this error message is displayed:

    ERROR: Root to Rootless Upgrade is supported only if rootToRootlessUpgrade flag is true and image type is rootless