1款開源工具,實現自動化升級K3S叢集!
阿新 • • 發佈:2020-12-18
即便你的叢集能夠平穩執行,Kubernetes升級依舊是一項艱難的任務。由於每3個月Kubernetes會發佈一個新版本,所以升級是十分必要的。如果一年內你不升級你的Kubernetes叢集,你就會落後許多。Rancher致力於解決開發運維人員的痛點,於是建立了新的開源專案System Upgrade Controller可以幫助開發人員平滑升級。
System Upgrade Controller引入了一個新的Kubernetes自定義資源定義(CRD),稱為Plan。現在Plan是處理升級程序的主要元件。以下是從git repo獲取的架構圖:
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20201218192734238.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyMjA2ODEz,size_16,color_FFFFFF,t_70#pic_center)
## 使用System Upgrade Controller自動升級K3s
升級K3s Kubernetes叢集有兩個主要要求:
- CRD安裝
- 建立Plan
首先,讓我們檢查當前正在執行的K3s叢集版本。
執行以下命令,即可快速安裝:
```
#For master install:
curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=v1.16.3-k3s.2 sh
#For joining nodes:
K3S_TOKEN is created at /var/lib/rancher/k3s/server/node-token on the server.
For adding nodes, K3S_URL and K3S_TOKEN needs to be passed:
curl -sfL https://get.k3s.io | K3S_URL=https://myserver:6443 K3S_TOKEN=XXX sh -
KUBECONFIG file is create at /etc/rancher/k3s/k3s.yaml location
```
```
kubectl get nodes
NAME STATUS ROLES AGE VERSION
kube-node-c155 R