etcde 데이터베이스 백업,복원
etcde 데이터베이스 백업,복원
etcd
데이터베이스를 백업하고 복원하는 작업을 포함합니다. 아래 단계에 따라 etcd
데이터베이스를 백업하고, 복원하고, 복원 출력 로그를 저장할 수 있습니다.
1단계: 컨텍스트 설정
먼저, 주어진 컨텍스트로 전환합니다.
kubectl config use-context kubernetes-admin@kubernetes
2단계: 컨트롤 플레인 노드로 SSH 접속
컨트롤 플레인 노드에 SSH로 접속합니다.
ssh controlplane
3단계: etcd 데이터베이스 백업
etcd
데이터베이스를 백업하고 /opt/cluster_backup.db
에 저장합니다. etcd
백업 명령어를 실행합니다.
ETCDCTL_API=3 etcdctl snapshot save /opt/cluster_backup.db \
--endpoints=https://127.0.0.1:2379 \
--cacert=/etc/kubernetes/pki/etcd/ca.crt \
--cert=/etc/kubernetes/pki/etcd/healthcheck-client.crt \
--key=/etc/kubernetes/pki/etcd/healthcheck-client.key
위 명령어는 etcd
의 백업을 /opt/cluster_backup.db
파일에 저장합니다.
4단계: etcd 데이터베이스 복원
etcd
데이터베이스를 복원하고 출력 로그를 restore.txt
파일에 저장합니다.
ETCDCTL_API=3 etcdctl snapshot restore /opt/cluster_backup.db \
--data-dir=/root/default.etcd &> restore.txt
전체 프로세스 요약
-
컨텍스트 설정
kubectl config use-context kubernetes-admin@kubernetes
-
SSH 접속
ssh controlplane
-
etcd 데이터베이스 백업
ETCDCTL_API=3 etcdctl snapshot save /opt/cluster_backup.db \ --endpoints=https://127.0.0.1:2379 \ --cacert=/etc/kubernetes/pki/etcd/ca.crt \ --cert=/etc/kubernetes/pki/etcd/healthcheck-client.crt \ --key=/etc/kubernetes/pki/etcd/healthcheck-client.key
-
etcd 데이터베이스 복원 및 로그 저장
ETCDCTL_API=3 etcdctl snapshot restore /opt/cluster_backup.db \ --data-dir=/root/default.etcd &> restore.txt
주요 포인트
ETCDCTL_API=3
:etcdctl
명령어를 API 버전 3로 설정합니다.snapshot save
:etcd
스냅샷을 저장하는 명령어입니다.snapshot restore
:etcd
스냅샷을 복원하는 명령어입니다.--data-dir
: 복원된 데이터가 저장될 디렉토리를 지정합니다.&>
: 명령어 출력을 파일로 리디렉션합니다.
이 명령어들을 순차적으로 실행하면 etcd
데이터베이스를 백업하고, 이를 복원하며, 복원 과정을 restore.txt
파일에 저장할 수 있습니다.