Cluster Configurator
A Cluster API object, extended by Syself for Hetzner Cloud and bare metal. The reference below shows only the fields you can and should set, anything Cluster API exposes that Syself does not use is left out.
Looking to upgrade your cluster? You're in the wrong place.
This page is for creating a new cluster from scratch. If you're upgrading an existing cluster, follow the Upgrade guide instead and make sure the version picker above matches your cluster's Cluster Stack Release.
API Overview
cluster.x-k8s.io/v1beta2ClusterCluster configuration
Identity, networking, authentication, encryption, and control plane configuration for the cluster.
The name of the Cluster object. Used to identify this cluster within the management cluster.
The namespace for your organization, in the format org-<your-company-name>, find the exact value in your account setup email. It must match the namespace your ClusterClass lives in. See account setup guide
Labels on the Cluster object itself, labels are a standard Kubernetes concept that exists on any Kubernetes object and have no effect on the cluster itself. They can be useful for filtering cluster objects and are not propagated to nodes.
Annotations on the Cluster object itself. Annotations are a standard Kubernetes concept that exists on any Kubernetes object and have no effect on the cluster itself. They can be used to attach arbitrary metadata to objects.
References a specific Cluster Stack release. To choose a release for a new cluster, see Cluster Stacks. Updating this value upgrades the cluster's Kubernetes version. To upgrade an existing cluster, go to the upgrade guide and follow the steps.
Change the release with the version selector, or follow the Upgrade Guide for an existing cluster.
Configuration for the machines running the cluster's control plane, the Kubernetes API server and core components.
Hetzner load balancer size for control plane API traffic. This size also applies to an existing load balancer and may resize it. If unset, the default size lb11 applies. See the load balancer guide
Hetzner location for the control plane's load balancer. On HCloud, this also places the control plane's servers. Machine deployments default to this same location unless they set their own failureDomain. See Hetzner's location list
Which infrastructure backs the control plane. One of hcloud or hetznerbaremetal.
Hetzner server type for control plane machines. See the server sizing guide
Number of control plane nodes. See the HA control plane guide
Names a placement group for the control plane's machines, spread across separate physical hosts for fault tolerance. Whatever name you type here, automatically shows up in the Placement groups section of Cluster configuration.
We recommend giving the control plane its own placement group, separate from worker pools this way a growing worker pool can never push it past the 10-server limit.
Labels for the control plane, merged onto the actual Control Plane Machines it creates. See: node labels
Cluster networking configuration. Syself templates a working default for the service CIDR, pod CIDR and service domain, shown for reference, they're not meant to be edited. See pod and service subnet guide.
No placement groups yet. Name one on the control plane or a machine deployment and it appears here.
OpenID Connect (OIDC) lets you delegate cluster authentication to an external identity provider. First complete the OIDC setup in your identity provider (Keycloak, Authentik, etc.) and then set these variables on the cluster. OIDC does not have to be enabled at cluster creation, it can be configured later. See the OIDC guide.
Protects sensitive data stored in your cluster. etcd encryption-at-rest ensures Secrets, ConfigMaps, and other resources in etcd can't be read from raw disk or backups. KubeGate restricts which source IPs can reach the Kubernetes API server.
Cluster resources
The worker machine deployments that make up this cluster.
Generated from the position in the list, and yours to rename. Unique within the cluster.
Selects the infrastructure this machine deployment runs on.
Which Hetzner location this machine deployment's machines are placed in.
Required when class is workeramd64hcloud. Hetzner server type for this machine deployment. See: HCloud server management
Number of worker nodes in this machine deployment.
Names a placement group for this machine deployment's machines, spread across separate physical hosts for fault tolerance. Whatever name you type here, automatically shows up in the Placement groups section of Cluster configuration.
Labels for this machine deployment, merged onto the actual worker Machines it creates. See: node labels