평소에는 잘 도는 배치가 어느 날 특정 시간대(예: 04 시부터 07 시까지)에만 전부 실패하고, 그 이후에는 다시 정상으로 돌아온다. 같은 시간대의 다른 날에는 아무 문제가 없다.
로그에는 Vault 토큰 갱신 실패나 HTTP 타임아웃이 찍히지만, 같은 메시지가 정상인 날에도 매일 찍힌다. 그래서 로그만 보고 원인을 짚을 수 없다.
이런 형태에서 가장 먼저 할 일은 "매일 찍히는 것" 과 "그날만 찍힌 것" 을 분리하는 것이다.
grep -h '<error-keyword>' /var/log/sas/viya/vault/*.log | awk '{print $1}' | sort | uniq -c
정상인 날과 실패한 날의 같은 시간대를 나란히 놓고, 패턴이 아니라 밀도와 간격을 본다. 같은 메시지라도 정상일 때는 드문드문, 실패일 때는 촘촘하다면 하부에서 무언가가 멈춘 것이다.
같은 시간대의 커널 로그를 보니 백업 에이전트가 스냅샷을 잡고 있었다.
kernel: veeamsnap:blk | WRN | Unable to freeze device [253:4]: no superblock was found
kernel: XFS (veeamimage1): Mounting V5 Filesystem
kernel: XFS (veeamimage1): Starting recovery (logdev: internal)
kernel: XFS (veeamimage1): Ending recovery (logdev: internal)
kernel: XFS (veeamimage1): Unmounting Filesystem
이 네 단계(Mounting → Starting recovery → Ending recovery → Unmounting)는 백업이 스냅샷 볼륨을 잠시 마운트해 무결성을 확인하고 내리는 정상 동작이다. 볼륨 하나당 수 초 안에 끝나면 서비스에 영향이 없다.
문제가 되는 모양은 이렇다.
| 관측 | 의미 |
|---|---|
| 한 볼륨의 Mount 부터 Unmount 까지 수십 초 이상 | 메타데이터 flush 가 지연됐다. 그 구간 동안 I/O 가 막힌다 |
여러 veeamimage 가 거의 동시에 recovery 시작 |
병렬 처리로 freeze 구간이 길어진다 |
Unable to freeze device 가 반복 |
특정 블록 장치를 얼리지 못해 타임아웃까지 기다린다 |
| freeze 구간과 서비스 타임아웃 시각이 겹침 | 인과가 성립한다 |
정상인 날에는 각 볼륨이 순차적으로 짧게 처리되고, 실패한 날에는 여러 볼륨이 겹치면서 freeze 구간이 길어졌다.
grep -E 'veeamsnap|veeamimage' /var/log/messages | head -100
journalctl -k --since "2025-10-13 01:00" --until "2025-10-13 08:00" | grep -Ei 'freeze|xfs|nfs|blocked'
sar -u -f /var/log/sa/sa13
sar -d -f /var/log/sa/sa13
CPU 가 그 시간대에만 치솟았다면 백업 에이전트 프로세스와 시간대를 대조한다.
ps -eo pid,etimes,pcpu,comm --sort=-pcpu | head
대화 기록은 원인을 백업 스냅샷의 freeze 구간으로 좁힌 상태에서 끝난다. 백업 창을 옮긴 뒤 재발 여부는 확인되지 않았다.