etcd 数据备份和恢复

数据备份:

  kubernetes中部署的应用的信息都存放在etcd里面,这里面的数据非常重要,需要备份,以备不时之需

命令:

./etcdctl --cacert=ca.pem --cert=cert-etcd.pem --key=cert-etcd-key.pem --endpoints=`hostname`:2379 snapshot save 路径/名字.db

数据恢复:

获取到etcd备份文件后,然后依次在每个etcd节点上执行etcd数据恢复操作。

一,停止所有etcd和apiserver实例

二,把之前的备份数据,在其中一个etcd节点上操作,

  1. 将集群中现有数据备份 cp -rf /var/lib/etcd/ restore/
  2.  删除集群现有数据 rm -rf /var/lib/etcd/
  3. 进行备份

进行备份:首先把之前的定时备份数据找到,通过该文件进行etcd数据恢复

  命令:

/ssd1/etcd/runtime/etcdctl snapshot restore slx-test.db \
    --name szwg-bac-orp-shoubaioap-123741.szwg01 \ 
    --initial-cluster szwg-bce-ais-duer-online-006.szwg01=https://szwg-bce-ais-duer-online-006.szwg01.baidu.com:2380,szwg-bac-orp-shoubaioap-123741.szwg01=https://szwg-bac-orp-shoubaioap-123741.szwg01.baidu.com:2380,szwg-bac-orp-shoubaioap-123743.szwg01=https://szwg-bac-orp-shoubaioap-123743.szwg01.baidu.com:2380 \
--initial-advertise-peer-urls=
https://10.216.69.156:2380 \
--data-dir=/home/work/k8s/etcd/data/default.etcd

  • name是etcd节点的name,集群中name必须不同
  • initial-cluster是恢复集群的配置
  • initial-cluster-token 会影响计算cluster member id,#不是必须的参数,我这里没有写
  • initial-advertise-peer-urls节点本身的数据信息
  • data-dir 将备份信息恢复到指定路径

三,验证数据是否恢复

posted @ 2023-02-14 17:25  百因必有果  阅读(290)  评论(0编辑  收藏  举报