您可以使用管理中心控制台或 kubectl
创建用户集群。
无论使用哪种方式,集群最多可能需要 10 分钟来引导并准备就绪。 在等待期间,您可以使用以下命令检查用户集群的状态:
kubectl get Cluster -n USER_CLUSTER_NAME --kubeconfig=ADMIN_KUBECONFIG
将 USER_CLUSTER_NAME 替换为您创建的集群的名称。
当集群的状态为 ready
时,即表示用户集群已成功创建并注册到管理员集群。 创建用户集群后,您可以从管理中心下载 kubeconfig 文件。
管理中心
在 Anthos 不公开模式管理中心的集群部分中,点击创建按钮以创建新的 Anthos 用户集群。
使用集群配置页面配置新的用户集群:
创建集群后,它会自动在 Anthos 不公开模式管理中心内注册,并且会立即显示在集群信息中心内。
kubectl
使用以下命令创建要注册到管理员集群的 Cluster 和 NodePool 资源:
kubectl apply -f USER_CLUSTER_YAML --kubeconfig=ADMIN_KUBECONFIG
请替换以下内容:
- USER_CLUSTER_YAML:用户集群和节点池的 YAML 清单。请参阅用户集群和节点池示例配置文件。
- ADMIN_KUBECONFIG:管理员集群 kubeconfig 文件。
如果您要使用管理员集群配置文件作为用户集群配置的基础,请修改用户集群配置文件中的以下字段:
- 移除顶端的
sshPrivateKeyPath
、privateRegistry
、privateRegistryConfigPath
、privateRegistryTLSCertPath
字段。 - 确保
<cluster-name>
在配置之间保持一致。 - Cluster.spec.type 应为用户,这与管理员集群的集群类型不同。
- Cluster.metadata.namespace 应为
cluster-<cluster-name>
,其中<cluster-name>
是要创建的用户集群的名称。 - 确保
Cluster.spec.loadBalancer.vips.controlPlaneVIP
、Cluster.spec.loadBalancer.vips.ingressVIP
和Cluster.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 应与集群中的集群名称匹配。