天天看點

通過備份 Etcd 來完美恢複 Kubernetes 中的誤删資料

誤删或者機器當機,會導緻 Etcd 資料的丢失或某個節點的 Etcd 資料異常時,請不要慌,認真看完此文,絕對有收獲。當誤删時,如何恢複資料,這個操作需求在實際環境當中是不可避免的。以下描述删除兩個 namespace 下的 Pod,如何恢複對應 namespace 的資料。

備份etcd

停止所有 master 上 kube-apiserver 服務

停止3台master上的 Etcd 運作

不同環境下,目錄可能不一樣,可以通過 systemctl status etcd 檢視 Etcd 配置參數。特别需要注意 name、initial-cluster、initial-cluster-token、initial-advertise-peer-urls 和 data-dir 參數的值。

在第一台 Etcd 節點上,注意需要 ETCDCTL_API=3、name 值、IP 值、snapshot.db 檔案目錄和 data-dir 目錄。

第二台和第三台 Etcd 恢複資料,同樣需要改變 ETCDCTL_API=3、name 值、IP 值、snapshot.db 檔案目錄和 data-dir 目錄。

三台 Etcd 啟動

總結

注意:備份 Etcd 叢集時,隻需要備份一個 Etcd 就行,恢複時,拿同一份備份資料恢複。

上一篇: 權限

繼續閱讀