8.2. 将集群添加到 ManagedClusterSet

创建 ManagedClusterSet 后,您必须添加一个或多个受管集群。完成以下步骤以添加受管集群:

  1. 确保有一个 RBAC ClusterRole 条目,供您在 managedclustersets/join 的虚拟子资源上 创建。没有这个权限,就无法将受管集群分配给 ManagedClusterSet

    如果此条目不存在,请将其添加到您的 yaml 文件中。示例条目类似以下内容:

    kind: ClusterRole
    apiVersion: rbac.authorization.k8s.io/v1
    metadata:
      name: clusterrole1
    rules:
      - apiGroups: ["cluster.open-cluster-management.io"]
        resources: ["managedclustersets/join"]
        resourceNames: ["clusterset1"]
        verbs: ["create"]

    clusterset1 替换为 ManagedClusterSet 的名称。

    备注:如果要将受管集群从一个 ManagedClusterSet 移到另一个,则必须在两个 ManagedClusterSet 中都有该权限。

  2. yaml 文件中查找受管集群的定义。在受管集群定义的这个部分添加与以下内容类似的标签:

    apiVersion: cluster.open-cluster-management.io/v1
    kind: ManagedCluster
    metadata:
      name: cluster1
    spec:
      hubAcceptsClient: true

    在本例中,cluster1 是受管集群的名称。

  3. 添加一个标签,指定 ManagedClusterSet,格式为: cluster.open-cluster-management.io/clusterset: clusterset1

    您的代码类似以下示例:

    apiVersion: cluster.open-cluster-management.io/v1
    kind: ManagedCluster
    metadata:
      name: cluster1
      labels:
        cluster.open-cluster-management.io/clusterset: clusterset1
    spec:
      hubAcceptsClient: true

    在本例中,cluster1 是添加到 clusterset1 ManagedClusterSet 的集群。

    备注:如果受管集群之前分配给了一个已删除的 ManagedClusterSet,受管集群可能会有一个 ManagedClusterSet 已被指定到不存在的集群集合。如果出现这种情况,请用新名称替换。