创建用户集群

本页面适用于平台管理员

您可以使用 Anthos Management Center Console 或 kubectl 创建用户集群。

准备工作

在创建集群之前,确保基础架构运维者已注册所需的机器和 VIP 资源。

管理中心

  1. 在 Management Center Console 中,打开集群菜单。

  2. 集群页面中,点击 创建集群以创建新的 Anthos 用户集群。

  3. 使用集群配置页面配置新的用户集群:

    添加集群

  4. 使用 添加节点池按钮向集群添加节点池。使用节点池表单为节点池命名,并将工作器节点分配给节点池。

创建集群后,它会自动注册到管理中心,并立即显示在集群信息中心内。

kubectl

使用以下命令创建要注册到管理员集群的 Cluster 和 NodePool 资源:

kubectl apply -f USER_CLUSTER_YAML --kubeconfig=ADMIN_KUBECONFIG

请替换以下内容:

  • USER_CLUSTER_YAML:用户集群和节点池的 YAML 清单。请参阅用户集群和节点池示例配置文件。
  • ADMIN_KUBECONFIG:管理员集群 kubeconfig 文件。

如果您要使用管理员集群配置文件作为用户集群配置的基础,请修改用户集群配置文件中的以下字段:

  • 移除顶端的 sshPrivateKeyPathprivateRegistryprivateRegistryConfigPathprivateRegistryTLSCertPath 字段。
  • 确保 <cluster-name> 在配置之间保持一致。
  • Cluster.spec.type 应为用户,这与管理员集群的集群类型不同。
  • Cluster.metadata.namespace 应为 cluster-<cluster-name>,其中 <cluster-name> 是要创建的用户集群的名称。
  • 确保 Cluster.spec.loadBalancer.vips.controlPlaneVIPCluster.spec.loadBalancer.addressPools 不与其他集群的配置重叠。
  • Cluster.spec.loadBalancer.addressPools 包含分配给 LoadBalancer 类型的服务的 IP 地址范围。它可以接受多个地址池。创建多个具有不同名称的地址池后,您便可以创建服务并为每项服务分配特定的地址池。在创建服务时,您需要向服务的注释添加 metallb.universe.tf/address-pool: <address-pool-name>。如果稍后需要扩展服务使用的范围,可以通过修改用户集群 kubectl edit cluster user-cluster-name --kubeconfig admin_kubeconfig -n user-cluster-name 来添加其他地址池。您无法更改现有地址池。下面给出了一个示例。
  • Nodepool.metadata.name 应采用 <cluster-name>-worker-node-pool 格式。
  • Nodepool.metadata.namespace 应为 cluster-<cluster-name>,metadata.name 应与集群中的集群名称匹配。
  loadBalancer:
    addressPools:
    - addresses:
      - 10.200.0.112-10.200.0.119
      name: pool1
    - addresses:
      - 10.200.0.120-10.200.0.121
      name: pool2

验证集群状态

集群最多可能需要 15 分钟才能引导完毕并准备就绪。在等待期间,您可以使用以下命令检查用户集群的状态:

kubectl get Cluster -n cluster-USER_CLUSTER_NAME --kubeconfig=ADMIN_KUBECONFIG

USER_CLUSTER_NAME 替换为您创建的集群的名称。

当集群的状态为 ready 时,即表示用户集群已成功创建并注册到管理员集群。

下载 kubeconfig 文件

创建用户集群后,您可以从管理中心下载 kubeconfig 文件。

  1. 在 Management Center Console 中,打开集群菜单。
  2. 集群页面中,点击集群名称。
  3. 集群配置页面中,下载 kubeconfig 文件:
    • 基础架构运维者和平台管理员可以点击下载根 kubeconfig
    • 只读用户可以点击下载只读 kubeconfig

kubeconfig 文件将下载到您的系统。