Disable Hierarchy Controller

Disabling Hierarchy Controller on your clusters lets you upgrade Config Sync to newer supported versions. Because Hierarchy Controller is no longer available, Config Sync blocks upgrades if the component remains installed on a cluster.

Before you begin

To determine how to disable Hierarchy Controller, inspect the kubectl ConfigManagement object or gcloud apply spec file and take an action that corresponds to the value in the following fields:

  • hierarchyController.enablePodTreeLabels: if true, and you previously enabled hierarchical observability, don't proceed with the steps in this document. Instead, contact Cloud Customer Care for help removing Hierarchy Controller.
  • hierarchyController.enabled: if true, follow the instructions in Disable Hierarchy Controller.

Disable Hierarchy Controller

When you disable Hierarchy Controller, Config Sync deletes the Hierarchy Controller components in your cluster but doesn't delete the Hierarchy Controller CustomResourceDefinitions. You must manually remove those CustomResourceDefinitions by using the kubectl command-line tool:

  • HierarchyConfiguration
  • HNCConfiguration
  • SubnamespaceAnchor
  • HierarchicalResourceQuota

To remove the Hierarchy Controller fields, review the instructions for the method that you used to install Hierarchy Controller:

gcloud

Remove the hierarchyController block from your Google Cloud CLI apply spec file.

Terraform

Remove the hierarchyController block from your Terraform resource.

Config Connector

Set Hierarchy Controller fields to false in the GKEHubFeatureMembership resource.

kubectl

Remove the hierarchyController block from the ConfigManagement object.