Node join configuration file

A YAML file can be supplied to the k8s join-cluster command to configure and customize new worker and control plane nodes.

Control plane configuration options

extra-sans

Type: []string

List of extra SANs to be added to certificates.

front-proxy-client-crt

Type: string

The client certificate to be used for the front proxy. If omitted defaults to an auto generated certificate.

front-proxy-client-key

Type: string

The client key to be used for the front proxy. If omitted defaults to an auto generated key.

admin-client-crt

Type: string

The admin client certificate to be used for Kubernetes services. If omitted defaults to an auto generated certificate.

admin-client-key

Type: string

The admin client key to be used for Kubernetes services. If omitted defaults to an auto generated key.

kube-proxy-client-crt

Type: string

Deprecated since version 1.36: This field is no longer used. Canonical Kubernetes uses Cilium’s kube-proxy replacement and does not run kube-proxy. This field is accepted for backward compatibility and used when the default CNI (Cilium) is not in use.

The client certificate to be used by kubelet for communicating with the kube-apiserver. If omitted defaults to an auto generated certificate.

kube-proxy-client-key

Type: string

Deprecated since version 1.36: This field is no longer used. Canonical Kubernetes uses Cilium’s kube-proxy replacement and does not run kube-proxy. This field is accepted for backward compatibility and used when the default CNI (Cilium) is not in use.

The client key to be used by kubelet for communicating with the kube-apiserver. If omitted defaults to an auto generated key.

kube-scheduler-client-crt

Type: string

The client certificate to be used for the kube-scheduler. If omitted defaults to an auto generated certificate.

kube-scheduler-client-key

Type: string

The client key to be used for the kube-scheduler. If omitted defaults to an auto generated key.

kube-controller-manager-client-crt

Type: string

The client certificate to be used for the Kubernetes controller manager. If omitted defaults to an auto generated certificate.

kube-controller-manager-client-key

Type: string

The client key to be used for the Kubernetes controller manager. If omitted defaults to an auto generated key.

apiserver-crt

Type: string

The certificate to be used for the kube-apiserver. If omitted defaults to an auto generated certificate.

apiserver-key

Type: string

The key to be used for the kube-apiserver. If omitted defaults to an auto generated key.

kubelet-crt

Type: string

The certificate to be used for the kubelet. If omitted defaults to an auto generated certificate.

kubelet-key

Type: string

The key to be used for the kubelet. If omitted defaults to an auto generated key.

kubelet-client-crt

Type: string

The client certificate to be used for the kubelet. If omitted defaults to an auto generated certificate.

kubelet-client-key

Type: string

The client key to be used for the kubelet. If omitted defaults to an auto generated key.

disable-system-tuning

Type: bool

Determines whether system tuning is allowed. If omitted defaults to true.

etcd-server-crt

Type: string

The certificate to be used for the etcd server.

etcd-server-key

Type: string

The key to be used for the etcd server.

etcd-peer-crt

Type: string

The certificate to be used for the etcd server peer communication.

etcd-peer-key

Type: string

The key to be used for the etcd server peer communication.

extra-node-config-files

Type: map[string]string

Additional files that are uploaded /var/snap/k8s/common/args/conf.d/<filename> to a node on bootstrap. These files can then be referenced by Kubernetes service arguments.

The format is map[<filename>]<filecontent>.

extra-node-kube-apiserver-args

Type: map[string]string

Additional arguments that are passed to the kube-apiserver only for that specific node. A parameter that is explicitly set to null is deleted. The format is map[<--flag-name>]<value>.

extra-node-kube-controller-manager-args

Type: map[string]string

Additional arguments that are passed to the kube-controller-manager only for that specific node. A parameter that is explicitly set to null is deleted. The format is map[<--flag-name>]<value>.

extra-node-kube-scheduler-args

Type: map[string]string

Additional arguments that are passed to the kube-scheduler only for that specific node. A parameter that is explicitly set to null is deleted. The format is map[<--flag-name>]<value>.

extra-node-kube-proxy-args

Type: map[string]string

Deprecated since version 1.36: This field is no longer used. Canonical Kubernetes uses Cilium’s kube-proxy replacement and does not run kube-proxy. This field is accepted for backward compatibility and used when the default CNI (Cilium) is not in use.

Additional arguments that are passed to the kube-proxy only for that specific node. A parameter that is explicitly set to null is deleted. The format is map[<--flag-name>]<value>.

extra-node-kubelet-args

Type: map[string]string

Additional arguments that are passed to the kubelet only for that specific node. A parameter that is explicitly set to null is deleted. The format is map[<--flag-name>]<value>.

extra-node-containerd-args

Type: map[string]string

Additional arguments that are passed to containerd only for that specific node. A parameter that is explicitly set to null is deleted. The format is map[<--flag-name>]<value>.

extra-node-etcd-args

Type: map[string]string

Additional arguments that are passed to etcd only for that specific node. A parameter that is explicitly set to null is deleted. The format is map[<--flag-name>]<value>.

extra-node-containerd-config

Type: api.MapStringAny

Extra configuration for the containerd config.toml

containerd-base-dir

Type: string

The base directory in which the containerd-related files are located.


Worker configuration options

kubelet-crt

Type: string

The certificate to be used for the kubelet. If omitted defaults to an auto generated certificate.

kubelet-key

Type: string

The key to be used for the kubelet. If omitted defaults to an auto generated key.

kubelet-client-crt

Type: string

The client certificate to be used for the kubelet. If omitted defaults to an auto generated certificate.

kubelet-client-key

Type: string

The client key to be used for the kubelet. If omitted defaults to an auto generated key.

kube-proxy-client-crt

Type: string

Deprecated since version 1.36: This field is no longer used. Canonical Kubernetes uses Cilium’s kube-proxy replacement and does not run kube-proxy. This field is accepted for backward compatibility and used when the default CNI (Cilium) is not in use.

The client certificate to be used for the kube-proxy. If omitted defaults to an auto generated certificate.

kube-proxy-client-key

Type: string

Deprecated since version 1.36: This field is no longer used. Canonical Kubernetes uses Cilium’s kube-proxy replacement and does not run kube-proxy. This field is accepted for backward compatibility and used when the default CNI (Cilium) is not in use.

The client key to be used for the kube-proxy. If omitted defaults to an auto generated key.

disable-system-tuning

Type: bool

Determines whether system tuning is allowed. If omitted defaults to true.

extra-node-config-files

Type: map[string]string

Additional files that are uploaded /var/snap/k8s/common/args/conf.d/<filename> to a node on bootstrap. These files can then be referenced by Kubernetes service arguments.

The format is map[<filename>]<filecontent>.

extra-node-kube-proxy-args

Type: map[string]string

Deprecated since version 1.36: This field is no longer used. Canonical Kubernetes uses Cilium’s kube-proxy replacement and does not run kube-proxy. This field is accepted for backward compatibility and used when the default CNI (Cilium) is not in use.

Additional arguments that are passed to the kube-proxy only for that specific node. A parameter that is explicitly set to null is deleted. The format is map[<--flag-name>]<value>.

extra-node-kubelet-args

Type: map[string]string

Additional arguments that are passed to the kubelet only for that specific node. A parameter that is explicitly set to null is deleted. The format is map[<--flag-name>]<value>.

extra-node-containerd-args

Type: map[string]string

Additional arguments that are passed to containerd only for that specific node. A parameter that is explicitly set to null is deleted. The format is map[<--flag-name>]<value>.

extra-node-k8s-apiserver-proxy-args

Type: map[string]string

Additional arguments that are passed to k8s-api-server-proxy only for that specific node. A parameter that is explicitly set to null is deleted. The format is map[<--flag-name>]<value>.

extra-node-containerd-config

Type: api.MapStringAny

Extra configuration for the containerd config.toml

containerd-base-dir

Type: string

The base directory in which the containerd-related files are located.