kubeadm alpha
provides a preview of a set of features made available for gathering feedback
from the community. Please try it out and give us feedback!
In v1.8.0, kubeadm introduced the kubeadm alpha phase
command with the aim of making kubeadm more modular. This modularity enables you to invoke atomic sub-steps of the bootstrap process; you can let kubeadm do some parts and fill in yourself where you need customizations.
kubeadm alpha phase
is consistent with kubeadm init workflow,
and behind the scene both use the same code.
You can execute preflight checks both for the master node, like in kubeadm init
, or for the worker node
like in kubeadm join
.
Run master pre-flight checks
Run master pre-flight checks, functionally equivalent to what implemented by kubeadm init.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase preflight master
# Run master pre-flight checks.
kubeadm alpha phase preflight master
Run node pre-flight checks
Run node pre-flight checks, functionally equivalent to what implemented by kubeadm join.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase preflight node
# Run node pre-flight checks.
kubeadm alpha phase preflight node
You can create all required certificates with the all
subcommand or selectively create certificates.
Generates all PKI assets necessary to establish the control plane
Generates a self-signed CA to provision identities for each component in the cluster (including nodes) and client certificates to be used by various components.
If a given certificate and private key pair both exist, kubeadm skips the generation step and existing files will be used.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase certs all
# Creates all PKI assets necessary to establish the control plane,
# functionally equivalent to what generated by kubeadm init.
kubeadm alpha phase certs all
# Creates all PKI assets using options read from a configuration file.
kubeadm alpha phase certs all --config masterconfiguration.yaml
--apiserver-advertise-address string The IP address the API server is accessible on, to use for the API server serving cert
--apiserver-cert-extra-sans stringSlice Optional extra altnames to use for the API server serving cert. Can be both IP addresses and dns names
--cert-dir string The path where to save the certificates (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
--service-cidr string Alternative range of IP address for service VIPs, from which derives the internal API server VIP that will be added to the API Server serving cert (default "10.96.0.0/12")
--service-dns-domain string Alternative domain for services, to use for the API server serving cert (default "cluster.local")
Generates self-signed CA to provision identities for each component in the cluster
Generates the self-signed certificate authority and related key, and saves them into ca.crt and ca.key files.
If both files already exist, kubeadm skips the generation step and existing files will be used.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase certs ca
--cert-dir string The path where to save the certificates (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
Generates API server serving certificate and key
Generates the API server serving certificate and key and saves them into apiserver.crt and apiserver.key files.
The certificate includes default subject alternative names and additional sans eventually provided by the user; default sans are: {node-name}, {apiserver-advertise-address}, kubernetes, kubernetes.default, kubernetes.default.svc, kubernetes.default.svc. {service-dns-domain}, {internalAPIServerVirtualIP}(that is the .10 address in {service-cidr} address space).
If both files already exist, kubeadm skips the generation step and existing files will be used.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase certs apiserver
--apiserver-advertise-address string The IP address the API server is accessible on, to use for the API server serving cert
--apiserver-cert-extra-sans stringSlice Optional extra altnames to use for the API server serving cert. Can be both IP addresses and dns names
--cert-dir string The path where to save the certificates (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
--service-cidr string Alternative range of IP address for service VIPs, from which derives the internal API server VIP that will be added to the API Server serving cert (default "10.96.0.0/12")
--service-dns-domain string Alternative domain for services, to use for the API server serving cert (default "cluster.local")
Generates client certificate for the API server to connect to the kubelets securely
Generates the client certificate for the API server to connect to the kubelet securely and the respective key, and saves them into apiserver-kubelet-client.crt and apiserver-kubelet-client.key files.
If both files already exist, kubeadm skips the generation step and existing files will be used.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase certs apiserver-kubelet-client
--cert-dir string The path where to save the certificates (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
Generates a private key for signing service account tokens along with its public key
Generates the private key for signing service account tokens along with its public key, and saves them into sa.key and sa.pub files.
If both files already exist, kubeadm skips the generation step and existing files will be used.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase certs sa
--cert-dir string The path where to save the certificates (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
Generates front proxy CA certificate and key for a Kubernetes cluster
Generates the front proxy CA certificate and key and saves them into front-proxy-ca.crt and front-proxy-ca.key files.
If both files already exist, kubeadm skips the generation step and existing files will be used.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase certs front-proxy-ca
--cert-dir string The path where to save the certificates (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
Generates front proxy CA client certificate and key for a Kubernetes cluster
Generates the front proxy client certificate and key and saves them into front-proxy-client.crt and front-proxy-client.key files.
If both files already exist, kubeadm skips the generation step and existing files will be used.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase certs front-proxy-client
--cert-dir string The path where to save the certificates (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
You can create all required kubeconfig files with the all
subcommand, or selectively create the files.
Additionally, the user
subcommand supports the creation of kubeconfig files for additional users.
Generates all kubeconfig files necessary to establish the control plane and the admin kubeconfig file
Generates all kubeconfig files necessary to establish the control plane and the admin kubeconfig file.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase kubeconfig all
# Generates all kubeconfig files, functionally equivalent to what generated
# by kubeadm init.
kubeadm alpha phase kubeconfig all
# Generates all kubeconfig files using options read from a configuration file.
kubeadm alpha phase kubeconfig all --config masterconfiguration.yaml
--apiserver-advertise-address string The IP address the API server is accessible on
--apiserver-bind-port int32 The port the API server is accessible on (default 6443)
--cert-dir string The path where certificates are stored (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
--kubeconfig-dir string The port where to save the kubeconfig file (default "/etc/kubernetes")
--node-name string The node name that should be used for the kubelet client certificate
Generates a kubeconfig file for the admin to use and for kubeadm itself
Generates the kubeconfig file for the admin and for kubeadm itself, and saves it to admin.conf file.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase kubeconfig admin
--apiserver-advertise-address string The IP address the API server is accessible on
--apiserver-bind-port int32 The port the API server is accessible on (default 6443)
--cert-dir string The path where certificates are stored (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
--kubeconfig-dir string The port where to save the kubeconfig file (default "/etc/kubernetes")
Generates a kubeconfig file for the kubelet to use. Please note that this should be used only for bootstrapping purposes.
Generates the kubeconfig file for the kubelet to use and saves it to /etc/kubernetes/kubelet.conf file.
Please note that this should only be used for bootstrapping purposes. After your control plane is up, you should request all kubelet credentials from the CSR API.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase kubeconfig kubelet
--apiserver-advertise-address string The IP address the API server is accessible on
--apiserver-bind-port int32 The port the API server is accessible on (default 6443)
--cert-dir string The path where certificates are stored (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
--kubeconfig-dir string The port where to save the kubeconfig file (default "/etc/kubernetes")
--node-name string The node name that should be used for the kubelet client certificate
Generates a kubeconfig file for the controller manager to use
Generates the kubeconfig file for the controller manager to use and saves it to /etc/kubernetes/controller-manager.conf file.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase kubeconfig controller-manager
--apiserver-advertise-address string The IP address the API server is accessible on
--apiserver-bind-port int32 The port the API server is accessible on (default 6443)
--cert-dir string The path where certificates are stored (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
--kubeconfig-dir string The port where to save the kubeconfig file (default "/etc/kubernetes")
Generates a kubeconfig file for the scheduler to use
Generates the kubeconfig file for the scheduler to use and saves it to /etc/kubernetes/scheduler.conf file.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase kubeconfig scheduler
--apiserver-advertise-address string The IP address the API server is accessible on
--apiserver-bind-port int32 The port the API server is accessible on (default 6443)
--cert-dir string The path where certificates are stored (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
--kubeconfig-dir string The port where to save the kubeconfig file (default "/etc/kubernetes")
Outputs a kubeconfig file for an additional user
Outputs a kubeconfig file for an additional user.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase kubeconfig user
# Outputs a kubeconfig file for an additional user named foo
kubeadm alpha phase kubeconfig user --client-name=foo
--apiserver-advertise-address string The IP address the API server is accessible on
--apiserver-bind-port int32 The port the API server is accessible on (default 6443)
--cert-dir string The path where certificates are stored (default "/etc/kubernetes/pki")
--client-name string The name of user. It will be used as the CN if client certificates are created
--kubeconfig-dir string The port where to save the kubeconfig file (default "/etc/kubernetes")
--token string The token that should be used as the authentication mechanism for this kubeconfig (instead of client certificates)
You can create all required static Pod files for the control plane components with the all
subcommand,
or selectively create the files.
Generates all static Pod manifest files necessary to establish the control plane
Generates all static Pod manifest files necessary to establish the control plane.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase controlplane all
# Generates all static Pod manifest files for control plane components,
# functionally equivalent to what generated by kubeadm init.
kubeadm alpha phase controlplane all
# Generates all static Pod manifest files using options read from a configuration file.
kubeadm alpha phase controlplane --config masterconfiguration.yaml
--apiserver-advertise-address string The IP address or DNS name the API server is accessible on
--apiserver-bind-port int32 The port the API server is accessible on (default 6443)
--cert-dir string The path where certificates are stored (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
--feature-gates string A set of key=value pairs that describe feature gates for various features. Options are:
CoreDNS=true|false (ALPHA - default=false)
DynamicKubeletConfig=true|false (ALPHA - default=false)
HighAvailability=true|false (ALPHA - default=false)
SelfHosting=true|false (BETA - default=false)
StoreCertsInSecrets=true|false (ALPHA - default=false)
SupportIPVSProxyMode=true|false (ALPHA - default=false)
--kubernetes-version string Choose a specific Kubernetes version for the control plane (default "stable-1.8")
--pod-network-cidr string The range of IP addresses used for the Pod network
--service-cidr string The range of IP address used for service VIPs (default "10.96.0.0/12")
Generates the API server static Pod manifest.
Generates the static Pod manifest file for the API server and saves it into /etc/kubernetes/manifests/kube-apiserver.yaml file.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase controlplane apiserver
--apiserver-advertise-address string The IP address or DNS name the API server is accessible on
--apiserver-bind-port int32 The port the API server is accessible on (default 6443)
--cert-dir string The path where certificates are stored (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
--feature-gates string A set of key=value pairs that describe feature gates for various features. Options are:
CoreDNS=true|false (ALPHA - default=false)
DynamicKubeletConfig=true|false (ALPHA - default=false)
HighAvailability=true|false (ALPHA - default=false)
SelfHosting=true|false (BETA - default=false)
StoreCertsInSecrets=true|false (ALPHA - default=false)
SupportIPVSProxyMode=true|false (ALPHA - default=false)
--kubernetes-version string Choose a specific Kubernetes version for the control plane (default "stable-1.8")
--service-cidr string The range of IP address used for service VIPs (default "10.96.0.0/12")
Generates the controller-manager static Pod manifest.
Generates the static Pod manifest file for the controller-manager and saves it into /etc/kubernetes/manifests/kube-controller-manager.yaml file.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase controlplane controller-manager
--cert-dir string The path where certificates are stored (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
--kubernetes-version string Choose a specific Kubernetes version for the control plane (default "stable-1.8")
--pod-network-cidr string The range of IP addresses used for the Pod network
Generates the scheduler static Pod manifest.
Generates the static Pod manifest file for the scheduler and saves it into /etc/kubernetes/manifests/kube-scheduler.yaml file.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase controlplane scheduler
--cert-dir string The path where certificates are stored (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
--kubernetes-version string Choose a specific Kubernetes version for the control plane (default "stable-1.8")
Use the following command to create a self-hosted, local etcd instance based on a static Pod file.
Generates the static Pod manifest file for a local, single-node etcd instance
Generates the static Pod manifest file for a local, single-node etcd instance and saves it to /etc/kubernetes/manifests/etcd.yaml file.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase etcd local
# Generates the static Pod manifest file for etcd, functionally
# equivalent to what generated by kubeadm init.
kubeadm alpha phase etcd local
# Generates the static Pod manifest file for etcd.
kubeadm alpha phase etcd local --config masterconfiguration.yaml
--cert-dir string The path where certificates are stored (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
Use the following command to label and taint the node with the node-role.kubernetes.io/master=""
key-value pair.
Mark a node as master
Applies a label that specifies that a node is a master and a taint that forces workloads to be deployed accordingly.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase mark-master
# Applies master label and taint to the current node, functionally equivalent to what executed by kubeadm init.
kubeadm alpha phase mark-master
# Applies master label and taint to a specific node
kubeadm alpha phase mark-master --node-name myNode
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
--kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf")
--node-name string The node name to which label and taints should apply
Use the following actions to fully configure bootstrap tokens.
You can fully configure bootstrap tokens with the all
subcommand,
or selectively configure single elements.
Makes all the bootstrap token configurations and creates an initial token
Bootstrap tokens are used for establishing bidirectional trust between a node joining the cluster and a the master node.
This command makes all the configurations required to make bootstrap tokens works and then creates an initial token.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase bootstrap-token all
# Makes all the bootstrap token configurations and creates an initial token, functionally
# equivalent to what generated by kubeadm init.
kubeadm alpha phase bootstrap-token all
--cert-dir string The path where certificates are stored (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
--description string A human friendly description of how this token is used. (default "The default bootstrap token generated by 'kubeadm init'.")
--groups stringSlice Extra groups that this token will authenticate as when used for authentication. Must match "system:bootstrappers:[a-z0-9:-]{0,255}[a-z0-9]" (default [system:bootstrappers:kubeadm:default-node-token])
--skip-token-print Skip printing of the bootstrap token
--token string The token to use for establishing bidirectional trust between nodes and masters
--ttl duration The duration before the token is automatically deleted (e.g. 1s, 2m, 3h). If set to '0', the token will never expire (default 24h0m0s)
--usages stringSlice Describes the ways in which this token can be used. You can pass --usages multiple times or provide a comma separated list of options. Valid options: [signing,authentication] (default [signing,authentication])
--kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf")
Creates a bootstrap token to be used for node joining
Creates a bootstrap token. If no token value is given, kubeadm will generate a random token instead.
Alternatively, you can use kubeadm token.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase bootstrap-token create
--cert-dir string The path where certificates are stored (default "/etc/kubernetes/pki")
--config string Path to kubeadm config file (WARNING: Usage of a configuration file is experimental)
--description string A human friendly description of how this token is used. (default "The default bootstrap token generated by 'kubeadm init'.")
--groups stringSlice Extra groups that this token will authenticate as when used for authentication. Must match "system:bootstrappers:[a-z0-9:-]{0,255}[a-z0-9]" (default [system:bootstrappers:kubeadm:default-node-token])
--skip-token-print Skip printing of the bootstrap token
--token string The token to use for establishing bidirectional trust between nodes and masters
--ttl duration The duration before the token is automatically deleted (e.g. 1s, 2m, 3h). If set to '0', the token will never expire (default 24h0m0s)
--usages stringSlice Describes the ways in which this token can be used. You can pass --usages multiple times or provide a comma separated list of options. Valid options: [signing,authentication] (default [signing,authentication])
--kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf")
Uploads the cluster-info ConfigMap from the given kubeconfig file
Uploads the “cluster-info” ConfigMap in the “kube-public” namespace, populating it with cluster information extracted from the given kubeconfig file. The ConfigMap is used for the node bootstrap process in its initial phases, before the client trusts the API server.
See online documentation about Authenticating with Bootstrap Tokens for more details.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase bootstrap-token cluster-info
--kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf")
Configures RBAC rules to allow the csrapprover controller automatically approve CSRs from a node bootstrap token
Configures RBAC rules to allow the csrapprover controller to automatically approve certificate signing requests generated by nodes joining the cluster. It configures also RBAC rules for certificates rotation (with auto approval of new certificates).
See online documentation about TLS bootstrapping for more details.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase bootstrap-token node allow-auto-approve
--kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf")
Configures RBAC to allow node bootstrap tokens to post CSRs in order for nodes to get long term certificate credentials
Configures RBAC rules to allow node bootstrap tokens to post a certificate signing request, thus enabling nodes joining the cluster to request long term certificate credentials.
See online documentation about TLS bootstrapping for more details.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase bootstrap-token node allow-post-csrs
--kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf")
You can use this command to upload the kubeadm configuration to your cluster. Alternatively, you can use kubeadm config.
Uploads the currently used configuration for kubeadm to a ConfigMap
Uploads the kubeadm init configuration of your cluster to a ConfigMap called kubeadm-config in the kube-system namespace. This enables correct configuration of system components and a seamless user experience when upgrading.
Alternatively, you can use kubeadm config.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase upload-config
# uploads the configuration of your cluster
kubeadm alpha phase upload-config --config=myConfig.yaml
--config string Path to a kubeadm config file. WARNING: Usage of a configuration file is experimental!
--kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf")
You can install all the available addons with the all
subcommand, or
install them selectively.
Please note that if kubeadm is invoked with --feature-gates=CoreDNS=true
, CoreDNS is installed instead of kube-dns
.
Installs all addons to a Kubernetes cluster
Installs the kube-dns and the kube-proxys addons components via the API server. Please note that although the DNS server is deployed, it will not be scheduled until CNI is installed.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase addon all
# Installs the kube-dns and the kube-proxys addons components via the API server,
# functionally equivalent to what installed by kubeadm init.
kubeadm alpha phase selfhosting from-staticpods
--apiserver-advertise-address string The IP address or DNS name the API server is accessible on
--apiserver-bind-port int32 The port the API server is accessible on (default 6443)
--config string Path to a kubeadm config file. WARNING: Usage of a configuration file is experimental!
--feature-gates string A set of key=value pairs that describe feature gates for various features.Options are:
CoreDNS=true|false (ALPHA - default=false)
DynamicKubeletConfig=true|false (ALPHA - default=false)
HighAvailability=true|false (ALPHA - default=false)
SelfHosting=true|false (BETA - default=false)
StoreCertsInSecrets=true|false (ALPHA - default=false)
SupportIPVSProxyMode=true|false (ALPHA - default=false)
--image-repository string Choose a container registry to pull control plane images from (default "k8s.gcr.io")
--kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf")
--kubernetes-version string Choose a specific Kubernetes version for the control plane (default "stable-1.8")
--pod-network-cidr string The range of IP addresses used for the Pod network
--service-cidr string The range of IP address used for service VIPs (default "10.96.0.0/12")
--service-dns-domain string Alternative domain for services (default "cluster.local")
Installs the kube-proxy addon to a Kubernetes cluster
Installs the kube-proxy addon components via the API server.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase addon kube-proxy
--apiserver-advertise-address string The IP address or DNS name the API server is accessible on
--apiserver-bind-port int32 The port the API server is accessible on (default 6443)
--config string Path to a kubeadm config file. WARNING: Usage of a configuration file is experimental!
--image-repository string Choose a container registry to pull control plane images from (default "k8s.gcr.io")
--kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf")
--kubernetes-version string Choose a specific Kubernetes version for the control plane (default "stable-1.8")
--pod-network-cidr string The range of IP addresses used for the Pod network
Installs the kube-dns addon to a Kubernetes cluster
Installs the kube-dns addon components via the API server. Please note that although the DNS server is deployed, it will not be scheduled until CNI is installed.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase addon kube-dns
--config string Path to a kubeadm config file. WARNING: Usage of a configuration file is experimental!
--feature-gates string A set of key=value pairs that describe feature gates for various features.Options are:
CoreDNS=true|false (ALPHA - default=false)
DynamicKubeletConfig=true|false (ALPHA - default=false)
HighAvailability=true|false (ALPHA - default=false)
SelfHosting=true|false (BETA - default=false)
StoreCertsInSecrets=true|false (ALPHA - default=false)
SupportIPVSProxyMode=true|false (ALPHA - default=false)
--image-repository string Choose a container registry to pull control plane images from (default "k8s.gcr.io")
--kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf")
--kubernetes-version string Choose a specific Kubernetes version for the control plane (default "stable-1.8")
--service-cidr string The range of IP address used for service VIPs (default "10.96.0.0/12")
--service-dns-domain string Alternative domain for services (default "cluster.local")
Caution: Self-hosting is an alpha feature. See kubeadm init documentation for self-hosting limitations.
Converts a static Pod-hosted control plane into a self-hosted one
Converts static Pod files for control plane components into self-hosted DaemonSets configured via the Kubernetes API.
See the documentation for self-hosting limitations.
Alpha Disclaimer: this command is currently alpha.
kubeadm alpha phase selfhosting convert-from-staticpods
# Converts a static Pod-hosted control plane into a self-hosted one,
# functionally equivalent to what generated by kubeadm init executed
# with --feature-gates=SelfHosting=true.
kubeadm alpha phase selfhosting convert-from-staticpods
--cert-dir string The path where certificates are stored (default "/etc/kubernetes/pki")
--config string Path to a kubeadm config file. WARNING: Usage of a configuration file is experimental!
--feature-gates string A set of key=value pairs that describe feature gates for various features. Options are:
CoreDNS=true|false (ALPHA - default=false)
DynamicKubeletConfig=true|false (ALPHA - default=false)
HighAvailability=true|false (ALPHA - default=false)
SelfHosting=true|false (BETA - default=false)
StoreCertsInSecrets=true|false (ALPHA - default=false)
SupportIPVSProxyMode=true|false (ALPHA - default=false)
--kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf")
kubeadm init
or kubeadm join