从 v1.8.0 开始,kubeadm 将集群的配置上传到名为 kube-system 的 ConfigMap 对象中,对象位于 kube-system 命名空间内。并在以后的升级中读取这个 ConfigMap 配置对象。 这样可以保证系统组件的正确配置,提供无缝的用户体验。
您可以执行 kubeadm config view 来查看 ConfigMap。如果使用 kubeadm v1.7.x 或更低版本来初始化群集,必须先使用 kubeadm config upload 创建 ConfigMap,然后才能使用 kubeadm upgrade。
在 Kubernetes v1.11.0 中,添加了一些新命令。你可以使用 kubeadm config print-default 打印默认配置,可以用 kubeadm config migrate 来将旧的配置文件转换到较新的版本,还可以使用 kubeadm config images list 和 kubeadm config images pull 列出并拉取 kubeadm 所需的镜像。
使用此命令,可以查看 kubeadm 配置的集群中的 ConfigMap。
该配置位于 “kube-system” 命名空间中的名为 “kubeadm-config” 的 ConfigMap 中。
kubeadm config view [flags]
-h, --help | |
view 操作的帮助命令 |
--kubeconfig string 默认值:"/etc/kubernetes/admin.conf" | |
用于和集群通信的 KubeConfig 文件。如果未设置,那么 kubeadm 将会搜索一个已经存在于标准路径的 KubeConfig 文件。 | |
--rootfs string | |
[实验] 到 '真实' 主机根文件系统的路径。 |
此命令打印对象,例如用于 ‘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 join’ 的默认 join 配置对象。
请注意,诸如 Bootstrap Token 字段之类的敏感值已替换为 {“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 | |
[实验] 到 '真实' 主机根文件系统的路径。 |
此命令允许您在 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 要使用的镜像列表。配置文件用于自定义任何镜像或镜像存储库。
kubeadm config images list [flags]
--config string | |
kubeadm 配置文件的路径。 | |
--feature-gates string | |
一组键值对(key=value),用于描述各种特征。选项有: Auditing=true|false (ALPHA - 默认值=false) CoreDNS=true|false (默认值=true) DynamicKubeletConfig=true|false (BETA - 默认值=false) |
|
-h, --help | |
list 操作的帮助命令 | |
--kubernetes-version string 默认值:"stable-1" | |
为控制平面选择一个特定的 Kubernetes 版本 |
--kubeconfig string 默认值:"/etc/kubernetes/admin.conf" | |
用于和集群通信的 kubeconfig 文件。如果它没有被设置,那么 kubeadm 将会搜索一个已经存在于标准路径的 kubeconfig 文件。 | |
--rootfs string | |
[实验] 到 '真实' 主机根文件系统的路径。 |
拉取 kubeadm 使用的镜像。
kubeadm config images pull [flags]
--config string | |
kubeadm 配置文件的路径。 | |
--cri-socket string | |
要连接的 CRI 套接字的路径。如果为空,则 kubeadm 将尝试自动检测此值;仅当安装了多个 CRI 或具有非标准 CRI 插槽时,才使用此选项。 | |
--feature-gates string | |
一系列键值对(key=value),用于描述各种特征。可选项是: IPv6DualStack=true|false (ALPHA - 默认值=false) |
|
-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 | |
[实验] 到 '真实' 主机根文件系统的路径。 |
此页是否对您有帮助?
感谢反馈。如果您有一个关于如何使用 Kubernetes 的特定的、需要答案的问题,可以访问 Stack Overflow. 在 GitHub 仓库上登记新的问题 报告问题 或者 提出改进建议.