LabHub

Rootless Podman 운영 · graph root 옮기기 · 실습

graph root 를 새 경로로

LabHub 에서 이어서 보기

목표

rootless podman 의 graph root 를 홈에서 별도 경로로 옮기고, 새 스토어를 이미지로 다시 채웁니다. 실무에서 가장 자주 하는 podman 운영 작업입니다.

왜 중요한가

rootless podman 의 이미지는 ~/.local/share/containers/storage 에 쌓입니다. CUDA 베이스 이미지 하나가 8GB 인 GPU 서버에서는 홈 파티션이 순식간에 찹니다. 그리고 홈이 차면 podman 뿐 아니라 그 사용자의 모든 작업이 멈춥니다. 그래서 GPU 노드 표준 설정에는 graphroot 이전이 아예 들어 있는 경우가 많습니다.

주의할 점 두 가지. 새 스토어는 비어 있습니다 — 기존 이미지는 옛 경로에 남고 podman 은 더 이상 보지 않습니다. 그리고 runroot 는 옮기지 않습니다 — 실행 중 락과 임시 상태가 들어가므로 tmpfs 여야 합니다.

단계

1. /root/gr 디렉터리를 만들고, podster 의 현재 graphRootrunRoot 를 각각 한 줄씩(graphRoot 가 먼저) /root/gr/before.txt 에 적으세요.
2. 새 경로 /srv/podman/podster 를 만들고 소유자를 podster, 권한을 700 으로 설정하세요.
3. podsterstorage.conf 에서 graphroot 를 새 경로로 바꾸세요.
4. podman infographRoot 가 새 경로인지 확인해 /root/gr/after.txt 에 한 줄로 적으세요.
5. 새 스토어의 이미지 개수를 숫자 한 줄로 /root/gr/empty.txt 에 적으세요. 0 이어야 합니다.
6. /opt/images/labhub-alpine.tar 를 새 스토어로 적재하고, 적재 후 이미지 목록을 /root/gr/images.txt 로 저장하세요. 최소 1개가 있어야 합니다.
7. /root/gr/runroot.txt 를 다음 2줄로 만드세요.
RUNROOT=<현재 runRoot 값> / WHY=tmpfs
8. /root/gr/report.txt 를 다음 4줄로 만드세요.
OLD=<1번의 graphRoot> / NEW=/srv/podman/podster / IMAGES_BEFORE=0 / IMAGES_AFTER=<6번 이후 이미지 개수>

참고

단계 8개

  1. 현재 경로 기록
  2. 새 경로 준비
  3. storage.conf 수정
  4. 새 경로 반영 확인
  5. 새 스토어가 비어 있음 확인
  6. 이미지 아카이브 적재
  7. runroot 확인과 근거 기록
  8. 이전 보고서