将 Kubernetes 集群升级到指定版本。
概要
将 Kubernetes 集群升级到指定版本。
kubeadm upgrade apply [version]
apply [version]
命令执行以下阶段:
preflight 在升级前运行预检
control-plane 升级控制平面
upload-config 将 kubeadm 和 kubelet 配置上传到 ConfigMap
/kubeadm 将 kubeadm ClusterConfiguration 上传到 ConfigMap
/kubelet 将 kubelet 配置上传到 ConfigMap
kubelet-config 升级此节点的 kubelet 配置
bootstrap-token 配置启动引导令牌和 cluster-info RBAC 规则
addon 升级默认的 kubeadm 插件
/coredns 升级 CoreDNS 插件
/kube-proxy 升级 kube-proxy 插件
post-upgrade 运行升级后的任务
选项
--allow-experimental-upgrades | |
显示 Kubernetes 的不稳定版本作为升级替代方案,并允许升级到 Kubernetes 的 Alpha、Beta 或 RC 版本。 | |
--allow-release-candidate-upgrades | |
显示 Kubernetes 的候选版本作为升级替代方案,并允许升级到 Kubernetes 的 RC 版本。 | |
--certificate-renewal Default: true | |
执行升级期间更改的组件所使用的证书的更新。 | |
--config string | |
kubeadm 配置文件的路径。 | |
--dry-run | |
不要更改任何状态,只输出要执行的操作。 | |
--etcd-upgrade 默认值: true | |
执行 etcd 的升级。 | |
--feature-gates string | |
一组键值对,用于描述各种功能。选项包括: | |
-f, --force | |
强制升级,但可能无法满足某些要求。这也意味着非交互模式。 | |
-h, --help | |
apply 操作的帮助命令。 | |
-ignore-preflight-errors strings | |
错误将显示为警告的检查列表;例如:'IsPrivilegedUser,Swap'。取值为 'all' 时将忽略检查中的所有错误。 | |
--kubeconfig string 默认值:"/etc/kubernetes/admin.conf" | |
与集群通信时使用的 kubeconfig 文件。如果未设置标志,则在相关目录下搜索以查找现有 kubeconfig 文件。 | |
--patches string | |
包含名为 "target[suffix][+patchtype].extension" 的文件的目录的路径。 例如,"kube-apiserver0+merge.yaml"或是简单的 "etcd.json"。 "target" 可以是 "kube-apiserver"、"kube-controller-manager"、"kube-scheduler"、"etcd"、"kubeletconfiguration" 之一。 "patchtype" 可以是 "strategic"、"merge" 或者 "json" 之一, 并且它们与 kubectl 支持的补丁格式相同。 默认的 "patchtype" 是 "strategic"。 "extension" 必须是 "json" 或 "yaml"。 "suffix" 是一个可选字符串,可用于确定首先按字母顺序应用哪些补丁。 | |
--print-config | |
指定是否应打印将在升级中使用的配置文件。 | |
-y, --yes | |
执行升级,不提示确认(非交互模式)。 |
从父命令继承的选项
--rootfs string | |
[实验] 指向 '真实' 宿主机根文件系统的路径。 |