kubeadm upgrade

kubeadm upgrade 是一個使用者友好的命令,它將複雜的升級邏輯封裝在一個命令中,支援升級計劃和實際執行。

kubeadm 升級指南

使用 kubeadm 執行升級的步驟在此 文件 中概述。對於舊版本的 kubeadm,請參考 Kubernetes 網站的舊文件集。

您可以使用 kubeadm upgrade diff 檢視將應用於靜態 Pod 清單的更改。

在 Kubernetes v1.15.0 及更高版本中,kubeadm upgrade applykubeadm upgrade node 還會自動續訂此節點上 kubeadm 管理的證書,包括儲存在 kubeconfig 檔案中的證書。要選擇退出,可以傳遞標誌 --certificate-renewal=false。有關證書續訂的更多詳細資訊,請參閱 證書管理文件

kubeadm upgrade plan

Synopsis

檢查可升級到的版本,並驗證當前叢集是否可升級。此命令只能在存在 kubeconfig 檔案 "admin.conf" 的控制平面節點上執行。要跳過網際網路檢查,請傳入可選的 [version] 引數。

kubeadm upgrade plan [version] [flags]

Options

--allow-experimental-upgrades

顯示 Kubernetes 的不穩定版本作為升級替代選項,並允許升級到 Kubernetes 的 Alpha/Beta/Release Candidate 版本。

--allow-missing-template-keys     預設值: true

如果為 true,則在模板中缺少欄位或對映鍵時忽略模板中的任何錯誤。僅適用於 golang 和 jsonpath 輸出格式。

--allow-release-candidate-upgrades

顯示 Kubernetes 的 Release Candidate 版本作為升級替代選項,並允許升級到 Kubernetes 的 Release Candidate 版本。

--config string

kubeadm 配置檔案路徑。

--etcd-upgrade     預設值: true

執行 etcd 的升級。

-h, --help

plan 的幫助資訊

--ignore-preflight-errors strings

要顯示為警告的檢查錯誤列表。例如:'IsPrivilegedUser,Swap'。值 'all' 將忽略所有檢查中的錯誤。

--kubeconfig string     預設值:"/etc/kubernetes/admin.conf"

與叢集通訊時使用的 kubeconfig 檔案。如果未設定該標誌,則會在一系列標準位置中搜索現有的 kubeconfig 檔案。

-o, --output string     預設值: "text"

輸出格式。可選值包括:text|json|yaml|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file。

--print-config

指定是否應列印升級中將使用的配置檔案。

--show-managed-fields

如果為 true,則在以 JSON 或 YAML 格式列印物件時保留 managedFields。

從父命令繼承的選項

--rootfs string

“真實”主機根檔案系統的路徑。這將導致 kubeadm chroot 到提供的路徑。

kubeadm upgrade apply

Synopsis

將您的 Kubernetes 叢集升級到指定版本

“apply [version]” 命令執行以下階段

preflight        Run preflight checks before upgrade
control-plane    Upgrade the control plane
upload-config    Upload the kubeadm and kubelet configurations to ConfigMaps
  /kubeadm         Upload the kubeadm ClusterConfiguration to a ConfigMap
  /kubelet         Upload the kubelet configuration to a ConfigMap
kubelet-config   Upgrade the kubelet configuration for this node
bootstrap-token  Configures bootstrap token and cluster-info RBAC rules
addon            Upgrade the default kubeadm addons
  /coredns         Upgrade the CoreDNS addon
  /kube-proxy      Upgrade the kube-proxy addon
post-upgrade     Run post upgrade tasks
kubeadm upgrade apply [version]

Options

--allow-experimental-upgrades

顯示 Kubernetes 的不穩定版本作為升級替代選項,並允許升級到 Kubernetes 的 Alpha/Beta/Release Candidate 版本。

--allow-release-candidate-upgrades

顯示 Kubernetes 的 Release Candidate 版本作為升級替代選項,並允許升級到 Kubernetes 的 Release Candidate 版本。

--certificate-renewal     預設值: true

執行升級過程中更改的元件所使用的證書的續訂。

--config string

kubeadm 配置檔案路徑。

--dry-run

不更改任何狀態,僅輸出將要執行的操作。

--etcd-upgrade     預設值: true

執行 etcd 的升級。

-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"、"corednsdeployment" 之一。"patchtype" 可以是 "strategic"、"merge" 或 "json" 之一,它們匹配 kubectl 支援的補丁格式。預設的 "patchtype" 是 "strategic"。"extension" 必須是 "json" 或 "yaml"。"suffix" 是一個可選字串,可用於確定哪些補丁首先按字母順序應用。

--print-config

指定是否應列印升級中將使用的配置檔案。

--skip-phases strings

要跳過的階段列表

-y, --yes

執行升級且不提示確認(非互動模式)。

從父命令繼承的選項

--rootfs string

“真實”主機根檔案系統的路徑。這將導致 kubeadm chroot 到提供的路徑。

kubeadm upgrade diff

Synopsis

顯示將應用於現有靜態 Pod 清單的差異。另請參閱:kubeadm upgrade apply --dry-run

kubeadm upgrade diff [version] [flags]

Options

--config string

kubeadm 配置檔案路徑。

-c, --context-lines int     預設值: 3

差異的上下文行數

-h, --help

diff 的幫助資訊

--kubeconfig string     預設值:"/etc/kubernetes/admin.conf"

與叢集通訊時使用的 kubeconfig 檔案。如果未設定該標誌,則會在一系列標準位置中搜索現有的 kubeconfig 檔案。

從父命令繼承的選項

--rootfs string

“真實”主機根檔案系統的路徑。這將導致 kubeadm chroot 到提供的路徑。

kubeadm upgrade node

Synopsis

叢集中節點的升級命令

“node” 命令執行以下階段

preflight       Run upgrade node pre-flight checks
control-plane   Upgrade the control plane instance deployed on this node, if any
kubelet-config  Upgrade the kubelet configuration for this node
addon           Upgrade the default kubeadm addons
  /coredns        Upgrade the CoreDNS addon
  /kube-proxy     Upgrade the kube-proxy addon
post-upgrade    Run post upgrade tasks
kubeadm upgrade node [flags]

Options

--certificate-renewal     預設值: true

執行升級過程中更改的元件所使用的證書的續訂。

--config string

kubeadm 配置檔案路徑。

--dry-run

不更改任何狀態,僅輸出將要執行的操作。

--etcd-upgrade     預設值: true

執行 etcd 的升級。

-h, --help

node 的幫助資訊

--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"、"corednsdeployment" 之一。"patchtype" 可以是 "strategic"、"merge" 或 "json" 之一,它們匹配 kubectl 支援的補丁格式。預設的 "patchtype" 是 "strategic"。"extension" 必須是 "json" 或 "yaml"。"suffix" 是一個可選字串,可用於確定哪些補丁首先按字母順序應用。

--skip-phases strings

要跳過的階段列表

從父命令繼承的選項

--rootfs string

“真實”主機根檔案系統的路徑。這將導致 kubeadm chroot 到提供的路徑。

下一步

  • kubeadm config 如果您使用 kubeadm v1.7.x 或更低版本初始化叢集,以便為 kubeadm upgrade 配置您的叢集
最後修改日期:2024年8月17日 太平洋標準時間下午4:50:更新生成頁面的引用 (3b6f229424)