参考

Kubernetes v1.17 版本的文档已不再维护。您现在看到的版本来自于一份静态的快照。如需查阅最新文档,请点击 最新版本。

Edit This Page

kubeadm init phase

kubeadm init phase 能确保调用引导过程的原子步骤。因此,如果希望自定义应用,则可以让 kubeadm 做一些工作,然后填补空白。

kubeadm init phasekubeadm init 工作流程一致,后台都使用相同的代码。

kubeadm init phase preflight

使用此命令可以在控制平面节点上执行启动前检查。

概要

运行 kubeadm init 前的启动检查。

kubeadm init phase preflight [flags]

案例

  # 使用配置文件对 kubeadm init 进行启动检查。
  kubeadm init phase preflight --config kubeadm-config.yml

选项

--config string
kubeadm 配置文件的路径。
-h, --help
preflight 操作的帮助命令
--ignore-preflight-errors stringSlice
错误将显示为警告的检查列表:例如:'IsPrivilegedUser,Swap'。取值为 'all' 时将忽略检查中的所有错误。

继承于父命令的选项

--rootfs string
[实验] 到 '真实' 主机根文件系统的路径。

kubeadm init phase kubelet-start

此阶段将检查 kubelet 配置文件和环境文件,然后启动 kubelet。

概要

使用 kubelet 配置文件编写一个文件,并使用特定节点的 kubelet 设置编写一个环境文件,然后(重新)启动 kubelet。

kubeadm init phase kubelet-start [flags]

示例

  # 从 InitConfiguration 文件中写入带有 kubelet 参数的动态环境文件。
  kubeadm init phase kubelet-start --config config.yaml

选项

--config string
kubeadm 配置文件的路径。
--cri-socket string
连接到 CRI 套接字的路径。如果为空,则 kubeadm 将尝试自动检测该值;仅当安装了多个 CRI 或具有非标准 CRI 套接字时,才使用此选项。
-h, --help
kubelet-start 操作的帮助命令
--node-name string
指定节点名称。

从父命令继承的选项

--rootfs string
[实验] 到 '真实' 主机根文件系统的路径。

kubeadm init phase certs

该阶段可用于创建 kubeadm 所需的所有证书。

概要

此命令并非设计用来单独运行。请参阅可用子命令列表。

kubeadm init phase certs [flags]

选项

-h, --help
certs 操作的帮助命令

从父指令中继承的选项

--rootfs string
[实验] 到 '真实' 主机根文件系统的路径。

kubeadm init phase kubeconfig

可以通过调用 all 子命令来创建所有必需的 kubeconfig 文件,或者分别调用它们。

概要

此命令并非设计用来单独运行。请阅读可用子命令列表。

kubeadm init phase kubeconfig [flags]

选项

-h, --help
kubeconfig 操作的帮助命令

从父命令继承的选项

--rootfs string
[实验] 到 '真实' 主机根文件系统的路径。

kubeadm init phase control-plane

使用此阶段,可以为控制平面组件创建所有必需的静态 Pod 文件。

概要

此命令并非设计用来单独运行。请参阅可用子命令列表。

kubeadm init phase control-plane [flags]

选项

-h, --help
control-plane 操作的帮助命令

继承于父命令的选项

--rootfs string
[实验] 到 '真实' 主机根文件系统的路径。

kubeadm init phase etcd

根据静态 Pod 文件,使用以下阶段创建本地 etcd 实例。

概要

此命令并非设计用来单独运行。请参阅可用子命令列表。

kubeadm init phase etcd [flags]

选项

-h, --help
etcd 操作的帮助命令

继承于父命令的选项

--rootfs string
[实验] 到 '真实' 主机根文件系统的路径。

kubeadm init phase upload-config

可以使用此命令将 kubeadm 配置文件上传到集群。或者,使用 kubeadm config 方式。

概要

此命令并非设计用来单独运行。请参阅可用的子命令列表。

kubeadm init phase upload-config [flags]

选项

-h, --help
upload-config 操作的帮助命令

从父命令中继承的选项

--rootfs string
[实验] 到 '真实' 主机根文件系统的路径。

kubeadm init phase upload-certs

使用以下阶段将控制平面证书上传到集群。默认情况下,证书和加密密钥会在两个小时后过期。

概要

此命令并非设计用来单独运行。请参阅可用子命令列表。

kubeadm init phase upload-certs [flags]

选项

--certificate-key string
用于加密 kubeadm-certs Secret 中的控制平面证书的密钥。
--config string
kubeadm 配置文件的路径。
-h, --help
upload-certs 操作的帮助命令
--skip-certificate-key-print
不要打印输出用于加密控制平面证书的密钥。
--upload-certs
将控制平面证书上传到 kubeadm-certs Secret。

从父命令继承的选项

--rootfs string
[实验] 到 '真实' 主机根文件系统的路径。

kubeadm init phase mark-control-plane

使用以下阶段来给具有 node-role.kubernetes.io/master="" 键值对的节点打标签(label)和记录污点(taint)。

概要

标记 Node 节点为控制平面节点

kubeadm init phase mark-control-plane [flags]

示例

  # 将控制平面标签和污点应用于当前节点,其功能等效于 kubeadm init执行的操作。
  kubeadm init phase mark-control-plane --config config.yml
  
  # 将控制平面标签和污点应用于特定节点
  kubeadm init phase mark-control-plane --node-name myNode

选项

--config string
kubeadm 配置文件的路径。
-h, --help
mark-control-plane 操作的帮助命令
--node-name string
指定节点名称。

从父命令继承的选项

--rootfs 字符串
[实验] 到 '真实' 主机根文件系统的路径。

kubeadm init phase bootstrap-token

使用以下阶段来配置引导令牌。

概要

启动引导令牌(bootstrap token)用于在即将加入集群的节点和控制平面节点之间建立双向信任。

该命令使启动引导令牌(bootstrap token)所需的所有配置生效,然后创建初始令牌。

kubeadm init phase bootstrap-token [flags]

示例

  # 进行所有引导令牌配置,并创建一个初始令牌,功能上与 kubeadm init 生成的令牌等效。
  kubeadm init phase bootstrap-token

选项

--config string
kubeadm 配置文件的路径。
-h, --help
bootstrap-token 操作的帮助命令
--kubeconfig string     默认值:"/etc/kubernetes/admin.conf"
用于和集群通信的 kubeconfig 文件。如果它没有被设置,那么 kubeadm 将会搜索一个已经存在于标准路径的 kubeconfig 文件。
--skip-token-print
跳过打印 'kubeadm init' 生成的默认引导令牌。

继承于父命令的选项

--rootfs string
[实验] 到 '真实' 主机根文件系统的路径。

kubeadm init phase addon

可以使用 all 子命令安装所有可用的插件,或者有选择性地安装它们。

概要

此命令并非设计用来单独运行。请参阅可用子命令列表。

kubeadm init phase addon [flags]

选项

-h, --help
addon 操作的帮助命令

继承于父命令的选项

--rootfs string
[实验] 到 '真实' 主机根文件系统的路径。

要使用 kube-dns 代替 CoreDNS,必须传递一个配置文件:

# 仅用于安装 DNS 插件
kubeadm init phase addon coredns --config=someconfig.yaml
# 用于创建完整的控制平面节点
kubeadm init --config=someconfig.yaml
# 用于列出或者拉取镜像
kubeadm config images list/pull --config=someconfig.yaml
# 升级
kubeadm upgrade apply --config=someconfig.yaml

该文件必须在 ClusterConfiguration 中包含一个 DNS 字段,以及包含一个插件的类型 - kube-dns(默认值为 CoreDNS)。

apiVersion: kubeadm.k8s.io/v1beta2
kind: ClusterConfiguration
dns:
  type: "kube-dns"

有关 v1beta2 配置中每个字段的更多详细信息,可以访问 API

接下来

反馈