PaaS/Kubernetes

(Kubernetes) Backup And Restore

armyost 2021. 3. 29. 21:57
728x90

Backup Candidates

  1. Resource configuration -> GitHub 에 백업
  1. ETCD -> snapshot 으로 백업

 

ETCD Backup

export ETCDCTL_API=3

etcdctl version

etcdctl --endpoints=127.0.0.1:2379 --cacert=/etc/kubernetes/pki/etcd/ca.crt --cert=/etc/kubernetes/pki/etcd/server.crt --key=/etc/kubernetes/pki/etcd/server.key snapshot save /opt/snapshot-pre-boot.db

 

---------------- 포맷 ------------------

ETCDCTL_API=3 etcdctl --endpoints=[127.0.0.1:2379]
--cacert= --cert= --key=
snapshot save

 

ETCD Restore

etcdctl snapshot restore /opt/snapshot-pre-boot.db --data-dir /var/lib/etcd-from-backup

 

※ --data-dir을 설정한다는 것은 다른 data 경로에 etcd 운영용 파일을 생성한다는 것이다. 따라서 복구 후에 /etc/kubernetes/manifests/etcd.yaml을 수정하여 hostPath를 새로운 경로로 바꾸어야 한다.