Restoring a CloudHub database
개요
CloudHub는 Bolt를 사용하여 CloudHub 관련 키-값 데이터를 저장합니다. 일반적으로 CloudHub Database를 수동으로 관리할 필요는 없습니다. 그러나 이전 버전의 CloudHub로 롤백하려면 해당 버전과 관련된 데이터 및 데이터 구조를 복원해야 합니다.
CloudHub의 Database인 chronograf-v1.db는 지정된 --bolt-path에 저장되며 기본적으로 CloudHub 바이너리가 실행되는 현재 작업 디렉터리입니다. 업그레이드 프로세스에서 필요한 마이그레이션이 실행되기 전에 CloudHub 데이터의 수정되지 않은 백업이 백업 디렉터리에 저장됩니다. 이는 일반적으로 데이터 마이그레이션 또는 업그레이드 프로세스에 문제가 발생하는 경우 편의를 위해 수행됩니다.
백업 디렉터리에는 이전 cloudhub-v1.db 파일의 사본이 포함되어 있습니다. 각 백업 파일에는 해당 CloudHub 버전이 추가됩니다. 예를 들어 cloudhub 0.9.3에서 1.0.0으로 변경된 경우 backup / cloudhub-v1.db.0.9.3라는 파일이 있습니다.
CloudHub 백업 디렉터리 구조
cloudhub-working-dir/
├── cloudhub-v1.db
├── backup/
| ├── cloudhub-v1.db.0.9.1
| ├── cloudhub-v1.db.0.9.2
| └── cloudhub-v1.db.0.9.3
└── ...
이전 버전으로 RollBack
업그레이드 과정에서 문제가 발생하거나 단순히 이전 버전의 CloudHub로 롤백하려는 경우 해당 버전과 관련된 데이터 파일을 복원한 다음 CloudHub를 다운 그레이드하고 재시작해야 합니다.
1단계 : 백업 파일
백업 디렉터리 내에서 롤백 할 버전에 해당하는 CloudHub 버전이 추가된 Database 파일을 찾습니다. 예를 들어 0.9.3으로 롤백하는 경우 backup / cloudhub-v1.db.0.9.3을 찾습니다.
2단계 : CloudHub 서버 정지
CloudHub 프로세스를 종료하여 CloudHub 서버를 정지합니다.
3단계 : Database 백업 교체
현재 Database 파일을 제거하고 원하는 백업 파일로 교체합니다.
# Remove the current database
rm cloudhub-v1.db
# Replace it with the desired backup file
cp backup/cloudhub-v1.db.0.9.3 cloudhub-v1.db
4단계 : CloudHub 설치
원하는 CloudHub 버전을 설치합니다. CloudHub 릴리스는 Github의 CloudHub 릴리스 페이지에서 다운로드 할 수 있습니다.
5단계 : 서버 시작
서버를 시작합니다.
CloudHub는 현재 작업 디렉터리에서
cloudhub
-v1.db를 사용합니다.
업데이트 마이그레이션 실행
이 프로세스를 사용하여 CloudHub 업데이트 마이그레이션을 다시 실행할 수도 있습니다.
1~5단계를 진행하되 3단계에서 마이그레이션의 기반으로 사용할 백업을 선택합니다.
CloudHub가 다시 시작되면 설치된 버전에 필요한 데이터 마이그레이션이 자동으로 실행됩니다.