kubeadm join phase
kubeadm join phase 使您能够调用 join 过程中的原子步骤。因此,您可以让 kubeadm 完成部分工作,如果您希望应用自定义,也可以自己完成其余部分。
kubeadm join phase 与 kubeadm join 工作流程一致,并且在后台两者使用相同的代码。
kubeadm join phase
Synopsis
使用此命令调用“join”工作流的单个阶段
kubeadm join phase [flags]
Options
| -h, --help | |
phase 的帮助信息 | |
从父命令继承的选项
| --rootfs string | |
“真实”主机根文件系统的路径。这将导致 kubeadm chroot 到提供的路径。 | |
kubeadm join phase preflight
使用此阶段,您可以对加入的节点执行预检检查。
运行 join 预检检查
Synopsis
运行 kubeadm join 的预检检查。
kubeadm join phase preflight [api-server-endpoint] [flags]
示例
# Run join pre-flight checks using a config file.
kubeadm join phase preflight --config kubeadm-config.yaml
Options
| --apiserver-advertise-address string | |
如果节点应该托管一个新的控制平面实例,API Server 将宣布其监听的 IP 地址。如果未设置,将使用默认网络接口。 | |
| --apiserver-bind-port int32 Default: 6443 | |
如果节点应该托管一个新的控制平面实例,API Server 将绑定的端口。 | |
| --certificate-key string | |
使用此密钥解密 init 上传的证书 secret。证书密钥是一个十六进制编码的字符串,它是一个 32 字节大小的 AES 密钥。 | |
| --config string | |
kubeadm 配置文件路径。 | |
| --control-plane | |
在此节点上创建新的控制平面实例 | |
| --cri-socket string | |
用于连接的 CRI 套接字路径。如果为空,kubeadm 将尝试自动检测此值;仅当安装了多个 CRI 或使用非标准 CRI 套接字时才使用此选项。 | |
| --discovery-file string | |
对于基于文件的发现,要从中加载集群信息的目录或 URL。 | |
| --discovery-token string | |
对于基于令牌的发现,用于验证从 API 服务器获取的集群信息的令牌。 | |
| --discovery-token-ca-cert-hash strings | |
对于基于令牌的发现,验证根 CA 公钥是否与此哈希匹配(格式:“<type>:<value>”)。 | |
| --discovery-token-unsafe-skip-ca-verification | |
对于基于令牌的发现,允许在没有 --discovery-token-ca-cert-hash 固定值的情况下加入。 | |
| --dry-run | |
不应用任何更改;仅输出将要执行的操作。 | |
| -h, --help | |
preflight 的帮助信息 | |
| --ignore-preflight-errors strings | |
要显示为警告的检查错误列表。例如:'IsPrivilegedUser,Swap'。值 'all' 将忽略所有检查中的错误。 | |
| --node-name string | |
指定节点名称。 | |
| --tls-bootstrap-token string | |
指定用于在节点加入时临时与 Kubernetes 控制平面进行身份验证的令牌。 | |
| --token string | |
当未提供 --discovery-token 和 --tls-bootstrap-token 的值时,将使用此令牌同时用于两者。 | |
从父命令继承的选项
| --rootfs string | |
“真实”主机根文件系统的路径。这将导致 kubeadm chroot 到提供的路径。 | |
kubeadm join phase control-plane-prepare
使用此阶段,您可以为节点准备充当控制平面。
Synopsis
为新的控制平面组件准备机器
kubeadm join phase control-plane-prepare [flags]
示例
# Prepares the machine for serving a control plane
kubeadm join phase control-plane-prepare all
Options
| -h, --help | |
control-plane-prepare 的帮助 | |
从父命令继承的选项
| --rootfs string | |
“真实”主机根文件系统的路径。这将导致 kubeadm chroot 到提供的路径。 | |
Synopsis
为新的控制平面组件准备机器
kubeadm join phase control-plane-prepare all [api-server-endpoint] [flags]
Options
| --apiserver-advertise-address string | |
如果节点应该托管一个新的控制平面实例,API Server 将宣布其监听的 IP 地址。如果未设置,将使用默认网络接口。 | |
| --apiserver-bind-port int32 Default: 6443 | |
如果节点应该托管一个新的控制平面实例,API Server 将绑定的端口。 | |
| --certificate-key string | |
使用此密钥解密 init 上传的证书 secret。证书密钥是一个十六进制编码的字符串,它是一个 32 字节大小的 AES 密钥。 | |
| --config string | |
kubeadm 配置文件路径。 | |
| --control-plane | |
在此节点上创建新的控制平面实例 | |
| --discovery-file string | |
对于基于文件的发现,要从中加载集群信息的目录或 URL。 | |
| --discovery-token string | |
对于基于令牌的发现,用于验证从 API 服务器获取的集群信息的令牌。 | |
| --discovery-token-ca-cert-hash strings | |
对于基于令牌的发现,验证根 CA 公钥是否与此哈希匹配(格式:“<type>:<value>”)。 | |
| --discovery-token-unsafe-skip-ca-verification | |
对于基于令牌的发现,允许在没有 --discovery-token-ca-cert-hash 固定值的情况下加入。 | |
| --dry-run | |
不应用任何更改;仅输出将要执行的操作。 | |
| -h, --help | |
all 的帮助 | |
| --node-name string | |
指定节点名称。 | |
| --patches string | |
一个目录的路径,其中包含名为“target[suffix][+patchtype].extension”的文件。例如,“kube-apiserver0+merge.yaml”或仅“etcd.json”。“target”可以是“kube-apiserver”、“kube-controller-manager”、“kube-scheduler”、“etcd”、“kubeletconfiguration”、“corednsdeployment”之一。“patchtype”可以是“strategic”、“merge”或“json”之一,它们匹配 kubectl 支持的补丁格式。默认的“patchtype”是“strategic”。“extension”必须是“json”或“yaml”。“suffix”是一个可选字符串,可用于确定应用哪些补丁(按字母数字顺序)。 | |
| --tls-bootstrap-token string | |
指定用于在节点加入时临时与 Kubernetes 控制平面进行身份验证的令牌。 | |
| --token string | |
当未提供 --discovery-token 和 --tls-bootstrap-token 的值时,将使用此令牌同时用于两者。 | |
从父命令继承的选项
| --rootfs string | |
“真实”主机根文件系统的路径。这将导致 kubeadm chroot 到提供的路径。 | |
Synopsis
从 kubeadm-certs Secret 下载在控制平面节点之间共享的证书
kubeadm join phase control-plane-prepare download-certs [api-server-endpoint] [flags]
Options
| --certificate-key string | |
使用此密钥解密 init 上传的证书 secret。证书密钥是一个十六进制编码的字符串,它是一个 32 字节大小的 AES 密钥。 | |
| --config string | |
kubeadm 配置文件路径。 | |
| --control-plane | |
在此节点上创建新的控制平面实例 | |
| --discovery-file string | |
对于基于文件的发现,要从中加载集群信息的目录或 URL。 | |
| --discovery-token string | |
对于基于令牌的发现,用于验证从 API 服务器获取的集群信息的令牌。 | |
| --discovery-token-ca-cert-hash strings | |
对于基于令牌的发现,验证根 CA 公钥是否与此哈希匹配(格式:“<type>:<value>”)。 | |
| --discovery-token-unsafe-skip-ca-verification | |
对于基于令牌的发现,允许在没有 --discovery-token-ca-cert-hash 固定值的情况下加入。 | |
| --dry-run | |
不应用任何更改;仅输出将要执行的操作。 | |
| -h, --help | |
download-certs 的帮助 | |
| --tls-bootstrap-token string | |
指定用于在节点加入时临时与 Kubernetes 控制平面进行身份验证的令牌。 | |
| --token string | |
当未提供 --discovery-token 和 --tls-bootstrap-token 的值时,将使用此令牌同时用于两者。 | |
从父命令继承的选项
| --rootfs string | |
“真实”主机根文件系统的路径。这将导致 kubeadm chroot 到提供的路径。 | |
Synopsis
为新的控制平面组件生成证书
kubeadm join phase control-plane-prepare certs [api-server-endpoint] [flags]
Options
| --apiserver-advertise-address string | |
如果节点应该托管一个新的控制平面实例,API Server 将宣布其监听的 IP 地址。如果未设置,将使用默认网络接口。 | |
| --config string | |
kubeadm 配置文件路径。 | |
| --control-plane | |
在此节点上创建新的控制平面实例 | |
| --discovery-file string | |
对于基于文件的发现,要从中加载集群信息的目录或 URL。 | |
| --discovery-token string | |
对于基于令牌的发现,用于验证从 API 服务器获取的集群信息的令牌。 | |
| --discovery-token-ca-cert-hash strings | |
对于基于令牌的发现,验证根 CA 公钥是否与此哈希匹配(格式:“<type>:<value>”)。 | |
| --discovery-token-unsafe-skip-ca-verification | |
对于基于令牌的发现,允许在没有 --discovery-token-ca-cert-hash 固定值的情况下加入。 | |
| --dry-run | |
不应用任何更改;仅输出将要执行的操作。 | |
| -h, --help | |
certs 的帮助 | |
| --node-name string | |
指定节点名称。 | |
| --tls-bootstrap-token string | |
指定用于在节点加入时临时与 Kubernetes 控制平面进行身份验证的令牌。 | |
| --token string | |
当未提供 --discovery-token 和 --tls-bootstrap-token 的值时,将使用此令牌同时用于两者。 | |
从父命令继承的选项
| --rootfs string | |
“真实”主机根文件系统的路径。这将导致 kubeadm chroot 到提供的路径。 | |
Synopsis
为新的控制平面组件生成 kubeconfig
kubeadm join phase control-plane-prepare kubeconfig [api-server-endpoint] [flags]
Options
| --certificate-key string | |
使用此密钥解密 init 上传的证书 secret。证书密钥是一个十六进制编码的字符串,它是一个 32 字节大小的 AES 密钥。 | |
| --config string | |
kubeadm 配置文件路径。 | |
| --control-plane | |
在此节点上创建新的控制平面实例 | |
| --discovery-file string | |
对于基于文件的发现,要从中加载集群信息的目录或 URL。 | |
| --discovery-token string | |
对于基于令牌的发现,用于验证从 API 服务器获取的集群信息的令牌。 | |
| --discovery-token-ca-cert-hash strings | |
对于基于令牌的发现,验证根 CA 公钥是否与此哈希匹配(格式:“<type>:<value>”)。 | |
| --discovery-token-unsafe-skip-ca-verification | |
对于基于令牌的发现,允许在没有 --discovery-token-ca-cert-hash 固定值的情况下加入。 | |
| --dry-run | |
不应用任何更改;仅输出将要执行的操作。 | |
| -h, --help | |
kubeconfig 帮助 | |
| --tls-bootstrap-token string | |
指定用于在节点加入时临时与 Kubernetes 控制平面进行身份验证的令牌。 | |
| --token string | |
当未提供 --discovery-token 和 --tls-bootstrap-token 的值时,将使用此令牌同时用于两者。 | |
从父命令继承的选项
| --rootfs string | |
“真实”主机根文件系统的路径。这将导致 kubeadm chroot 到提供的路径。 | |
Synopsis
为新的控制平面组件生成清单
kubeadm join phase control-plane-prepare control-plane [flags]
Options
| --apiserver-advertise-address string | |
如果节点应该托管一个新的控制平面实例,API Server 将宣布其监听的 IP 地址。如果未设置,将使用默认网络接口。 | |
| --apiserver-bind-port int32 Default: 6443 | |
如果节点应该托管一个新的控制平面实例,API Server 将绑定的端口。 | |
| --config string | |
kubeadm 配置文件路径。 | |
| --control-plane | |
在此节点上创建新的控制平面实例 | |
| --dry-run | |
不应用任何更改;仅输出将要执行的操作。 | |
| -h, --help | |
control-plane 的帮助信息 | |
| --patches string | |
一个目录的路径,其中包含名为“target[suffix][+patchtype].extension”的文件。例如,“kube-apiserver0+merge.yaml”或仅“etcd.json”。“target”可以是“kube-apiserver”、“kube-controller-manager”、“kube-scheduler”、“etcd”、“kubeletconfiguration”、“corednsdeployment”之一。“patchtype”可以是“strategic”、“merge”或“json”之一,它们匹配 kubectl 支持的补丁格式。默认的“patchtype”是“strategic”。“extension”必须是“json”或“yaml”。“suffix”是一个可选字符串,可用于确定应用哪些补丁(按字母数字顺序)。 | |
从父命令继承的选项
| --rootfs string | |
“真实”主机根文件系统的路径。这将导致 kubeadm chroot 到提供的路径。 | |
kubeadm join phase kubelet-start
使用此阶段,您可以写入 kubelet 设置、证书并(重新)启动 kubelet。
写入 kubelet 设置、证书并(重新)启动 kubelet
Synopsis
写入一个包含 KubeletConfiguration 的文件和一个包含节点特定 kubelet 设置的环境文件,然后(重新)启动 kubelet。
kubeadm join phase kubelet-start [api-server-endpoint] [flags]
Options
| --config string | |
kubeadm 配置文件路径。 | |
| --cri-socket string | |
用于连接的 CRI 套接字路径。如果为空,kubeadm 将尝试自动检测此值;仅当安装了多个 CRI 或使用非标准 CRI 套接字时才使用此选项。 | |
| --discovery-file string | |
对于基于文件的发现,要从中加载集群信息的目录或 URL。 | |
| --discovery-token string | |
对于基于令牌的发现,用于验证从 API 服务器获取的集群信息的令牌。 | |
| --discovery-token-ca-cert-hash strings | |
对于基于令牌的发现,验证根 CA 公钥是否与此哈希匹配(格式:“<type>:<value>”)。 | |
| --discovery-token-unsafe-skip-ca-verification | |
对于基于令牌的发现,允许在没有 --discovery-token-ca-cert-hash 固定值的情况下加入。 | |
| --dry-run | |
不应用任何更改;仅输出将要执行的操作。 | |
| -h, --help | |
kubelet-start 的帮助 | |
| --node-name string | |
指定节点名称。 | |
| --patches string | |
一个目录的路径,其中包含名为“target[suffix][+patchtype].extension”的文件。例如,“kube-apiserver0+merge.yaml”或仅“etcd.json”。“target”可以是“kube-apiserver”、“kube-controller-manager”、“kube-scheduler”、“etcd”、“kubeletconfiguration”、“corednsdeployment”之一。“patchtype”可以是“strategic”、“merge”或“json”之一,它们匹配 kubectl 支持的补丁格式。默认的“patchtype”是“strategic”。“extension”必须是“json”或“yaml”。“suffix”是一个可选字符串,可用于确定应用哪些补丁(按字母数字顺序)。 | |
| --tls-bootstrap-token string | |
指定用于在节点加入时临时与 Kubernetes 控制平面进行身份验证的令牌。 | |
| --token string | |
当未提供 --discovery-token 和 --tls-bootstrap-token 的值时,将使用此令牌同时用于两者。 | |
从父命令继承的选项
| --rootfs string | |
“真实”主机根文件系统的路径。这将导致 kubeadm chroot 到提供的路径。 | |
kubeadm join phase control-plane-join
使用此阶段,您可以将节点作为控制平面实例加入。
Synopsis
将机器作为控制平面实例加入
kubeadm join phase control-plane-join [flags]
示例
# Joins a machine as a control plane instance
kubeadm join phase control-plane-join all
Options
| -h, --help | |
control-plane-join 的帮助 | |
从父命令继承的选项
| --rootfs string | |
“真实”主机根文件系统的路径。这将导致 kubeadm chroot 到提供的路径。 | |
Synopsis
将机器作为控制平面实例加入
kubeadm join phase control-plane-join all [flags]
Options
| --apiserver-advertise-address string | |
如果节点应该托管一个新的控制平面实例,API Server 将宣布其监听的 IP 地址。如果未设置,将使用默认网络接口。 | |
| --config string | |
kubeadm 配置文件路径。 | |
| --control-plane | |
在此节点上创建新的控制平面实例 | |
| --dry-run | |
不应用任何更改;仅输出将要执行的操作。 | |
| -h, --help | |
all 的帮助 | |
| --node-name string | |
指定节点名称。 | |
| --patches string | |
一个目录的路径,其中包含名为“target[suffix][+patchtype].extension”的文件。例如,“kube-apiserver0+merge.yaml”或仅“etcd.json”。“target”可以是“kube-apiserver”、“kube-controller-manager”、“kube-scheduler”、“etcd”、“kubeletconfiguration”、“corednsdeployment”之一。“patchtype”可以是“strategic”、“merge”或“json”之一,它们匹配 kubectl 支持的补丁格式。默认的“patchtype”是“strategic”。“extension”必须是“json”或“yaml”。“suffix”是一个可选字符串,可用于确定应用哪些补丁(按字母数字顺序)。 | |
从父命令继承的选项
| --rootfs string | |
“真实”主机根文件系统的路径。这将导致 kubeadm chroot 到提供的路径。 | |
Synopsis
添加一个新的本地 etcd 成员
kubeadm join phase control-plane-join etcd [flags]
Options
| --apiserver-advertise-address string | |
如果节点应该托管一个新的控制平面实例,API Server 将宣布其监听的 IP 地址。如果未设置,将使用默认网络接口。 | |
| --config string | |
kubeadm 配置文件路径。 | |
| --control-plane | |
在此节点上创建新的控制平面实例 | |
| --dry-run | |
不应用任何更改;仅输出将要执行的操作。 | |
| -h, --help | |
etcd 的帮助 | |
| --node-name string | |
指定节点名称。 | |
| --patches string | |
一个目录的路径,其中包含名为“target[suffix][+patchtype].extension”的文件。例如,“kube-apiserver0+merge.yaml”或仅“etcd.json”。“target”可以是“kube-apiserver”、“kube-controller-manager”、“kube-scheduler”、“etcd”、“kubeletconfiguration”、“corednsdeployment”之一。“patchtype”可以是“strategic”、“merge”或“json”之一,它们匹配 kubectl 支持的补丁格式。默认的“patchtype”是“strategic”。“extension”必须是“json”或“yaml”。“suffix”是一个可选字符串,可用于确定应用哪些补丁(按字母数字顺序)。 | |
从父命令继承的选项
| --rootfs string | |
“真实”主机根文件系统的路径。这将导致 kubeadm chroot 到提供的路径。 | |
Synopsis
将节点标记为控制平面
kubeadm join phase control-plane-join mark-control-plane [flags]
Options
| --config string | |
kubeadm 配置文件路径。 | |
| --control-plane | |
在此节点上创建新的控制平面实例 | |
| --dry-run | |
不应用任何更改;仅输出将要执行的操作。 | |
| -h, --help | |
mark-control-plane 的帮助 | |
| --node-name string | |
指定节点名称。 | |
从父命令继承的选项
| --rootfs string | |
“真实”主机根文件系统的路径。这将导致 kubeadm chroot 到提供的路径。 | |
下一步
- kubeadm init 用于引导 Kubernetes 控制平面节点
- kubeadm join 用于将节点连接到集群
- kubeadm reset 以撤销
kubeadm init或kubeadm join对此主机所做的任何更改。 - kubeadm alpha 用于尝试实验性功能