kubeadm config

kubeadm init 执行期间,kubeadm 将 ClusterConfiguration 对象上传 到你的集群的 kube-system 名字空间下名为 kubeadm-config 的 ConfigMap 对象中。 然后在 kubeadm joinkubeadm resetkubeadm upgrade 执行期间读取此配置。 要查看此 ConfigMap,请调用 kubeadm config view

你可以使用 kubeadm config print 命令打印默认配置, 并使用 kubeadm config migrate 命令将旧版本的配置转化成新版本。 kubeadm config images listkubeadm config images pull 命令可以用来列出并拉取 kubeadm 所需的镜像。

更多信息请浏览使用带配置文件的 kubeadm init使用带配置文件的 kubeadm join.

你也可以在使用 kubeadm init 命令时配置若干 kubelet 配置选项。 这些选项对于集群中所有节点而言都是相同的。 参阅使用 kubeadm 来配置集群中的各个 kubelet 了解详细信息。

在 Kubernetes v1.13.0 及更高版本中,要列出/拉取 kube-dns 镜像而不是 CoreDNS 镜像, 必须使用这里 所描述的 --config 方法。

kubeadm config upload from-file

kubeadm config print

打印配置

概要

此命令打印子命令所提供的配置信息。 相关细节可参阅: https://pkg.go.dev/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm#section-directories

kubeadm config print [flags]

选项

-h, --help

print 命令的帮助信息

从父命令继承而来的选项

--kubeconfig string     默认值:"/etc/kubernetes/admin.conf"

与集群通信时使用的 kubeconfig 文件。如此标志未设置,将在一组标准位置中搜索现有的kubeconfig 文件。

--rootfs string

[试验性] 指向“真实”宿主根文件系统的路径。

kubeadm config print init-defaults

概要

此命令打印对象,例如用于 'kubeadm init' 的默认 init 配置对象。

请注意,Bootstrap Token 字段之类的敏感值已替换为 {"abcdef.0123456789abcdef" "" "nil" <nil> [] []} 之类的占位符值以通过验证,但不执行创建令牌的实际计算。

kubeadm config print init-defaults [flags]

选项

--component-configs stringSlice
组件配置 API 对象的逗号分隔列表,打印其默认值。可用值:[KubeProxyConfiguration KubeletConfiguration]。如果未设置此参数,则不会打印任何组件配置。
-h, --help
init-defaults 操作的帮助命令

从父命令继承的选项

--kubeconfig string     默认值:"/etc/kubernetes/admin.conf"
与集群通信时使用的 kubeconfig 文件。如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。
--rootfs string
[实验] 到 '真实' 主机根文件系统的路径。

kubeadm config print join-defaults

概要

此命令打印对象,例如用于 'kubeadm join' 的默认 join 配置对象。

请注意,诸如启动引导令牌字段之类的敏感值已替换为 {"abcdef.0123456789abcdef" "" "nil" <nil> [] []} 之类的占位符值以通过验证,但不执行创建令牌的实际计算。

kubeadm config print join-defaults [flags]

选项

--component-configs stringSlice
组件配置 API 对象的逗号分隔列表,打印其默认值。可用值:[KubeProxyConfiguration KubeletConfiguration]。如果未设置此参数,则不会打印任何组件配置。
-h, --help
join-defaults 操作的帮助命令

从父命令继承的选项

--kubeconfig string     默认值:"/etc/kubernetes/admin.conf"
与集群通信时使用的 kubeconfig 文件。如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。
--rootfs string
[实验] 到 '真实' 主机根文件系统的路径。

kubeadm config migrate

概要

此命令允许您在 CLI 工具中将本地旧版本的配置对象转换为最新支持的版本,而无需变更集群中的任何内容。在此版本的 kubeadm 中,支持以下 API 版本:

  • kubeadm.k8s.io/v1beta2

因此,无论您在此处传递 --old-config 参数的版本是什么,当写入到 stdout 或 --new-config (如果已指定)时, 都会读取、反序列化、默认、转换、验证和重新序列化 API 对象。

换句话说,如果您将此文件传递给 "kubeadm init",则该命令的输出就是 kubeadm 实际上在内部读取的内容。

kubeadm config migrate [flags]

选项

-h, --help
migrate 操作的帮助信息
--new-config string
使用新的 API 版本生成的 kubeadm 配置文件的路径。这个路径是可选的。如果没有指定,输出将被写到 stdout。
--old-config string
使用旧 API 版本且应转换的 kubeadm 配置文件的路径。此参数是必需的。

从父命令继承的选项

--kubeconfig string     默认值:"/etc/kubernetes/admin.conf"
用于和集群通信的 kubeconfig 文件。如果未设置,那么 kubeadm 将会搜索一个已经存在于标准路径的 kubeconfig 文件。
--rootfs string
[实验] 到 '真实' 主机根文件系统的路径。

kubeadm config images list

概要

打印 kubeadm 要使用的镜像列表。配置文件用于自定义任何镜像或镜像存储库。

kubeadm config images list [flags]

选项

--allow-missing-template-keys     默认值:true

如果设置为 true,则在模板中缺少字段或哈希表的键时忽略模板中的任何错误。 仅适用于 golang 和 jsonpath 输出格式。

-o, --experimental-output string     默认值:"text"

输出格式:text|json|yaml|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file 其中之一

--config string

kubeadm 配置文件的路径。

--feature-gates string

一组键值对(key=value),用于描述各种特征。选项是:
PublicKeysECDSA=true|false (ALPHA - 默认=false)
RootlessControlPlane=true|false (ALPHA - 默认=false)
UnversionedKubeletConfigMap=true|false (ALPHA - 默认=false)

-h, --help

list 操作的帮助命令

--image-repository string     默认值:"k8s.gcr.io"

选择要从中拉取控制平面镜像的容器仓库

--kubernetes-version string     默认值:"stable-1"

为控制平面选择一个特定的 Kubernetes 版本

--show-managed-fields

如果为 true,则在以 JSON 或 YAML 格式打印对象时保留 managedFields。

从父命令继承的选项

--kubeconfig string     默认值:"/etc/kubernetes/admin.conf"

用于和集群通信的 kubeconfig 文件。如果它没有被设置,那么 kubeadm 将会搜索一个已经存在于标准路径的 kubeconfig 文件。

--rootfs string

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

kubeadm config images pull

拉取 kubeadm 使用的镜像。

概要

拉取 kubeadm 使用的镜像。

kubeadm config images pull [flags]

选项

--config string

kubeadm 配置文件的路径。

--cri-socket string

要连接的 CRI 套接字的路径。如果为空,则 kubeadm 将尝试自动检测此值;仅当安装了多个 CRI 或具有非标准 CRI 插槽时,才使用此选项。

--feature-gates string
一系列键值对(key=value),用于描述各种特征。可选项是:
PublicKeysECDSA=true|false (ALPHA - 默认值=false)
RootlessControlPlane=true|false (ALPHA - 默认值=false)
UnversionedKubeletConfigMap=true|false (BETA - 默认值=true)
-h, --help

pull 操作的帮助命令

--image-repository string     默认值:"k8s.gcr.io"

选择用于拉取控制平面镜像的容器仓库

--kubernetes-version string     默认值:"stable-1"

为控制平面选择一个特定的 Kubernetes 版本。

从父命令继承的选项

--kubeconfig string     默认值:"/etc/kubernetes/admin.conf"

用于和集群通信的 kubeconfig 文件。如果它没有被设置,那么 kubeadm 将会搜索一个已经存在于标准路径的 kubeconfig 文件。

--rootfs string

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

What's next

  • kubeadm upgrade 将 Kubernetes 集群升级到更新版本 [kubeadm upgrade]
最后修改 April 26, 2021 at 1:03 PM PST: [zh] Resync kubeadm files (3) (9ba6ac616)