쿠버네티스에서 Ceph를 사용할 때,
CephFS와 Ceph RBD는 각각의 특성에 따라 StatefulSet이나 Deployment와 조합됩니다.
하지만 둘 다 특정 리소스에 고정된 건 아니고,
파드가 어떻게 데이터를 쓰고 읽는지에 따라 조합이 달라집니다.
| 구분 | CephFS | Ceph RBD |
|---|---|---|
| 타입 | 공유 파일 시스템 (POSIX, RWX 지원) | 블록 스토리지 (RWO 위주) |
| 동시 접근 | 여러 파드에서 동시에 읽기/쓰기 가능 | 보통 1개 파드만 마운트 가능 (RWO 제한) |
| 마운트 방식 | 디렉토리로 마운트 (/mnt/shared) | 디바이스처럼 마운트 (/dev/rbdX) |
| 주요 사용 사례 | 정적 파일 공유, 업로드 저장소, 캐시 공유 등 | 데이터베이스, 메시지 큐, 분산 로그 저장 등 |
/usr/share/nginx/html 공유 /data/uploads 공유vttablet-0, vttablet-1 …| 조합 | 적합한 상황 |
|---|---|
| CephFS + Deployment | 정적 콘텐츠 공유, 업로드, 캐시 공유 등 다수 파드가 같은 파일을 접근할 때 |
| CephFS + StatefulSet | 상태 저장 서비스지만 공유 디렉터리가 필요한 특수 상황 |
| Ceph RBD + Deployment | 단일 파드만 쓸 경우, 또는 교대 방식으로만 마운트할 경우 |
| Ceph RBD + StatefulSet | 파드마다 고유 데이터 디스크가 필요한 경우 (DB, 샤드 구조 등) |