在想要加入现有集群的每台机器上运行。 ### 摘要 当节点加入 kubeadm 初始化的集群时,我们需要建立双向信任。 这个过程可以分解为发现(让待加入节点信任 Kubernetes 主节点)和 TLS 引导(让Kubernetes 主节点信任待加入节点)两个部分。 有两种主要的发现方案。 第一种方法是使用共享令牌和 API 服务器的 IP 地址。 第二种是提供一个文件——标准 kubeconfig 文件的一个子集。 该文件可以是本地文件,也可以通过 HTTPS URL 下载。 格式是 kubeadm join --discovery-token abcdef.1234567890abcdef 1.2.3.4:6443、kubeadm join--discovery-file path/to/file.conf、或者 kubeadm join --discovery-file`https://url/file.conf`。 只能使用其中一种。 如果发现信息是从 URL 加载的,必须使用 HTTPS。 此外,在这种情况下,主机安装的 CA 包用于验证连接。 如果使用共享令牌进行发现,还应该传递 --discovery-token-ca-cert-hash 参数来验证 Kubernetes 主节点提供的根证书颁发机构(CA)的公钥。 此参数的值指定为 ":",其中支持的哈希类型为 "sha256"。哈希是通过 Subject Public Key Info(SPKI)对象的字节计算的(如 RFC7469)。 这个值可以从 "kubeadm init" 的输出中获得,或者可以使用标准工具进行计算。 可以多次重复 --discovery-token-ca-cert-hash 参数以允许多个公钥。 如果无法提前知道 CA 公钥哈希,则可以通过 --discovery-token-unsafe-skip-ca-verification 参数禁用此验证。 这削弱了kubeadm 安全模型,因为其他节点可能会模仿 Kubernetes 主节点。 TLS 引导机制也通过共享令牌驱动。 这用于向 Kubernetes 主节点进行临时的身份验证,以提交本地创建的密钥对的证书签名请求(CSR)。 默认情况下,kubeadm 将设置 Kubernetes 主节点自动批准这些签名请求。 这个令牌通过 --tls-bootstrap-token abcdef.1234567890abcdef 参数传入。 通常两个部分会使用相同的令牌。 在这种情况下可以使用 --token 参数,而不是单独指定每个令牌。 ``` kubeadm join [flags] ``` ### 选项
--apiserver-advertise-address string
如果节点应该托管一个新的控制平面实例,那么 API 服务器将通知它正在监听的 IP 地址。
--apiserver-bind-port int32     Default: 6443
如果节点应该托管新的控制平面实例,则 API 服务器要绑定的端口。
--config string
kubeadm 配置文件的路径。
--cri-socket string     Default: "/var/run/dockershim.sock"
指定要连接的 CRI 套接字。
--discovery-file string
用来加载集群信息的文件或 URL。
--discovery-token string
用来验证从 API 服务器获取的集群信息的令牌。
--discovery-token-ca-cert-hash stringSlice
对基于令牌的发现,验证根 CA 公钥是否与此哈希匹配(格式: "<type>:<value>")。
--discovery-token-unsafe-skip-ca-verification
对于基于令牌的发现,允许没有 --discovery-token-ca-cert-hash 的加入.
--experimental-control-plane
在节点上创建一个新的控制平面实例
--feature-gates string
一组健值对,用来描述不同功能的功能开关。 选项包括:
Auditing=true|false (ALPHA - default=false)
CoreDNS=true|false (default=true)
DynamicKubeletConfig=true|false (BETA - default=false)
-h, --help
join 的帮助信息
--ignore-preflight-errors stringSlice
检查项列表,检查的错误信息将显示为警告。 示例: 'IsPrivilegedUser,Swap'。 值 'all' 会忽略所有检查错误。
--node-name string
指定节点名称
--tls-bootstrap-token string
TLS 引导使用的令牌。
--token string
用作 discovery-token 和 tls-bootstrap-token 的令牌
### 从父命令继承的选项
--rootfs string
[EXPERIMENTAL] 连接 '真正的' 主机根文件系统的路径。
-->