簡體   English   中英

如何使用 KOPS 恢復 Kubernetes 集群?

[英]How to recover Kubernetes cluster with KOPS?

我們正在嘗試升級 Kubernetes 集群的 Kops 版本。 為此,我們遵循了以下步驟;

  1. 下載最新的KOPS版本1.24(舊版本為1.20)
  2. 根據 1.24 做模板更改
  3. 設置 ENV 變量
export KUBECONFIG="<<Kubeconfig file>>" export AWS_PROFILE="<< AWS PROFILE NAME >>" export AWS_DEFAULT_REGION="<< AWS Region >>" export KOPS_STATE_STORE="<< AWS S3 Bucket Name >>" export NAME="<< KOPS Cluster Name >>"
  1. kops 得到 $NAME -o yaml > 現有集群.yaml

  2. kops toolbox template --template templates/tm-eck-mixed-instances.yaml --values values_files/values-us-east-1.yaml --snippets snippets --output cluster.yaml --name $NAME

  3. kops 替換 -f cluster.yaml

  4. kops 更新集群 --name $NAME

  5. kops 滾動更新集群 --name $NAME --instance-group=master-us-east-1a --yes --cloudonly

一旦主服務器翻轉,我注意到這個主服務器沒有加入集群。 經過幾輪故障排除,我在API服務器中發現了以下錯誤。

I0926 09:54:41.220817 1 flags.go:59] FLAG: --vmodule="" I0926 09:54:41.223834 1 dynamic_serving_content.go:111] Loaded a new cert/key pair for "serving-cert::/srv /kubernetes/kube-controller-manager/server.crt::/srv/kubernetes/kube-controller-manager/server.key”無法加載基於configmap的request-header-client-ca-file:獲取“https:// 127.0.0.1/api/v1/namespaces/kube-system/configmaps/extension-apiserver-authentication”:撥打 tcp 127.0.0.1:443:連接:連接被拒絕

我試圖解決這個問題但找不到方法,所以決定使用備份回滾。 這些是我為此采取的步驟;

  1. kops 替換 -f cluster.yaml
  2. kops 更新集群 --name $NAME
  3. kops 滾動更新集群 --name $NAME --instance-group=master-us-east-1a --yes --cloudonly

不過,我在主節點中遇到了同樣的錯誤。

有誰知道我如何使用 Kops 恢復集群?

經過幾輪故障排除后,我發現每當我們使用 kops 部署新版本時,它都會在 AWS 的啟動模板中創建一個新版本。 我已經手動更改了所有節點組的 Auto Scaling 組中使用的啟動模板版本。 然后集群回滾到之前的 state 並開始正常工作。 然后,在將缺少的配置添加到 kops 模板文件后,我重新運行了升級過程。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM