91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何恢復rkestate狀態文件

發布時間:2021-12-24 09:54:00 來源:億速云 閱讀:203 作者:柒染 欄目:云計算

本篇文章為大家展示了如何恢復rkestate狀態文件,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

Kubernetes 集群狀態由 Kubernetes 集群中的集群配置文件 cluster.yml組件證書組成。由 RKE 生成,但根據 RKE 版本不同,集群狀態的保存方式不同。

  • 在 v0.2.0 之前,RKE 將 Kubernetes 集群狀態保存為secret。更新狀態時,RKE 會提取 secret更新/更改 狀態并保存新 secret

  • 從 v0.2.0 開始,RKE 在集群配置文件 cluster.yml 的同一目錄中創建 cluster.rkestate 文件。該 .rkestate 文件包含集群的當前狀態,包括RKE 配置和證書。需要保留此文件以更新集群或通過 RKE 對集群執行任何操作。

狀態文件轉換

如果是通過rke v0.2.0之前版本創建的 Kubernetes 集群,那么建議升級 rke 版本到最新版本。

rke v0.2.0以前的版本,是通過pki.bundle.tar.gz來保存組件證書。而rke v0.2.0及以后的版本通過.rkestate來保存組件證書。

在 rke 升級到最新版本后,需要有一個過渡操作。通過原始是 rke 配置文件,重新運行rke up將會自動生成.rkestate文件。

找回 .rkestate

假如 .rkestate 無意間丟失或者損壞,可以通過集群中的配置映射文件恢復 .rkestate。

通過 kubectl 配置文件找回

如果 .rkestate 丟失,但 kubecfg 未丟失, kubectl 還可以正常連接集群,可以運行以下命令找回 .rkestate:

注意: rke 在創建集群時,會自動創建 .rkestate 和 kubecfg 文件。.rkestate 和 kubecfg 文件的命名規則與 rke 配置文件名有一定關系。比如 rke 配置文件名為 cluster.yml,那么生成的 .rkestatecluster.rkestate,生成的 kubecfg 為 kube_config_cluster.yml
可以總結為:
1、kubecfg 命名規則:kube_config_<rke-cfg-name>.yml
2、.rkestate 命名規則:<rke-cfg-name>.rkestate

# 定義 rke 配置文件名稱,如果還存在則按存在的文件名填寫;如果不存在,則隨便填寫,比如名為 rancher-cluster,文件后綴 yaml/yml 不用填寫。
rke_config_name=rancher-cluster

kubecfg=kube_config_cluster.yml

kubectl --kubeconfig=${kubecfg} -n kube-system \
 get configmap full-cluster-state -o json | \
 jq -r .data.\"full-cluster-state\" | \
 jq -r . > ${rke_config_name}.rkestate

通過 master 節點找回

如果本地的 .rkestate 和 kubecfg 文件一并丟失,則需要登錄到 master 節點進行恢復,在 master 節點運行以下腳本:

if [[ -f /etc/kubernetes/ssl/kubecfg-kube-node.yaml ]]; then
 kubecfg=/etc/kubernetes/ssl/kubecfg-kube-node.yaml
elif [[ -f /etc/kubernetes/ssl/kubecfg-kube-node.yml ]]; then
 kubecfg=/etc/kubernetes/ssl/kubecfg-kube-node.yml
else
 echo 'kubecfg 配置文件不存在'
 exit 1
fi

# 獲取 Rancher Agent 鏡像
RANCHER_IMAGE=$( docker images --filter=label=io.cattle.agent=true | grep 'v2.' | \
 grep -v -E 'rc|alpha|<none>' | head -n 1 | awk '{print $3}' )

# 定義 rke 配置文件名稱,如果還存在則按存在的文件名填寫;如果不存在,則隨便填寫,比如名為 rancher-cluster,文件后綴 yaml/yml 不用填寫。
rke_config_name=rancher-cluster

docker run --rm --net=host \
 -v $(docker inspect kubelet --format \
 '{{ range .Mounts }}{{ if eq .Destination "/etc/kubernetes" }}{{ .Source }}{{ end }}{{ end }}')/ssl:/etc/kubernetes/ssl:ro \
 --entrypoint bash ${RANCHER_IMAGE} \
 -c 'kubectl --kubeconfig=${kubecfg} \
 -n kube-system get configmap full-cluster-state -o json | \
 jq -r .data.\"full-cluster-state\" | \
 jq -r .' > ${rke_config_name}.rkestate

上述內容就是如何恢復rkestate狀態文件,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阜阳市| 红原县| 玉树县| 秭归县| 六盘水市| 当雄县| 罗平县| 南雄市| 苏尼特左旗| 潜山县| 民丰县| 台山市| 双江| 横峰县| 娱乐| 泊头市| 九江市| 建水县| 乌鲁木齐市| 万宁市| 垫江县| 铜川市| 淳化县| 安化县| 祥云县| 古蔺县| 沙洋县| 德安县| 平乡县| 于田县| 新宁县| 梅河口市| 铁岭市| 涿州市| 电白县| 无为县| 阳春市| 伊宁县| 吉安市| 康乐县| 霍山县|