private ClusterControllerContainerCluster addConfiguredClusterControllers(DeployState deployState,
                                                                              TreeConfigProducer<?> parent,
                                                                              Element admin) {
        Element controllersElements = XML.getChild(admin, "cluster-controllers");
        if (controllersElements == null) return null;

        List<Element> controllers = XML.getChildren(controllersElements, "cluster-controller");
        if (controllers.isEmpty()) return null;

        boolean standaloneZooKeeper = "true".equals(controllersElements.getAttribute(ATTRIBUTE_CLUSTER_CONTROLLER_STANDALONE_ZK)) || multitenant;
        if (standaloneZooKeeper) {
            parent = new ClusterControllerCluster(parent, "standalone", deployState);
        }
        var cluster = new ClusterControllerContainerCluster(parent,
                                                            "cluster-controllers",
                                                            "cluster-controllers",
                                                            deployState);

        List<ClusterControllerContainer> containers = new ArrayList<>();

        for (Element controller : controllers) {
            ClusterControllerContainer clusterController = new ClusterControllerBuilder(containers.size(), standaloneZooKeeper).build(deployState, cluster, controller);
            containers.add(clusterController);
        }

        cluster.addContainers(containers);
        return cluster;
    }
Builds the admin model from a V2 admin XML tag.

@author vegardh
config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminV2Builder.java