创建用户集群

您可以使用管理中心控制台或 kubectl 创建用户集群。

无论使用哪种方式,集群最多可能需要 10 分钟来引导并准备就绪。 在等待期间,您可以使用以下命令检查用户集群的状态:

kubectl get Cluster -n USER_CLUSTER_NAME --kubeconfig=ADMIN_KUBECONFIG

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

当集群的状态为 ready 时,即表示用户集群已成功创建并注册到管理员集群。 创建用户集群后,您可以从管理中心下载 kubeconfig 文件。

管理中心

  1. 在 Anthos 不公开模式管理中心的集群部分中,点击创建按钮以创建新的 Anthos 用户集群。

    空的集群页面

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

    添加集群

创建集群后,它会自动在 Anthos 不公开模式管理中心内注册,并且会立即显示在集群信息中心内。

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.vips.ingressVIPCluster.spec.loadBalancer.addressPools 不与其他集群的配置重叠。
  • Cluster.spec.loadBalancer.addressPools 可以接受多个地址池。创建多个具有不同名称的地址池后,您便可以创建服务并为每项服务分配特定的地址池。在创建服务时,您需要向服务的注释添加 metallb.universe.tf/address-pool: <address-pool-name>
  • Nodepool.metadata.name 应采用 <cluster-name>-worker-node-pool 格式。
  • Nodepool.metadata.namespace 应为 cluster-<cluster-name>,metadata.name 应与集群中的集群名称匹配。