Files

1.3 KiB

Vault backup and recovery

dev-k3s Vault는 single-node integrated Raft입니다. upgrade, Terraform state migration, storage 작업 전에 snapshot을 생성합니다.

Snapshot

short-lived authorized token과 Vault API 연결을 준비합니다.

umask 077
vault operator raft snapshot save .local/vault/dev-k3s.snap
sha256sum .local/vault/dev-k3s.snap
chmod 0600 .local/vault/dev-k3s.snap

즉시 암호화해 init/unseal material과 다른 위치에 보관합니다. snapshot에는 secret payload가 포함됩니다.

Recovery material

  • Raft snapshot
  • unseal key
  • 현재 manifest revision
  • Terraform remote state backup
  • Sealed Secrets controller key

Initial root token은 recovery material이 아닙니다. bootstrap 완료 후 폐기해야 합니다.

Restore exercise

분기마다 isolated disposable cluster에서 다음을 검증합니다.

  1. 동일 Vault version과 storage 설정 배포
  2. Vault init 후 snapshot restore
  3. 복구 key로 unseal
  4. Kubernetes auth 재연결 확인
  5. KV read, JWT signing, dynamic database lease issue/revoke 확인
  6. recovery time과 누락된 의존성 기록

현재 dev 구성은 production recovery 설계가 아닙니다. production은 independent HA Vault, TLS, auto-unseal과 더 엄격한 backup custody가 필요합니다.