From 1fb2858494e7ba0c8dbc131d80c84760f9082a3e Mon Sep 17 00:00:00 2001 From: fabriziopandini Date: Fri, 24 Nov 2017 14:41:08 +0100 Subject: [PATCH 1/2] automatically-generated kubeadm reference doc --- .../setup-tools/kubeadm/generated/README.md | 1 + .../setup-tools/kubeadm/generated/kubeadm.md | 39 ++++++++++ .../kubeadm/generated/kubeadm_alpha.md | 8 ++ .../kubeadm/generated/kubeadm_alpha_phase.md | 8 ++ .../generated/kubeadm_alpha_phase_addon.md | 8 ++ .../kubeadm_alpha_phase_addon_all.md | 45 +++++++++++ .../kubeadm_alpha_phase_addon_kube-dns.md | 33 ++++++++ .../kubeadm_alpha_phase_addon_kube-proxy.md | 26 +++++++ .../kubeadm_alpha_phase_bootstrap-token.md | 14 ++++ ...kubeadm_alpha_phase_bootstrap-token_all.md | 43 +++++++++++ ...lpha_phase_bootstrap-token_cluster-info.md | 22 ++++++ ...eadm_alpha_phase_bootstrap-token_create.md | 35 +++++++++ ...ubeadm_alpha_phase_bootstrap-token_node.md | 14 ++++ ...bootstrap-token_node_allow-auto-approve.md | 22 ++++++ ...se_bootstrap-token_node_allow-post-csrs.md | 22 ++++++ .../generated/kubeadm_alpha_phase_certs.md | 8 ++ .../kubeadm_alpha_phase_certs_all.md | 39 ++++++++++ ...ha_phase_certs_apiserver-kubelet-client.md | 23 ++++++ .../kubeadm_alpha_phase_certs_apiserver.md | 29 +++++++ .../generated/kubeadm_alpha_phase_certs_ca.md | 23 ++++++ ...ubeadm_alpha_phase_certs_front-proxy-ca.md | 23 ++++++ ...dm_alpha_phase_certs_front-proxy-client.md | 23 ++++++ .../generated/kubeadm_alpha_phase_certs_sa.md | 23 ++++++ .../kubeadm_alpha_phase_controlplane.md | 8 ++ .../kubeadm_alpha_phase_controlplane_all.md | 44 +++++++++++ ...eadm_alpha_phase_controlplane_apiserver.md | 32 ++++++++ ...a_phase_controlplane_controller-manager.md | 23 ++++++ ...eadm_alpha_phase_controlplane_scheduler.md | 22 ++++++ .../generated/kubeadm_alpha_phase_etcd.md | 8 ++ .../kubeadm_alpha_phase_etcd_local.md | 32 ++++++++ .../kubeadm_alpha_phase_kubeconfig.md | 8 ++ .../kubeadm_alpha_phase_kubeconfig_admin.md | 24 ++++++ .../kubeadm_alpha_phase_kubeconfig_all.md | 36 +++++++++ ...pha_phase_kubeconfig_controller-manager.md | 24 ++++++ .../kubeadm_alpha_phase_kubeconfig_kubelet.md | 27 +++++++ ...ubeadm_alpha_phase_kubeconfig_scheduler.md | 24 ++++++ .../kubeadm_alpha_phase_kubeconfig_user.md | 32 ++++++++ .../kubeadm_alpha_phase_mark-master.md | 32 ++++++++ .../kubeadm_alpha_phase_preflight.md | 8 ++ .../kubeadm_alpha_phase_preflight_master.md | 21 ++++++ .../kubeadm_alpha_phase_preflight_node.md | 21 ++++++ .../kubeadm_alpha_phase_selfhosting.md | 8 ++ ...ase_selfhosting_convert-from-staticpods.md | 41 ++++++++++ .../kubeadm_alpha_phase_upload-config.md | 30 ++++++++ .../kubeadm/generated/kubeadm_completion.md | 49 ++++++++++++ .../kubeadm/generated/kubeadm_config.md | 23 ++++++ .../generated/kubeadm_config_upload.md | 18 +++++ .../kubeadm_config_upload_from-file.md | 30 ++++++++ .../kubeadm_config_upload_from-flags.md | 47 ++++++++++++ .../kubeadm/generated/kubeadm_config_view.md | 22 ++++++ .../kubeadm/generated/kubeadm_init.md | 40 ++++++++++ .../kubeadm/generated/kubeadm_join.md | 75 +++++++++++++++++++ .../kubeadm/generated/kubeadm_reset.md | 20 +++++ .../kubeadm/generated/kubeadm_token.md | 36 +++++++++ .../kubeadm/generated/kubeadm_token_create.md | 36 +++++++++ .../kubeadm/generated/kubeadm_token_delete.md | 24 ++++++ .../generated/kubeadm_token_generate.md | 29 +++++++ .../kubeadm/generated/kubeadm_token_list.md | 21 ++++++ .../kubeadm/generated/kubeadm_upgrade.md | 30 ++++++++ .../generated/kubeadm_upgrade_apply.md | 40 ++++++++++ .../kubeadm/generated/kubeadm_upgrade_plan.md | 30 ++++++++ .../kubeadm/generated/kubeadm_version.md | 18 +++++ skip_title_check.txt | 62 +++++++++++++++ skip_toc_check.txt | 66 +++++++++++++++- 64 files changed, 1750 insertions(+), 2 deletions(-) create mode 100644 docs/reference/setup-tools/kubeadm/generated/README.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_all.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_kube-dns.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_kube-proxy.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_all.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_cluster-info.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_create.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node_allow-auto-approve.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node_allow-post-csrs.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_all.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_apiserver-kubelet-client.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_apiserver.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_ca.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_front-proxy-ca.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_front-proxy-client.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_sa.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_all.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_apiserver.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_controller-manager.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_scheduler.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_etcd.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_etcd_local.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_admin.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_all.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_controller-manager.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_kubelet.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_scheduler.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_user.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_mark-master.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight_master.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight_node.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_selfhosting.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_selfhosting_convert-from-staticpods.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_upload-config.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_completion.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_config.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload_from-file.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload_from-flags.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_config_view.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_init.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_join.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_reset.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_token.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_token_create.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_token_delete.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_token_generate.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_token_list.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade_apply.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade_plan.md create mode 100644 docs/reference/setup-tools/kubeadm/generated/kubeadm_version.md diff --git a/docs/reference/setup-tools/kubeadm/generated/README.md b/docs/reference/setup-tools/kubeadm/generated/README.md new file mode 100644 index 0000000000000..020bc76f624cd --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/README.md @@ -0,0 +1 @@ +All files in this directory are auto-generated from other repos. **Do not edit them manually. You must edit them in their upstream repo.** \ No newline at end of file diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm.md new file mode 100644 index 0000000000000..0990c72c0c84e --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm.md @@ -0,0 +1,39 @@ + +kubeadm: easily bootstrap a secure Kubernetes cluster + +### Synopsis + + + +kubeadm: easily bootstrap a secure Kubernetes cluster. + + ┌──────────────────────────────────────────────────────────┐ + │ KUBEADM IS CURRENTLY IN BETA │ + │ │ + │ But please, try it out and give us feedback at: │ + │ https://github.com/kubernetes/kubeadm/issues │ + │ and at-mention @kubernetes/sig-cluster-lifecycle-bugs │ + │ or @kubernetes/sig-cluster-lifecycle-feature-requests │ + └──────────────────────────────────────────────────────────┘ + +Example usage: + + Create a two-machine cluster with one master (which controls the cluster), + and one node (where your workloads, like Pods and Deployments run). + + ┌──────────────────────────────────────────────────────────┐ + │ On the first machine: │ + ├──────────────────────────────────────────────────────────┤ + │ master# kubeadm init │ + └──────────────────────────────────────────────────────────┘ + + ┌──────────────────────────────────────────────────────────┐ + │ On the second machine: │ + ├──────────────────────────────────────────────────────────┤ + │ node# kubeadm join │ + └──────────────────────────────────────────────────────────┘ + + You can then repeat the second step on as many other machines as you like. + + + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha.md new file mode 100644 index 0000000000000..7ea8c6060ced9 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha.md @@ -0,0 +1,8 @@ + +Experimental sub-commands not yet fully functional. + +### Synopsis + + +Experimental sub-commands not yet fully functional. + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase.md new file mode 100644 index 0000000000000..ff9c916e19757 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase.md @@ -0,0 +1,8 @@ + +Invoke subsets of kubeadm functions separately for a manual install. + +### Synopsis + + +This command is not meant to be run on its own. See list of available subcommands. + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon.md new file mode 100644 index 0000000000000..ebd4a961d85dd --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon.md @@ -0,0 +1,8 @@ + +Installs required addons for passing Conformance tests + +### Synopsis + + +This command is not meant to be run on its own. See list of available subcommands. + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_all.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_all.md new file mode 100644 index 0000000000000..edd1b76971670 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_all.md @@ -0,0 +1,45 @@ + +Installs all addons to a Kubernetes cluster + +### Synopsis + + +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 +``` + +### Examples + +``` + # 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 +``` + +### Options + +``` + --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 "gcr.io/google_containers") + --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") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_kube-dns.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_kube-dns.md new file mode 100644 index 0000000000000..414f2a1b7ca17 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_kube-dns.md @@ -0,0 +1,33 @@ + +Installs the kube-dns addon to a Kubernetes cluster + +### Synopsis + + +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 +``` + +### Options + +``` + --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 "gcr.io/google_containers") + --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") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_kube-proxy.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_kube-proxy.md new file mode 100644 index 0000000000000..d1bca6ebff1ff --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_kube-proxy.md @@ -0,0 +1,26 @@ + +Installs the kube-proxy addon to a Kubernetes cluster + +### Synopsis + + +Installs the kube-proxy addon components via the API server. + +Alpha Disclaimer: this command is currently alpha. + +``` +kubeadm alpha phase addon kube-proxy +``` + +### Options + +``` + --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 "gcr.io/google_containers") + --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 +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token.md new file mode 100644 index 0000000000000..82c8ababf6064 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token.md @@ -0,0 +1,14 @@ + +Manage kubeadm-specific bootstrap token functions + +### Synopsis + + +This command is not meant to be run on its own. See list of available subcommands. + +### Options + +``` + --kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_all.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_all.md new file mode 100644 index 0000000000000..ecede358f923d --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_all.md @@ -0,0 +1,43 @@ + +Makes all the bootstrap token configurations and creates an initial token + +### Synopsis + + +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 +``` + +### Examples + +``` + # 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 +``` + +### Options + +``` + --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]) +``` + +### Options inherited from parent commands + +``` + --kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_cluster-info.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_cluster-info.md new file mode 100644 index 0000000000000..3b37d321e50a3 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_cluster-info.md @@ -0,0 +1,22 @@ + +Uploads the cluster-info ConfigMap from the given kubeconfig file + +### Synopsis + + +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 +``` + +### Options inherited from parent commands + +``` + --kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_create.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_create.md new file mode 100644 index 0000000000000..944f22ddde5ae --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_create.md @@ -0,0 +1,35 @@ + +Creates a bootstrap token to be used for node joining + +### Synopsis + + +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 +``` + +### Options + +``` + --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]) +``` + +### Options inherited from parent commands + +``` + --kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node.md new file mode 100644 index 0000000000000..ada2555931db0 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node.md @@ -0,0 +1,14 @@ + +Configures the node bootstrap process + +### Synopsis + + +This command is not meant to be run on its own. See list of available subcommands. + +### Options inherited from parent commands + +``` + --kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node_allow-auto-approve.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node_allow-auto-approve.md new file mode 100644 index 0000000000000..aa276e76a5665 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node_allow-auto-approve.md @@ -0,0 +1,22 @@ + +Configures RBAC rules to allow the csrapprover controller automatically approve CSRs from a node bootstrap token + +### Synopsis + + +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 +``` + +### Options inherited from parent commands + +``` + --kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node_allow-post-csrs.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node_allow-post-csrs.md new file mode 100644 index 0000000000000..92ff5de3f92b0 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node_allow-post-csrs.md @@ -0,0 +1,22 @@ + +Configures RBAC to allow node bootstrap tokens to post CSRs in order for nodes to get long term certificate credentials + +### Synopsis + + +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 +``` + +### Options inherited from parent commands + +``` + --kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs.md new file mode 100644 index 0000000000000..d7799cb4b8e19 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs.md @@ -0,0 +1,8 @@ + +Generates certificates for a Kubernetes cluster + +### Synopsis + + +This command is not meant to be run on its own. See list of available subcommands. + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_all.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_all.md new file mode 100644 index 0000000000000..7dc2e2d44d7a4 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_all.md @@ -0,0 +1,39 @@ + +Generates all PKI assets necessary to establish the control plane + +### Synopsis + + +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 +``` + +### Examples + +``` + # 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 +``` + +### Options + +``` + --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") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_apiserver-kubelet-client.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_apiserver-kubelet-client.md new file mode 100644 index 0000000000000..4f2e44c18731a --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_apiserver-kubelet-client.md @@ -0,0 +1,23 @@ + +Generates client certificate for the API server to connect to the kubelets securely + +### Synopsis + + +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 +``` + +### Options + +``` + --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) +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_apiserver.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_apiserver.md new file mode 100644 index 0000000000000..0907c23cd7ccb --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_apiserver.md @@ -0,0 +1,29 @@ + +Generates API server serving certificate and key + +### Synopsis + + +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 +``` + +### Options + +``` + --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") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_ca.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_ca.md new file mode 100644 index 0000000000000..4409f7aff77d4 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_ca.md @@ -0,0 +1,23 @@ + +Generates self-signed CA to provision identities for each component in the cluster + +### Synopsis + + +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 +``` + +### Options + +``` + --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) +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_front-proxy-ca.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_front-proxy-ca.md new file mode 100644 index 0000000000000..8e2f1c92c3609 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_front-proxy-ca.md @@ -0,0 +1,23 @@ + +Generates front proxy CA certificate and key for a Kubernetes cluster + +### Synopsis + + +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 +``` + +### Options + +``` + --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) +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_front-proxy-client.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_front-proxy-client.md new file mode 100644 index 0000000000000..ab24606835a42 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_front-proxy-client.md @@ -0,0 +1,23 @@ + +Generates front proxy CA client certificate and key for a Kubernetes cluster + +### Synopsis + + +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 +``` + +### Options + +``` + --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) +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_sa.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_sa.md new file mode 100644 index 0000000000000..f756ec98e3cb6 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_sa.md @@ -0,0 +1,23 @@ + +Generates a private key for signing service account tokens along with its public key + +### Synopsis + + +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 +``` + +### Options + +``` + --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) +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane.md new file mode 100644 index 0000000000000..2b0a831ce107a --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane.md @@ -0,0 +1,8 @@ + +Generates all static Pod manifest files necessary to establish the control plane + +### Synopsis + + +This command is not meant to be run on its own. See list of available subcommands. + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_all.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_all.md new file mode 100644 index 0000000000000..ee3590ed263b5 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_all.md @@ -0,0 +1,44 @@ + +Generates all static Pod manifest files necessary to establish the control plane + +### Synopsis + + +Generates all static Pod manifest files necessary to establish the control plane. + +Alpha Disclaimer: this command is currently alpha. + +``` +kubeadm alpha phase controlplane all +``` + +### Examples + +``` + # 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 +``` + +### Options + +``` + --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") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_apiserver.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_apiserver.md new file mode 100644 index 0000000000000..a9057ebddb09b --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_apiserver.md @@ -0,0 +1,32 @@ + +Generates the API server static Pod manifest. + +### Synopsis + + +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 +``` + +### Options + +``` + --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") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_controller-manager.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_controller-manager.md new file mode 100644 index 0000000000000..8684272d12083 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_controller-manager.md @@ -0,0 +1,23 @@ + +Generates the controller-manager static Pod manifest. + +### Synopsis + + +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 +``` + +### Options + +``` + --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 +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_scheduler.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_scheduler.md new file mode 100644 index 0000000000000..a8aa9627ec740 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_scheduler.md @@ -0,0 +1,22 @@ + +Generates the scheduler static Pod manifest. + +### Synopsis + + +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 +``` + +### Options + +``` + --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") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_etcd.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_etcd.md new file mode 100644 index 0000000000000..a0379819c886c --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_etcd.md @@ -0,0 +1,8 @@ + +Generates static Pod manifest file for etcd. + +### Synopsis + + +This command is not meant to be run on its own. See list of available subcommands. + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_etcd_local.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_etcd_local.md new file mode 100644 index 0000000000000..355eab7d22328 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_etcd_local.md @@ -0,0 +1,32 @@ + +Generates the static Pod manifest file for a local, single-node etcd instance + +### Synopsis + + +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 +``` + +### Examples + +``` + # 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 +``` + +### Options + +``` + --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) +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig.md new file mode 100644 index 0000000000000..d68c9061c4cee --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig.md @@ -0,0 +1,8 @@ + +Generates all kubeconfig files necessary to establish the control plane and the admin kubeconfig file + +### Synopsis + + +This command is not meant to be run on its own. See list of available subcommands. + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_admin.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_admin.md new file mode 100644 index 0000000000000..dd91a097cacb4 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_admin.md @@ -0,0 +1,24 @@ + +Generates a kubeconfig file for the admin to use and for kubeadm itself + +### Synopsis + + +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 +``` + +### Options + +``` + --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") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_all.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_all.md new file mode 100644 index 0000000000000..166d2c8e419bc --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_all.md @@ -0,0 +1,36 @@ + +Generates all kubeconfig files necessary to establish the control plane and the admin kubeconfig file + +### Synopsis + + +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 +``` + +### Examples + +``` + # 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 +``` + +### Options + +``` + --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 +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_controller-manager.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_controller-manager.md new file mode 100644 index 0000000000000..0765413658410 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_controller-manager.md @@ -0,0 +1,24 @@ + +Generates a kubeconfig file for the controller manager to use + +### Synopsis + + +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 +``` + +### Options + +``` + --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") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_kubelet.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_kubelet.md new file mode 100644 index 0000000000000..67bb710573db4 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_kubelet.md @@ -0,0 +1,27 @@ + +Generates a kubeconfig file for the kubelet to use. Please note that this should be used *only* for bootstrapping purposes. + +### Synopsis + + +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 +``` + +### Options + +``` + --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 +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_scheduler.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_scheduler.md new file mode 100644 index 0000000000000..d50259631d31a --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_scheduler.md @@ -0,0 +1,24 @@ + +Generates a kubeconfig file for the scheduler to use + +### Synopsis + + +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 +``` + +### Options + +``` + --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") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_user.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_user.md new file mode 100644 index 0000000000000..5fc2c0c35db20 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_user.md @@ -0,0 +1,32 @@ + +Outputs a kubeconfig file for an additional user + +### Synopsis + + +Outputs a kubeconfig file for an additional user. + +Alpha Disclaimer: this command is currently alpha. + +``` +kubeadm alpha phase kubeconfig user +``` + +### Examples + +``` + # Outputs a kubeconfig file for an additional user named foo + kubeadm alpha phase kubeconfig user --client-name=foo +``` + +### Options + +``` + --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) +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_mark-master.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_mark-master.md new file mode 100644 index 0000000000000..292620cdc821c --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_mark-master.md @@ -0,0 +1,32 @@ + +Mark a node as master + +### Synopsis + + +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 +``` + +### Examples + +``` + # 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 +``` + +### Options + +``` + --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 +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight.md new file mode 100644 index 0000000000000..afb22cee7be92 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight.md @@ -0,0 +1,8 @@ + +Run pre-flight checks + +### Synopsis + + +This command is not meant to be run on its own. See list of available subcommands. + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight_master.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight_master.md new file mode 100644 index 0000000000000..ea683e1a64c8f --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight_master.md @@ -0,0 +1,21 @@ + +Run master pre-flight checks + +### Synopsis + + +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 +``` + +### Examples + +``` + # Run master pre-flight checks. + kubeadm alpha phase preflight master +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight_node.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight_node.md new file mode 100644 index 0000000000000..3d6a40977878f --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight_node.md @@ -0,0 +1,21 @@ + +Run node pre-flight checks + +### Synopsis + + +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 +``` + +### Examples + +``` + # Run node pre-flight checks. + kubeadm alpha phase preflight node +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_selfhosting.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_selfhosting.md new file mode 100644 index 0000000000000..a21886203c9aa --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_selfhosting.md @@ -0,0 +1,8 @@ + +Makes a kubeadm cluster self-hosted + +### Synopsis + + +This command is not meant to be run on its own. See list of available subcommands. + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_selfhosting_convert-from-staticpods.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_selfhosting_convert-from-staticpods.md new file mode 100644 index 0000000000000..c5f2c9bec6609 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_selfhosting_convert-from-staticpods.md @@ -0,0 +1,41 @@ + +Converts a static Pod-hosted control plane into a self-hosted one + +### Synopsis + + +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 +``` + +### Examples + +``` + # 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 +``` + +### Options + +``` + --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") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_upload-config.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_upload-config.md new file mode 100644 index 0000000000000..fda590df06eeb --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_upload-config.md @@ -0,0 +1,30 @@ + +Uploads the currently used configuration for kubeadm to a ConfigMap + +### Synopsis + + +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 +``` + +### Examples + +``` + # uploads the configuration of your cluster + kubeadm alpha phase upload-config --config=myConfig.yaml +``` + +### Options + +``` + --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") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_completion.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_completion.md new file mode 100644 index 0000000000000..fdc98aeff77a4 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_completion.md @@ -0,0 +1,49 @@ + +Output shell completion code for the specified shell (bash or zsh). + +### Synopsis + + + +Output shell completion code for the specified shell (bash or zsh). +The shell code must be evalutated to provide interactive +completion of kubeadm commands. This can be done by sourcing it from +the .bash_profile. + +Note: this requires the bash-completion framework, which is not installed +by default on Mac. This can be installed by using homebrew: + + $ brew install bash-completion + +Once installed, bash_completion must be evaluated. This can be done by adding the +following line to the .bash_profile + + $ source $(brew --prefix)/etc/bash_completion + +Note for zsh users: [1] zsh completions are only supported in versions of zsh >= 5.2 + +``` +kubeadm completion SHELL +``` + +### Examples + +``` + +# Install bash completion on a Mac using homebrew +brew install bash-completion +printf "\n# Bash completion support\nsource $(brew --prefix)/etc/bash_completion\n" >> $HOME/.bash_profile +source $HOME/.bash_profile + +# Load the kubeadm completion code for bash into the current shell +source <(kubeadm completion bash) + +# Write bash completion code to a file and source if from .bash_profile +kubeadm completion bash > ~/.kube/kubeadm_completion.bash.inc +printf "\n# Kubeadm shell completion\nsource '$HOME/.kube/kubeadm_completion.bash.inc'\n" >> $HOME/.bash_profile +source $HOME/.bash_profile + +# Load the kubeadm completion code for zsh[1] into the current shell +source <(kubeadm completion zsh) +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_config.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_config.md new file mode 100644 index 0000000000000..56a7cf14dca23 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_config.md @@ -0,0 +1,23 @@ + +Manage configuration for a kubeadm cluster persisted in a ConfigMap in the cluster. + +### Synopsis + + + +There is a ConfigMap in the kube-system namespace called "kubeadm-config" that kubeadm uses to store internal configuration about the +cluster. kubeadm CLI v1.8.0+ automatically creates this ConfigMap with the config used with 'kubeadm init', but if you +initialized your cluster using kubeadm v1.7.x or lower, you must use the 'config upload' command to create this +ConfigMap. This is required so that 'kubeadm upgrade' can configure your upgraded cluster correctly. + + +``` +kubeadm config +``` + +### Options + +``` + --kubeconfig string The KubeConfig file to use when talking to the cluster. (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload.md new file mode 100644 index 0000000000000..661d0889bd67b --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload.md @@ -0,0 +1,18 @@ + +Upload configuration about the current state, so that 'kubeadm upgrade' can later know how to configure the upgraded cluster. + +### Synopsis + + +Upload configuration about the current state, so that 'kubeadm upgrade' can later know how to configure the upgraded cluster. + +``` +kubeadm config upload +``` + +### Options inherited from parent commands + +``` + --kubeconfig string The KubeConfig file to use when talking to the cluster. (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload_from-file.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload_from-file.md new file mode 100644 index 0000000000000..39d9d69c74ab6 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload_from-file.md @@ -0,0 +1,30 @@ + +Upload a configuration file to the in-cluster ConfigMap for kubeadm configuration. + +### Synopsis + + + +Using this command, you can upload configuration to the ConfigMap in the cluster using the same config file you gave to 'kubeadm init'. +If you initialized your cluster using a v1.7.x or lower kubeadm client and used the --config option, you need to run this command with the +same config file before upgrading to v1.8 using 'kubeadm upgrade'. + +The configuration is located in the "kube-system" namespace in the "kubeadm-config" ConfigMap. + + +``` +kubeadm config upload from-file +``` + +### Options + +``` + --config string Path to a kubeadm config file. WARNING: Usage of a configuration file is experimental. +``` + +### Options inherited from parent commands + +``` + --kubeconfig string The KubeConfig file to use when talking to the cluster. (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload_from-flags.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload_from-flags.md new file mode 100644 index 0000000000000..f8c702d956f22 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload_from-flags.md @@ -0,0 +1,47 @@ + +Create the in-cluster configuration file for the first time from using flags. + +### Synopsis + + + +Using this command, you can upload configuration to the ConfigMap in the cluster using the same flags you gave to 'kubeadm init'. +If you initialized your cluster using a v1.7.x or lower kubeadm client and set certain flags, you need to run this command with the +same flags before upgrading to v1.8 using 'kubeadm upgrade'. + +The configuration is located in the "kube-system" namespace in the "kubeadm-config" ConfigMap. + + +``` +kubeadm config upload from-flags +``` + +### Options + +``` + --apiserver-advertise-address string The IP address the API Server will advertise it's listening on. Specify '0.0.0.0' to use the address of the default network interface. + --apiserver-bind-port int32 Port for the API Server to bind to. (default 6443) + --apiserver-cert-extra-sans stringSlice Optional extra Subject Alternative Names (SANs) to use for the API Server serving certificate. Can be both IP addresses and DNS names. + --cert-dir string The path where to save and store the certificates. (default "/etc/kubernetes/pki") + --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") + --node-name string Specify the node name. + --pod-network-cidr string Specify range of IP addresses for the pod network. If set, the control plane will automatically allocate CIDRs for every node. + --service-cidr string Use alternative range of IP address for service VIPs. (default "10.96.0.0/12") + --service-dns-domain string Use alternative domain for services, e.g. "myorg.internal". (default "cluster.local") + --token string The token to use for establishing bidirectional trust between nodes and masters. + --token-ttl duration The duration before the bootstrap token is automatically deleted. If set to '0', the token will never expire. (default 24h0m0s) +``` + +### Options inherited from parent commands + +``` + --kubeconfig string The KubeConfig file to use when talking to the cluster. (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_config_view.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_config_view.md new file mode 100644 index 0000000000000..786a343cf49e3 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_config_view.md @@ -0,0 +1,22 @@ + +View the kubeadm configuration stored inside the cluster. + +### Synopsis + + + +Using this command, you can view the ConfigMap in the cluster where the configuration for kubeadm is located. + +The configuration is located in the "kube-system" namespace in the "kubeadm-config" ConfigMap. + + +``` +kubeadm config view +``` + +### Options inherited from parent commands + +``` + --kubeconfig string The KubeConfig file to use when talking to the cluster. (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_init.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_init.md new file mode 100644 index 0000000000000..4c3a865c685ec --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_init.md @@ -0,0 +1,40 @@ + +Run this command in order to set up the Kubernetes master. + +### Synopsis + + +Run this command in order to set up the Kubernetes master. + +``` +kubeadm init +``` + +### Options + +``` + --apiserver-advertise-address string The IP address the API Server will advertise it's listening on. Specify '0.0.0.0' to use the address of the default network interface. + --apiserver-bind-port int32 Port for the API Server to bind to. (default 6443) + --apiserver-cert-extra-sans stringSlice Optional extra Subject Alternative Names (SANs) to use for the API Server serving certificate. Can be both IP addresses and DNS names. + --cert-dir string The path where to save and store the certificates. (default "/etc/kubernetes/pki") + --config string Path to kubeadm config file. WARNING: Usage of a configuration file is experimental. + --cri-socket string Specify the CRI socket to connect to. (default "/var/run/dockershim.sock") + --dry-run Don't apply any changes; just output what would be done. + --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) + --ignore-checks-errors stringSlice A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks. + --kubernetes-version string Choose a specific Kubernetes version for the control plane. (default "stable-1.8") + --node-name string Specify the node name. + --pod-network-cidr string Specify range of IP addresses for the pod network. If set, the control plane will automatically allocate CIDRs for every node. + --service-cidr string Use alternative range of IP address for service VIPs. (default "10.96.0.0/12") + --service-dns-domain string Use alternative domain for services, e.g. "myorg.internal". (default "cluster.local") + --skip-token-print Skip printing of the default bootstrap token generated by 'kubeadm init'. + --token string The token to use for establishing bidirectional trust between nodes and masters. + --token-ttl duration The duration before the bootstrap token is automatically deleted. If set to '0', the token will never expire. (default 24h0m0s) +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_join.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_join.md new file mode 100644 index 0000000000000..fe2c5c142f191 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_join.md @@ -0,0 +1,75 @@ + +Run this on any machine you wish to join an existing cluster + +### Synopsis + + + +When joining a kubeadm initialized cluster, we need to establish +bidirectional trust. This is split into discovery (having the Node +trust the Kubernetes Master) and TLS bootstrap (having the Kubernetes +Master trust the Node). + +There are 2 main schemes for discovery. The first is to use a shared +token along with the IP address of the API server. The second is to +provide a file - a subset of the standard kubeconfig file. This file +can be a local file or downloaded via an HTTPS URL. The forms are +kubeadm join --discovery-token abcdef.1234567890abcdef 1.2.3.4:6443, +kubeadm join --discovery-file path/to/file.conf, or kubeadm join +--discovery-file https://url/file.conf. Only one form can be used. If +the discovery information is loaded from a URL, HTTPS must be used. +Also, in that case the host installed CA bundle is used to verify +the connection. + +If you use a shared token for discovery, you should also pass the +--discovery-token-ca-cert-hash flag to validate the public key of the +root certificate authority (CA) presented by the Kubernetes Master. The +value of this flag is specified as ":", +where the supported hash type is "sha256". The hash is calculated over +the bytes of the Subject Public Key Info (SPKI) object (as in RFC7469). +This value is available in the output of "kubeadm init" or can be +calcuated using standard tools. The --discovery-token-ca-cert-hash flag +may be repeated multiple times to allow more than one public key. + +If you cannot know the CA public key hash ahead of time, you can pass +the --discovery-token-unsafe-skip-ca-verification flag to disable this +verification. This weakens the kubeadm security model since other nodes +can potentially impersonate the Kubernetes Master. + +The TLS bootstrap mechanism is also driven via a shared token. This is +used to temporarily authenticate with the Kubernetes Master to submit a +certificate signing request (CSR) for a locally created key pair. By +default, kubeadm will set up the Kubernetes Master to automatically +approve these signing requests. This token is passed in with the +--tls-bootstrap-token abcdef.1234567890abcdef flag. + +Often times the same token is used for both parts. In this case, the +--token flag can be used instead of specifying each token individually. + + +``` +kubeadm join [flags] +``` + +### Options + +``` + --config string Path to kubeadm config file. + --cri-socket string Specify the CRI socket to connect to. (default "/var/run/dockershim.sock") + --discovery-file string A file or url from which to load cluster information. + --discovery-token string A token used to validate cluster information fetched from the master. + --discovery-token-ca-cert-hash stringSlice For token-based discovery, validate that the root CA public key matches this hash (format: ":"). + --discovery-token-unsafe-skip-ca-verification For token-based discovery, allow joining without --discovery-token-ca-cert-hash pinning. + --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) + --ignore-checks-errors stringSlice A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks. + --node-name string Specify the node name. + --tls-bootstrap-token string A token used for TLS bootstrapping. + --token string Use this token for both discovery-token and tls-bootstrap-token. +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset.md new file mode 100644 index 0000000000000..260d210fd87c9 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_reset.md @@ -0,0 +1,20 @@ + +Run this to revert any changes made to this host by 'kubeadm init' or 'kubeadm join'. + +### Synopsis + + +Run this to revert any changes made to this host by 'kubeadm init' or 'kubeadm join'. + +``` +kubeadm reset +``` + +### Options + +``` + --cert-dir string The path to the directory where the certificates are stored. If specified, clean this directory. (default "/etc/kubernetes/pki") + --cri-socket string The path to the CRI socket to use with crictl when cleaning up containers. (default "/var/run/dockershim.sock") + --ignore-checks-errors stringSlice A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks. +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_token.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_token.md new file mode 100644 index 0000000000000..47bcfafbf6759 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_token.md @@ -0,0 +1,36 @@ + +Manage bootstrap tokens. + +### Synopsis + + + +This command manages bootstrap tokens. It is optional and needed only for advanced use cases. + +In short, bootstrap tokens are used for establishing bidirectional trust between a client and a server. +A bootstrap token can be used when a client (for example a node that is about to join the cluster) needs +to trust the server it is talking to. Then a bootstrap token with the "signing" usage can be used. +bootstrap tokens can also function as a way to allow short-lived authentication to the API Server +(the token serves as a way for the API Server to trust the client), for example for doing the TLS Bootstrap. + +What is a bootstrap token more exactly? + - It is a Secret in the kube-system namespace of type "bootstrap.kubernetes.io/token". + - A bootstrap token must be of the form "[a-z0-9]{6}.[a-z0-9]{16}". The former part is the public token ID, + while the latter is the Token Secret and it must be kept private at all circumstances! + - The name of the Secret must be named "bootstrap-token-(token-id)". + +You can read more about bootstrap tokens here: + https://kubernetes.io/docs/admin/bootstrap-tokens/ + + +``` +kubeadm token +``` + +### Options + +``` + --dry-run Whether to enable dry-run mode or not + --kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_token_create.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_token_create.md new file mode 100644 index 0000000000000..5198ef5251727 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_token_create.md @@ -0,0 +1,36 @@ + +Create bootstrap tokens on the server. + +### Synopsis + + + +This command will create a bootstrap token for you. +You can specify the usages for this token, the "time to live" and an optional human friendly description. + +The [token] is the actual token to write. +This should be a securely generated random token of the form "[a-z0-9]{6}.[a-z0-9]{16}". +If no [token] is given, kubeadm will generate a random token instead. + + +``` +kubeadm token create [token] +``` + +### Options + +``` + --description string A human friendly description of how this token is used. + --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]) + --print-join-command Instead of printing only the token, print the full 'kubeadm join' flag needed to join the cluster using the token. + --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]) +``` + +### Options inherited from parent commands + +``` + --dry-run Whether to enable dry-run mode or not + --kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_token_delete.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_token_delete.md new file mode 100644 index 0000000000000..ce8e80f6a7c20 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_token_delete.md @@ -0,0 +1,24 @@ + +Delete bootstrap tokens on the server. + +### Synopsis + + + +This command will delete a given bootstrap token for you. + +The [token-value] is the full Token of the form "[a-z0-9]{6}.[a-z0-9]{16}" or the +Token ID of the form "[a-z0-9]{6}" to delete. + + +``` +kubeadm token delete [token-value] +``` + +### Options inherited from parent commands + +``` + --dry-run Whether to enable dry-run mode or not + --kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_token_generate.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_token_generate.md new file mode 100644 index 0000000000000..2782c8dcf3ba3 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_token_generate.md @@ -0,0 +1,29 @@ + +Generate and print a bootstrap token, but do not create it on the server. + +### Synopsis + + + +This command will print out a randomly-generated bootstrap token that can be used with +the "init" and "join" commands. + +You don't have to use this command in order to generate a token. You can do so +yourself as long as it is in the format "[a-z0-9]{6}.[a-z0-9]{16}". This +command is provided for convenience to generate tokens in the given format. + +You can also use "kubeadm init" without specifying a token and it will +generate and print one for you. + + +``` +kubeadm token generate +``` + +### Options inherited from parent commands + +``` + --dry-run Whether to enable dry-run mode or not + --kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_token_list.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_token_list.md new file mode 100644 index 0000000000000..978ad448ca927 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_token_list.md @@ -0,0 +1,21 @@ + +List bootstrap tokens on the server. + +### Synopsis + + + +This command will list all bootstrap tokens for you. + + +``` +kubeadm token list +``` + +### Options inherited from parent commands + +``` + --dry-run Whether to enable dry-run mode or not + --kubeconfig string The KubeConfig file to use when talking to the cluster (default "/etc/kubernetes/admin.conf") +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade.md new file mode 100644 index 0000000000000..a5d4b046d0ad8 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade.md @@ -0,0 +1,30 @@ + +Upgrade your cluster smoothly to a newer version with this command. + +### Synopsis + + +Upgrade your cluster smoothly to a newer version with this command. + +``` +kubeadm upgrade +``` + +### Options + +``` + --allow-experimental-upgrades Show unstable versions of Kubernetes as an upgrade alternative and allow upgrading to an alpha/beta/release candidate versions of Kubernetes. + --allow-release-candidate-upgrades Show release candidate versions of Kubernetes as an upgrade alternative and allow upgrading to a release candidate versions of Kubernetes. + --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) + --ignore-checks-errors stringSlice A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks. + --kubeconfig string The KubeConfig file to use when talking to the cluster. (default "/etc/kubernetes/admin.conf") + --print-config Specifies whether the configuration file that will be used in the upgrade should be printed or not. +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade_apply.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade_apply.md new file mode 100644 index 0000000000000..cf5b0ef5fd646 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade_apply.md @@ -0,0 +1,40 @@ + +Upgrade your Kubernetes cluster to the specified version. + +### Synopsis + + +Upgrade your Kubernetes cluster to the specified version. + +``` +kubeadm upgrade apply [version] +``` + +### Options + +``` + --dry-run Do not change any state, just output what actions would be performed. + --etcd-upgrade Perform the upgrade of etcd. + -f, --force Force upgrading although some requirements might not be met. This also implies non-interactive mode. + --image-pull-timeout duration The maximum amount of time to wait for the control plane pods to be downloaded. (default 15m0s) + -y, --yes Perform the upgrade and do not prompt for confirmation (non-interactive mode). +``` + +### Options inherited from parent commands + +``` + --allow-experimental-upgrades Show unstable versions of Kubernetes as an upgrade alternative and allow upgrading to an alpha/beta/release candidate versions of Kubernetes. + --allow-release-candidate-upgrades Show release candidate versions of Kubernetes as an upgrade alternative and allow upgrading to a release candidate versions of Kubernetes. + --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) + --ignore-checks-errors stringSlice A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks. + --kubeconfig string The KubeConfig file to use when talking to the cluster. (default "/etc/kubernetes/admin.conf") + --print-config Specifies whether the configuration file that will be used in the upgrade should be printed or not. +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade_plan.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade_plan.md new file mode 100644 index 0000000000000..85241cab41644 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade_plan.md @@ -0,0 +1,30 @@ + +Check which versions are available to upgrade to and validate whether your current cluster is upgradeable. + +### Synopsis + + +Check which versions are available to upgrade to and validate whether your current cluster is upgradeable. + +``` +kubeadm upgrade plan +``` + +### Options inherited from parent commands + +``` + --allow-experimental-upgrades Show unstable versions of Kubernetes as an upgrade alternative and allow upgrading to an alpha/beta/release candidate versions of Kubernetes. + --allow-release-candidate-upgrades Show release candidate versions of Kubernetes as an upgrade alternative and allow upgrading to a release candidate versions of Kubernetes. + --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) + --ignore-checks-errors stringSlice A list of checks whose errors will be shown as warnings. Example: 'IsPrivilegedUser,Swap'. Value 'all' ignores errors from all checks. + --kubeconfig string The KubeConfig file to use when talking to the cluster. (default "/etc/kubernetes/admin.conf") + --print-config Specifies whether the configuration file that will be used in the upgrade should be printed or not. +``` + diff --git a/docs/reference/setup-tools/kubeadm/generated/kubeadm_version.md b/docs/reference/setup-tools/kubeadm/generated/kubeadm_version.md new file mode 100644 index 0000000000000..fc46f021c0b19 --- /dev/null +++ b/docs/reference/setup-tools/kubeadm/generated/kubeadm_version.md @@ -0,0 +1,18 @@ + +Print the version of kubeadm + +### Synopsis + + +Print the version of kubeadm + +``` +kubeadm version +``` + +### Options + +``` + -o, --output string Output format; available options are 'yaml', 'json' and 'short' +``` + diff --git a/skip_title_check.txt b/skip_title_check.txt index da138f8790766..d7b56acdda3f6 100644 --- a/skip_title_check.txt +++ b/skip_title_check.txt @@ -7,3 +7,65 @@ docs/user-guide/pods/_viewing-a-pod.md docs/user-guide/simple-yaml.md docs/user-guide/update-demo/images/kitten/README.md docs/user-guide/update-demo/images/nautilus/README.md +docs/reference/setup-tools/kubeadm/generated/README.md +docs/reference/setup-tools/kubeadm/generated/kubeadm.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_all.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_kube-dns.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_kube-proxy.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_all.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_cluster-info.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_create.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node_allow-auto-approve.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node_allow-post-csrs.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_all.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_apiserver-kubelet-client.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_apiserver.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_ca.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_front-proxy-ca.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_front-proxy-client.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_sa.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_all.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_apiserver.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_controller-manager.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_scheduler.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_etcd.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_etcd_local.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_admin.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_all.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_controller-manager.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_kubelet.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_scheduler.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_user.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_mark-master.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight_master.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight_node.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_selfhosting.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_selfhosting_convert-from-staticpods.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_upload-config.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_completion.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_config.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload_from-file.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload_from-flags.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_config_view.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_init.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_join.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_reset.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_token.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_token_create.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_token_delete.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_token_generate.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_token_list.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade_apply.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade_plan.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_version.md \ No newline at end of file diff --git a/skip_toc_check.txt b/skip_toc_check.txt index a0b6ed8bb0f0a..6ed6f639e48ea 100644 --- a/skip_toc_check.txt +++ b/skip_toc_check.txt @@ -1,6 +1,6 @@ # Put files you want to skip table of contents entry check here: -docs/admin/kubelet-authentication-authorization.md -docs/admin/kubelet-tls-bootstrapping.md +docs/reference/setup-tools/kubeadm/generated/kubelet-authentication-authorization.md +docs/reference/setup-tools/kubeadm/generated/kubelet-tls-bootstrapping.md docs/api-reference/labels-annotations-taints.md docs/concepts/example-concept-template.md docs/contribute/README.md @@ -19,3 +19,65 @@ docs/user-guide/update-demo/images/kitten/README.md docs/user-guide/update-demo/images/nautilus/README.md docs/user-guide/walkthrough/index.md docs/user-guide/walkthrough/k8s201.md +docs/reference/setup-tools/kubeadm/generated/README.md +docs/reference/setup-tools/kubeadm/generated/kubeadm.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_all.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_kube-dns.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_addon_kube-proxy.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_all.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_cluster-info.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_create.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node_allow-auto-approve.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_bootstrap-token_node_allow-post-csrs.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_all.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_apiserver-kubelet-client.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_apiserver.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_ca.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_front-proxy-ca.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_front-proxy-client.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_certs_sa.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_all.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_apiserver.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_controller-manager.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_controlplane_scheduler.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_etcd.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_etcd_local.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_admin.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_all.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_controller-manager.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_kubelet.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_scheduler.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_kubeconfig_user.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_mark-master.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight_master.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_preflight_node.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_selfhosting.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_selfhosting_convert-from-staticpods.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_alpha_phase_upload-config.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_completion.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_config.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload_from-file.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_config_upload_from-flags.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_config_view.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_init.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_join.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_reset.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_token.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_token_create.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_token_delete.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_token_generate.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_token_list.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade_apply.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_upgrade_plan.md +docs/reference/setup-tools/kubeadm/generated/kubeadm_version.md From 6b76bdbbfa24c7feb5184d4218393d55abf2b0ec Mon Sep 17 00:00:00 2001 From: fabriziopandini Date: Fri, 24 Nov 2017 14:41:23 +0100 Subject: [PATCH 2/2] user-mantained kubeadm reference doc --- _data/reference.yml | 12 +- docs/reference/generated/kubeadm.md | 1040 ----------------- .../setup-tools/kubeadm/kubeadm-alpha.md | 261 +++++ .../setup-tools/kubeadm/kubeadm-config.md | 31 + .../setup-tools/kubeadm/kubeadm-init.md | 417 +++++++ .../setup-tools/kubeadm/kubeadm-join.md | 227 ++++ .../setup-tools/kubeadm/kubeadm-reset.md | 31 + .../setup-tools/kubeadm/kubeadm-token.md | 34 + .../setup-tools/kubeadm/kubeadm-upgrade.md | 24 + .../setup-tools/kubeadm/kubeadm-version.md | 15 + docs/reference/setup-tools/kubeadm/kubeadm.md | 21 + 11 files changed, 1072 insertions(+), 1041 deletions(-) delete mode 100644 docs/reference/generated/kubeadm.md create mode 100755 docs/reference/setup-tools/kubeadm/kubeadm-alpha.md create mode 100644 docs/reference/setup-tools/kubeadm/kubeadm-config.md create mode 100755 docs/reference/setup-tools/kubeadm/kubeadm-init.md create mode 100755 docs/reference/setup-tools/kubeadm/kubeadm-join.md create mode 100644 docs/reference/setup-tools/kubeadm/kubeadm-reset.md create mode 100644 docs/reference/setup-tools/kubeadm/kubeadm-token.md create mode 100755 docs/reference/setup-tools/kubeadm/kubeadm-upgrade.md create mode 100644 docs/reference/setup-tools/kubeadm/kubeadm-version.md create mode 100644 docs/reference/setup-tools/kubeadm/kubeadm.md diff --git a/_data/reference.yml b/_data/reference.yml index 5c9ba3d2c1d65..318061ac2289d 100644 --- a/_data/reference.yml +++ b/_data/reference.yml @@ -70,7 +70,17 @@ toc: - title: Setup Tools section: - - docs/reference/generated/kubeadm.md + - title: Kubeadm + section: + - docs/reference/setup-tools/kubeadm/kubeadm.md + - docs/reference/setup-tools/kubeadm/kubeadm-init.md + - docs/reference/setup-tools/kubeadm/kubeadm-join.md + - docs/reference/setup-tools/kubeadm/kubeadm-upgrade.md + - docs/reference/setup-tools/kubeadm/kubeadm-config.md + - docs/reference/setup-tools/kubeadm/kubeadm-reset.md + - docs/reference/setup-tools/kubeadm/kubeadm-token.md + - docs/reference/setup-tools/kubeadm/kubeadm-version.md + - docs/reference/setup-tools/kubeadm/kubeadm-alpha.md - title: Kubefed section: - docs/reference/generated/kubefed.md diff --git a/docs/reference/generated/kubeadm.md b/docs/reference/generated/kubeadm.md deleted file mode 100644 index 525df75f5b15d..0000000000000 --- a/docs/reference/generated/kubeadm.md +++ /dev/null @@ -1,1040 +0,0 @@ ---- -approvers: -- mikedanese -- luxas -- errordeveloper -- jbeda -title: Kubeadm -notitle: true ---- -# kubeadm Setup Tool Reference Guide - -This document provides information on how to use kubeadm's advanced options. - -* TOC -{:toc} - -Running `kubeadm init` bootstraps a Kubernetes master node. This consists of the -following steps: - -1. kubeadm runs a series of pre-flight checks to validate the system state - before making changes. Some checks only trigger warnings, others are - considered errors and will exit kubeadm until the problem is corrected or the - user specifies `--skip-preflight-checks`. - -1. kubeadm generates a token that additional nodes can use to register - themselves with the master in future. Optionally, the user can provide a - token via `--token`, as described in the - [section on managing tokens](#manage-tokens) below. - -1. kubeadm generates a self-signed CA to provision identities for each component - (including nodes) in the cluster. It also generates client certificates to - be used by various components. If the user has provided their own CA by - dropping it in the cert directory configured via `--cert-dir` - (`/etc/kubernetes/pki` by default) this step is skipped as described in the - [section on using custom certificates](#custom-certificates). - -1. kubeadm writes kubeconfig files in `/etc/kubernetes/` for - the kubelet, the controller-manager and the scheduler to use to connect to the - API server, each one with their respective identities, as well as an additional - kubeconfig file for administration. - -1. kubeadm generates static Pod manifests for the API server, - controller manager and scheduler; in case an external etcd is not provided, - an additional static Pod manifest will be generated for etcd. - - Static Pod manifests are written in `/etc/kubernetes/manifests`; the kubelet - watches this directory for Pods to create on startup, as described in - the [section about kubelet drop-in](#kubelet-drop-in). - - Once control plane Pods are up and running kubeadm init sequence can continue. - -1. kubeadm "labels" and "taints" the master node so that only control plane - components will run there. - -1. kubeadm makes all the necessary configurations for allowing node joining with the - [Bootstrap Tokens](https://kubernetes.io/docs/admin/bootstrap-tokens/) and - [TLS Bootstrap](https://kubernetes.io/docs/admin/kubelet-tls-bootstrapping/) - mechanism: - - - Write a ConfigMap for making available all the information required - for joining and set up related RBAC access rules. - - - Ensure access to the CSR signing API for bootstrap tokens. - - - Configure auto approval for new CSR requests. - - See [Securing your installation](#securing-more) for hardening. - -1. kubeadm installs add-on components via the API server. Right now this is - the internal DNS server and the kube-proxy DaemonSet. - -1. If `kubeadm init` is invoked with the alpha self-hosting feature enabled, - (`--feature-gates=SelfHosting=true`), the static Pod based control plane will - be transformed into a [self-hosted control plane](#self-hosting). - -Running `kubeadm join` on each node in the cluster consists of the following -steps: - -1. kubeadm downloads necessary cluster information from the API server. - By default, it uses the bootstrap token and the CA key hash to verify the - authenticity of that data. The root CA can also be discovered directly via a - file or URL. - -1. Once the cluster information are known, kubelet can start the TLS bootstrapping - process (in v.1.7 this step was managed by kubeadm). - - The TLS bootstrap uses the shared token to temporarily authenticate - with the Kubernetes Master to submit a certificate signing request (CSR); by - default the control plane will sign this CSR request automatically. - -1. Finally, kubeadm will configure the local kubelet to connect to the API - server with the definitive identity assigned to the node. - -## Usage - -Fields that support multiple values do so either with comma separation, or by -specifying the flag multiple times. - -The kubeadm command line interface is currently in **beta**. We are aiming to -not break any scripted use of the main `kubeadm init` and `kubeadm join`. -Exceptions to this are documented below. - -### `kubeadm init` - -It is usually sufficient to run `kubeadm init` without any flags, but in some -cases you might like to override the default behaviour. Here we specify all the -flags that can be used to customise the Kubernetes installation. - -**Options for `kubeadm init`:** - -- `--apiserver-advertise-address` - - This is the address the API Server will advertise to other members of the - cluster. This is also the address used to construct the suggested `kubeadm - join` line at the end of the init process. If not set (or set to 0.0.0.0) then - IP for the default interface will be used. - - This address is also added to the certificate that the API Server uses. - -- `--apiserver-bind-port` - - The port that the API server will bind on. This defaults to 6443. - -- `--apiserver-cert-extra-sans` - - Additional hostnames or IP addresses that should be added to the Subject - Alternate Name section for the certificate that the API Server will use. If you - expose the API Server through a load balancer and public DNS you could specify - this with - - ``` - --apiserver-cert-extra-sans=kubernetes.example.com,kube.example.com,10.100.245.1 - ``` - -- `--cert-dir` - - The path where to save and store the certificates. The default is - "/etc/kubernetes/pki". - -- `--config` - - A kubeadm specific [config file](#config-file). This can be used to specify an - extended set of options including passing arbitrary command line flags to the - control plane components. - - **Note**: Since 1.8, other flags are not allowed alongside `--config` except - for flags used to define kubeadm behaviour (not configuration) such as - `--skip-preflight-checks`. - -- `--dry-run` - - This flag tells kubeadm to don't apply any changes; just output what would be done. - -- `--feature-gates` - - A set of key=value pairs that describe feature gates for alpha/experimental - features. Options are: - - - SelfHosting=true\|false (ALPHA - default=false) - - - StoreCertsInSecrets=true\|false (ALPHA - default=false) - - See [self-hosted control plane](#self-hosting) for more detail. - -- `--kubernetes-version` (default 'latest') the kubernetes version to initialise - - The **v1.6** version of kubeadm only supports building clusters that are at - least **v1.6.0**. There are many reasons for this including kubeadm's use of - RBAC, the Bootstrap Token system, and enhancements to the Certificates API. With - this flag you can try any future version of Kubernetes. Check [releases - page](https://github.com/kubernetes/kubernetes/releases) for a full list of - available versions. - -- `--node-name` - - Allow to specify the node name, if something different than O.S. hostname should be used e.g. in case of Amazon EC2 instances. - - The node-name is also added to the certificate that the API Server uses. - -- `--pod-network-cidr` - - For certain networking solutions the Kubernetes master can also play a role in - allocating network ranges (CIDRs) to each node. This includes many cloud - providers and flannel. You can specify a subnet range that will be broken down - and handed out to each node with the `--pod-network-cidr` flag. This should be a - minimum of a /16 so controller-manager is able to assign /24 subnets to each - node in the cluster. If you are using flannel with [this - manifest](https://github.com/coreos/flannel/blob/master/Documentation/kube-flannel.yml) - you should use `--pod-network-cidr=10.244.0.0/16`. Most CNI based networking - solutions do not require this flag. - -- `--service-cidr` (default '10.96.0.0/12') - - You can use the `--service-cidr` flag to override the subnet Kubernetes uses to - assign services IP addresses. If you do, you will also need to update the - `/etc/systemd/system/kubelet.service.d/10-kubeadm.conf` file to reflect this - change else DNS will not function correctly. - -- `--service-dns-domain` (default 'cluster.local') - - By default, `kubeadm init` deploys a cluster that assigns services with DNS - names `..svc.cluster.local`. You can use the - `--service-dns-domain` to change the DNS name suffix. Again, you will need to - update the `/etc/systemd/system/kubelet.service.d/10-kubeadm.conf` file - accordingly else DNS will not function correctly. - - **Note**: This flag has an effect (it's needed for the kube-dns Deployment - manifest and the API Server's serving certificate) but not as you might expect, - since you will have to modify the arguments to the kubelets in the cluster for - it to work fully. Specifying DNS parameters using this flag only is not enough. - Rewriting the kubelet's CLI arguments is out of scope for kubeadm as it should - be agnostic to how you run the kubelet. However, making all kubelets in the - cluster pick up information dynamically via the API _is_ in scope and is a - [planned feature](https://github.com/kubernetes/kubeadm/issues/28) for upcoming - releases. - -- `--skip-preflight-checks` - - By default, kubeadm runs a series of preflight checks to validate the system - before making any changes. Advanced users can use this flag to bypass these if - necessary. - -- `--skip-token-print` - - By default, kubeadm prints the token at the end of the init procedure. Advanced - users can use this flag to bypass these if necessary. - -- `--token` - - By default, `kubeadm init` automatically generates the token used to initialise - each new node. If you would like to manually specify this token, you can use the - `--token` flag. The token must be of the format `[a-z0-9]{6}\.[a-z0-9]{16}`. A - compatible random token can be generated `kubeadm token generate`. Tokens can - be managed through the API after the cluster is created. See the [section on - managing tokens](#manage-tokens) below. - -- `--token-ttl` - - This sets an expiration time for the token. This is specified as a duration - from the current time. After this time the token will no longer be valid and - will be removed. A value of 0 specifies that the token never expires. The - default is 24 hours. See the [section on managing tokens](#manage-tokens) below. - -### `kubeadm join` - -When joining a kubeadm initialized cluster, we need to establish bidirectional -trust. This is split into discovery (having the Node trust the Kubernetes -master) and TLS bootstrap (having the Kubernetes master trust the Node). - -There are two main schemes for discovery: - - - **Using a shared token** along with the IP address of the API server and a - hash of the root CA key: - - `kubeadm join --discovery-token abcdef.1234567890abcdef --discovery-token-ca-cert-hash sha256:1234..cdef 1.2.3.4:6443` - - - **Using a file** (a subset of the standard kubeconfig file). This file can - be a local file or downloaded via an HTTPS URL: - - `kubeadm join --discovery-file path/to/file.conf` - - `kubeadm join --discovery-file https://url/file.conf` - -Only one form can be used. If the discovery information is loaded from a URL, -HTTPS must be used and the host installed CA bundle is used to verify the -connection. For details on the security tradeoffs of these mechanisms, see the -[security model](#security-model) section below. - -The TLS bootstrap mechanism is also driven via a shared token. This is used to -temporarily authenticate with the Kubernetes master to submit a certificate -signing request (CSR) for a locally created key pair. By default kubeadm will -set up the Kubernetes master to automatically approve these signing requests. -This token is passed in with the `--tls-bootstrap-token abcdef.1234567890abcdef` -flag. - -Often times the same token is used for both parts. In this case, the `--token` flag -can be used instead of specifying the each token individually. - -Here's an example on how to use it: - -`kubeadm join --token=abcdef.1234567890abcdef --discovery-token-ca-cert-hash sha256:1234..cdef 192.168.1.1:6443` - -**Options for `kubeadm join`:** - -- `--config` - - Extended options are specified in the [kubeadm specific config file](#config-file). - -- `--discovery-file` - - A local file path or HTTPS URL. The file specified must be a kubeconfig file - with nothing but an unnamed cluster entry. This is used to find both the - location of the API server to join along with a root CA bundle to use when - talking to that server. - - This might look something like this: - - ``` yaml - apiVersion: v1 - clusters: - - cluster: - certificate-authority-data: - server: https://10.138.0.2:6443 - name: "" - contexts: [] - current-context: "" - kind: Config - preferences: {} - users: [] - ``` - -- `--discovery-token` - - The discovery token is used along with the address of the API server (as an - unnamed argument) to download and verify information about the cluster. The - most critical part of the cluster information is the root CA bundle used to - verify the identity of the server during subsequent TLS connections. - -- `--discovery-token-ca-cert-hash` - - The CA key hash is used to verify the full root CA certificate discovered during - token-based bootstrapping. It has the format `sha256:`. By - default, the hash value is returned in the `kubeadm join` command printed at the - end of `kubeadm init` or in the output of `kubeadm token create --print-join-command`. - It is in a standard format (see [RFC7469](https://tools.ietf.org/html/rfc7469#section-2.4)) - and can also be calculated by 3rd party tools or provisioning systems. For - example, using the OpenSSL CLI: - `openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed 's/^.* //'` - - _Skipping this flag is allowed in Kubernetes 1.8, but makes certain spoofing - attacks possible._ See the [security model](#security-model) for details. - Pass `--discovery-token-unsafe-skip-ca-verification` to silence warnings (which - will become errors in Kubernetes 1.9). - -- `--discovery-token-unsafe-skip-ca-verification` - - Disable the warning/error that occurs when `--discovery-token-ca-cert-hash` is - not provided. Passing this flag is an acknowledgement of the - [security tradeoffs](#security-model) involved in skipping this verification - (which may or may not be appropriate in your environment). - -- `--node-name` - - Specify the Node name. The default is to use the OS hostname. This is useful - on some cloud providers such as AWS. This name is also added to the node's - TLS certificate. - -- `--tls-bootstrap-token` - - The token used to authenticate to the API server for the purposes of TLS - bootstrapping. - -- `--token=` - - Often times the same token is used for both `--discovery-token` and - `--tls-bootstrap-token`. This option specifies the same token for both. Other - flags override this flag if present. - -- `--skip-preflight-checks` - - By default, kubeadm runs a series of preflight checks to validate the system - before making any changes. Advanced users can use this flag to bypass these if - necessary. - -### `kubeadm completion` - -Output shell completion code for the specified shell (bash or zsh). - -### `kubeadm config` - -Kubeadm v1.8.0+ automatically creates a ConfigMap with all the parameters -used during `kubeadm init`. - -If you initialized your cluster using kubeadm v1.7.x or lower, you must use -the `kubeadm config upload` command to create this ConfigMap in order -for `kubeadm upgrade` to be able to configure your upgraded cluster correctly. - -### `kubeadm reset` - -Reverts any changes made to this host by `kubeadm init` or `kubeadm join`. - -### `kubeadm token` - -Manage tokens on a running cluster. See [managing tokens](#manage-tokens) below -for further details. - -### `kubeadm alpha phases` - -**WARNING:** While kubeadm command line interface is in beta, commands under -this entry is still considered alpha and may change in future versions. - -`kubeadm phase` introduces a set of kubeadm CLI commands allowing to invoke -individually each phase of the kubeadm init sequence; phases provide a reusable -and composable API/toolbox for building your own automated cluster installer. - -**Options for `kubeadm phases`:** - -Each kubeadm phase exposes a subset of relevant options from `kubeadm init`. - -## Using kubeadm with a configuration file {#config-file} - -**WARNING:** While kubeadm command line interface is in beta, the config file is -still considered alpha and may change in future versions. - -It's possible to configure kubeadm with a configuration file instead of command -line flags, and some more advanced features may only be available as -configuration file options. This file is passed in to the `--config` option on -both `kubeadm init` and `kubeadm join`. - -### Sample Master Configuration - -```yaml -apiVersion: kubeadm.k8s.io/v1alpha1 -kind: MasterConfiguration -api: - advertiseAddress: - bindPort: -etcd: - endpoints: - - - - - caFile: - certFile: - keyFile: - dataDir: - extraArgs: - : - : - image: -networking: - dnsDomain: - serviceSubnet: - podSubnet: -kubernetesVersion: -cloudProvider: -nodeName: -authorizationModes: -- -- -token: -tokenTTL: