日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
怎樣將升級(jí)Kubernetes版本至1.18

Kubernetes 是一個(gè)開源的容器編排系統(tǒng),用于自動(dòng)化部署、擴(kuò)展和管理容器化應(yīng)用程序,隨著時(shí)間的推移,Kubernetes 不斷地更新和升級(jí),以提供新功能、修復(fù)漏洞和提高性能,本文將介紹如何將 Kubernetes 集群升級(jí)至 1.18 版本。

創(chuàng)新互聯(lián)建站專注于華寧企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,成都商城網(wǎng)站開發(fā)。華寧網(wǎng)站建設(shè)公司,為華寧等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)建站專業(yè)和態(tài)度為您提供的服務(wù)

準(zhǔn)備工作

在升級(jí) Kubernetes 之前,需要確保已經(jīng)完成了以下準(zhǔn)備工作:

1、確保所有的節(jié)點(diǎn)都已經(jīng)安裝了最新版本的 kubelet、kubectl 和 kubeadm,這些組件是運(yùn)行 Kubernetes 集群的基礎(chǔ)。

2、為所有節(jié)點(diǎn)生成并分發(fā) ca 證書和 kubeconfig 文件,ca 證書用于建立信任關(guān)系,而 kubeconfig 文件包含了訪問集群所需的信息。

3、在升級(jí)之前,建議先備份當(dāng)前的集群狀態(tài),可以使用 kubectl get nodeskubectl get pods --all-namespaceskubectl get deployments --all-namespaces 等命令進(jìn)行備份。

升級(jí)步驟

1、更新控制平面組件

需要更新控制平面組件,包括 etcd、API Server 和 Controller Manager,可以通過以下命令進(jìn)行升級(jí):

停止 API Server
sudo systemctl stop kube-apiserver
停止 etcd
sudo systemctl stop etcd
停止 Controller Manager
sudo systemctl stop kube-controller-manager
下載新的 etcd 鏡像(如果使用的是 kubeadm)
sudo kubeadm config images pull etcd --config=/etc/kubernetes/admin.conf --manifest-dir=/etc/kubernetes/manifests
使用 kubeadm upgrade apiserver 將 API Server 升級(jí)到最新的穩(wěn)定版本
sudo kubeadm upgrade apiserver --to-version=v1.18.0 --config=/etc/kubernetes/admin.conf --manifest-dir=/etc/kubernetes/manifests
使用 kubeadm upgrade controller-manager 將 Controller Manager 升級(jí)到最新的穩(wěn)定版本
sudo kubeadm upgrade controller-manager --to-version=v1.18.0 --config=/etc/kubernetes/admin.conf --manifest-dir=/etc/kubernetes/manifests
啟動(dòng)新的 etcd 實(shí)例(如果使用的是 kubeadm)
sudo kubeadm init --control-plane-endpoint "LOAD_BALANCER_DNS:LOAD_BALANCER_PORT" --upload-certs --config=/etc/kubernetes/admin.conf --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.18.0 --control-plane-name my-control-plane --service-cidr=10.100.0.0/16 --node-cidr=10.100.0.0/16 --networking calico || true

注意:請(qǐng)根據(jù)實(shí)際情況替換 LOAD_BALANCER_DNS、LOAD_BALANCER_PORT、registry.aliyuncs.com/google_containers、--control-plane-name、--service-cidr--node-cidr--networking 等參數(shù)。

2、更新工作負(fù)載組件

接下來,需要更新工作負(fù)載組件,包括 kubelet、kube-proxy 和 cni,可以通過以下命令進(jìn)行升級(jí):

下載新的 kubelet 鏡像(如果使用的是 kubeadm)
sudo kubeadm config images pull kubelet --config=/etc/kubernetes/admin.conf --manifest-dir=/etc/kubernetes/manifests
根據(jù)操作系統(tǒng)類型選擇相應(yīng)的升級(jí)腳本進(jìn)行升級(jí)(對(duì)于 Ubuntu,可以使用以下命令)
sudo apt update && sudo apt install -y apt-transport-https curl > /dev/null && curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add > /dev/null && echo "deb http://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list > /dev/null && sudo apt update && sudo apt install -y kubelet=1.18.0-00 kubelet-cimprov=1.18.0-00 kubelet-tools=1.18.0-00 > /dev/null && sudo apt clean > /dev/null && sudo apt autoremove > /dev/null && sudo apt purge > /dev/null && sudo apt update > /dev/null && sudo apt install kubelet=1.18.0-00 kubelet-cimprov=1.18.0-00 kubelet-tools=1.18.0-00 > /dev/null && sudo systemctl restart kubelet > /dev/null && sudo systemctl enable kubelet > /dev/null

注意:請(qǐng)根據(jù)實(shí)際情況替換 kubernetes-xenial 為實(shí)際使用的 Linux 發(fā)行版對(duì)應(yīng)的版本,根據(jù)實(shí)際需求調(diào)整 --install-cni、--cni-bin-dir、--cni-conf-dir、--cni-plugin-dir--cni-lib-dir、--cni-bin-dir、--network-plugin=cni、--attachable-volumes、--pods-infrastructure=cni--enable-hostpaths、--hostpath-path=/opt/cni/bin、--hostpath-type=hostpath:hostPath:bareHostPath:ro,relatime,mode:755,uid:root:0,gid:root:0,size:1G,requestDir:true,blockStorage:true,mounter:cifs,--mounter=cifs,--fstype=cifs,--volumePluginClassName=csi.azureDisk.csiDriver:CSIAzureDiskVolumePlugin,--storageClassName=standard,--registry-mirror=$(cat REGISTRY_MIRROR),`–allowPrivilegedContainerRegistryAccess=$(echo $ALLOWPRIVILEGEDCONTAINERREGISTRYACCESS | base64 | tr ‘

‘ ‘ ‘ | sed ‘s/ //g’),–experimentalMounterPathOverride=$(echo $EXPERIMENTALMOUNTERPATHOVERRIDE | base64 | tr ‘

‘ ‘ ‘ | sed ‘s/ //g’),以及 –node-ip=$(hostname)`,可以根據(jù)實(shí)際情況進(jìn)行調(diào)整。

3、驗(yàn)證升級(jí)結(jié)果

完成上述步驟后,可以通過以下命令驗(yàn)證升級(jí)是否成功:

查看 API Server 版本
kubectl version --client=true | grep "Server version: v" | cut -d' ' -f3 | xargs echo "API Server version: " && echo "v$(cut -d' ' -f3)" || true

4、可能遇到的問題及解答

Q: 為什么在升級(jí)過程中會(huì)遇到權(quán)限問題?

A: 這可能是因?yàn)楫?dāng)前用戶沒有足夠的權(quán)限執(zhí)行升級(jí)操作,可以嘗試使用 root 或者具有相應(yīng)權(quán)限的用戶進(jìn)行升級(jí),還可以檢查 ~/.kube/config 文件中的認(rèn)證信息是否正確。


文章標(biāo)題:怎樣將升級(jí)Kubernetes版本至1.18
當(dāng)前URL:http://m.5511xx.com/article/dpeidgo.html