A user cluster is the Kubernetes cluster where application workloads run. In an Anthos on bare metal deployment, it has control plane nodes and worker nodes; an admin cluster manages its installation, updates, upgrades, and deletion. Keep application services off a dedicated admin cluster so they cannot interfere with cluster administration. section 17.2.1 section 5.2
Bare metal user-cluster control planes are separate from the admin cluster. A standalone deployment instead uses one cluster for both roles. For production, plan high availability for the control plane and application workers: the described HA control plane needs at least three nodes, while highly available applications need at least two workers. Single-node control planes are reserved for nonproduction workloads. section 17.2.1
To add a bare metal user cluster after creating an admin or hybrid cluster:
- Generate a template with `bmctl create config -c CLUSTER_NAME`, then configure its Cluster and NodePool resources. Set the Cluster type to `user`. section 17.4.2
- Remove the GCP credential-key paths: the user cluster uses credentials supplied when the admin or hybrid cluster was created. Assign control-plane, load-balancer, and node-pool addresses that do not overlap with the first cluster’s addresses. section 17.4.2
- Create it with `bmctl create cluster -c CLUSTER_NAME --kubeconfig ADMIN_KUBECONFIG`, then retrieve its kubeconfig from the secret in the admin cluster. section 17.4.2
--- apiVersion: baremetal.cluster.gke.io/v1 kind: Cluster metadata: name: user-cluster namespace: cluster-user-cluster spec: # Cluster type. This can be: type: user
The Cluster manifest marks the new cluster as a user cluster with `spec.type: user`. section 17.4.2
Upgrade the admin or hybrid cluster first. Then change the version in the user-cluster configuration and run `bmctl upgrade cluster -c CLUSTER_NAME --kubeconfig ADMIN_KUBECONFIG`. Keep admin and user kubeconfig contexts distinct during operations; on-prem deployments provide a user-cluster kubeconfig as well as admin-cluster configurations. section 17.5.2 section 3.2 section 5.2
