Docker Enterprise Container Cloud release controller

Docker Enterprise Container Cloud release controller

The Docker Enterprise (DE) Container Cloud release controller is responsible for the following functionality:

  • Monitor and control the KaaSRelease and ClusterRelease objects present in a management cluster. If any release object is used in a cluster, the release controller prevents the deletion of such an object.

  • Sync the KaaSRelease and ClusterRelease objects published at https://binary.mirantis.com/releases/ with an existing management cluster.

  • Trigger the DE Container Cloud auto-upgrade procedure if a new KaaSRelease object is found:

    1. Search for the managed clusters with old Cluster releases that are not supported by a new DE Container Cloud release. If any are detected, abort the auto-upgrade and display a corresponding note about an old Cluster release in the DE Container Cloud web UI for the managed clusters. In this case, a user must update all managed clusters using the DE Container Cloud web UI. Once all managed clusters are upgraded to the Cluster releases supported by a new DE Container Cloud release, the DE Container Cloud auto-upgrade is retriggered by the release controller.

    2. Trigger the DE Container Cloud release upgrade of all DE Container Cloud components in a management cluster. The upgrade itself is processed by the DE Container Cloud provider.

    3. Trigger the Cluster release upgrade of a management cluster to the Cluster release version that is indicated in the upgraded DE Container Cloud release version.

    4. Verify the regional cluster(s) status. If the regional cluster is ready, trigger the Cluster release upgrade of the regional cluster.

      Once a management cluster is upgraded, an option to update a managed cluster becomes available in the DE Container Cloud web UI. During a managed cluster update, all cluster components including Kubernetes are automatically upgraded to newer versions if available.