Update from 1.4.0-H1 or 1.4.1 to 1.5.0 (ECS)

You can update your existing CDP Private Cloud Data Services 1.4.0-H1 or 1.4.1 to 1.5.0 without performing an uninstall.

  • Run the following commands on the ECS server hosts:
    TOLERATION='{"spec": { "template": {"spec": { "tolerations": [{ "effect": "NoSchedule","key": "node-role.kubernetes.io/control-plane","operator": "Exists" }]}}}}'
    
    kubectl patch deployment/yunikorn-admission-controller -n yunikorn -p "$TOLERATION"
    
    kubectl patch deployment/yunikorn-scheduler -n yunikorn -p "$TOLERATION"
  • Upgrading the Embedded Container Service (ECS) version, while CDE service is enabled, it fails to launch the Jobs page in the old CDE virtual cluster. You must back up CDE jobs in the CDE virtual cluster, and then delete the CDE service and CDE virtual cluster. Restore it after the upgrade. For more information about backup and restore CDE jobs, see Backing up and restoring CDE jobs.
  1. In Cloudera Manager, navigate to CDP Private Cloud Data Services and click the icon, then click Update.
  2. On the Getting Started page, you can select the Install method - Air Gapped or Internet and proceed.

    Internet install method

    Air Gapped install method

    Click Continue.

  3. On the Collect Information page, click Continue.
  4. On the Install Parcels page, click Continue.
  5. On the Update Progress page, you can see the progress of your update. Click Continue after the update is complete .


  6. After the update is complete, the Summary page appears. You can now Launch CDP Private Cloud from here.
    If you see a Longhorn Health Test message about a degraded Longhorn volume, wait for the cluster repair to complete.

    Or you can navigate to the CDP Private Cloud Data Services page and click Open CDP Private Cloud Data Services.

    CDP Private Cloud Data Services opens up in a new window.
  • If the upgrade stalls, do the following:
    1. Check the status of all pods by running the following command on the ECS server node:
      kubectl get pods --all-namespaces 
    2. If there are any pods stuck in “Terminating” state, then force terminate the pod using the following command:
      kubectl delete pods <NAME OF THE POD> -n <NAMESPACE> --grace-period=0 —force 

      If the upgrade still does not resume, continue with the remaining steps.

    3. In the Cloudera Manager Admin Console, go to the ECS service and click Web UI > Storage UI.

      The Longhorn dashboard opens.

    4. Check the "in Progress" section of the dashboard to see whether there are any volumes stuck in the attaching/detaching state in. If a volume is that state, reboot its host.

  • You may see the following error message during the Upgrade Cluster > Reapplying all settings > kubectl-patch :
    kubectl rollout status deployment/rke2-ingress-nginx-controller -n kube-system --timeout=5m
    error: timed out waiting for the condition
    If you see this error, do the following:
    1. Check whether all the Kubernetes nodes are ready for scheduling. Run the following command from the ECS Server node:
      kubectl get nodes
      You will see output similar to the following:
      NAME STATUS ROLES AGE VERSION
      <node1> Ready,SchedulingDisabled control-plane,etcd,master 103m v1.21.11+rke2r1
      <node2> Ready <none> 101m v1.21.11+rke2r1
      <node3> Ready <none> 101m v1.21.11+rke2r1
      <node4> Ready <none> 101m v1.21.11+rke2r1
    2. Run the following command from the ECS Server node for the node showing a status of SchedulingDisabled:
      kubectl uncordon 
      You will see output similar to the following:
      <node1>node/<node1> uncordoned
    3. Scale down and scale up the rke2-ingress-nginx-controller pod by running the following command on the ECS Server node:
      kubectl delete pod  rke2-ingress-nginx-controller-<pod number> -n kube-system
    4. Resume the upgrade.
  • If you specified a custom certificate, select the ECS cluster in Cloudera Manager, then select Actions > Update Ingress Controller. This command copies the cert.pem and key.pem files from the Cloudera Manager server host to the ECS Management Console host.