메인 콘텐츠로 건너뛰기
ipmideck가 기억하는 모든 것은 하나의 데이터 디렉터리에 있습니다. config.yaml, 서버와 센서 기록이 담긴 SQLite 데이터베이스 (ipmideck.db), 그리고 저장된 BMC 자격 증명을 복호화하는 encryption.key 파일입니다. 이것들을 백업하면 어디서든 ipmideck를 재구축할 수 있습니다.
encryption.key가 백업의 일부인 데는 이유가 있습니다. 그것이 없으면 복원된 BMC 사용자 이름과 비밀번호를 복호화할 수 없습니다. 데이터베이스만의 백업은 저장된 자격 증명을 읽을 수 없게 두므로, 키 파일을 데이터베이스만큼 안전하게 보관하세요.

백업에 들어 있는 것

파일담긴 내용
ipmideck.db서버, 사용자, 센서 기록, 명령 로그, 설정.
config.yaml서버 바인드, auth, IPMI, 로깅, 모듈 설정.
encryption.key저장된 BMC 자격 증명을 복호화하는 32바이트 키.
이것들은 모두 데이터 디렉터리에 있습니다. Docker와 Linux에서는 /data, Windows에서는 ./data, 또는 IPMIDECK_DATA_DIR이 가리키는 곳입니다.

옵션 A: 앱 내 백업

ipmideck는 완성된 백업을 넘겨줄 수 있습니다. 웹 UI에서 Settings를 열고 백업 작업을 사용하세요. 위의 세 파일을 담은 ipmideck-backup-<timestamp>.zip을 다운로드합니다. 데이터베이스가 먼저 체크포인트되므로, 스냅샷에는 가장 최근의 판독값이 포함됩니다. 복원하려면 동일한 Settings 화면에서 그 zip을 업로드합니다. ipmideck는 그것을 검증하고, 파일을 스테이징하고, 다음 시작 시에 적용하므로, 복원을 완료하려면 ipmideck를 재시작하세요.

옵션 B: 데이터 디렉터리 복사

전체 상태가 단지 파일이므로, ipmideck가 중지된 동안 데이터 디렉터리를 복사하여 백업할 수도 있습니다.
# stop ipmideck first, then:
cp -r /data /data-backup-$(date +%Y%m%d)
Docker에서 데이터는 /data에 마운트한 볼륨에 있으므로, 그 볼륨을 백업하세요. 복원은 그 반대입니다. ipmideck를 중지하고, 파일을 데이터 디렉터리에 되돌려 놓고, 다시 시작합니다.
파일 수준 복사 전에 ipmideck를 중지하세요. 데이터베이스는 WAL 모드에서 실행되므로, 앱이 쓰는 동안 복사하면 일관성 없는 스냅샷을 캡처할 수 있습니다. 앱 내 백업은 먼저 체크포인트를 수행하여 이를 방지합니다.

다음 단계

  • 구성: 데이터 디렉터리의 위치와 config.yaml이 담는 것.
  • ipmideck 업데이트: 데이터는 업그레이드를 견뎌냅니다.
  • 보안: 자격 증명이 저장 시 어떻게 암호화되는지.