Local Host Storage ?
OpenEBS hostpath는 말 그대로 쿠버네티스 노드(호스트) 안의 특정 디렉터리/디스크 경로를 PV로 쓰는 방식이다.
즉 PV가 NFS나 Ceph 같은 네트워크 스토리지가 아니라, 해당 노드의 로컬 디스크를 바로 사용하게 된다
그래서 PV/PVC를 붙인 파드 입장에서는 /DATA 같은 마운트 경로로 보이지만, 실제 데이터는 그 파드가 붙어 있는 노드의 로컬 디스크에 저장된다.
Local Host Storage의 장점
네트워크 왕복 존재 x
NFS/Ceph/EBS 같은 스토리지는 보통 I/O가 네트워크를 탄다.
반면 hostpath는 로컬 디스크를 바로 때리니까 네트워크 지연(latency)과 병목이 거의 없다는 방향으로 간다.
분산 파일 시스템 오버헤드 x
Ceph 같은 분산 스토리지는 복제/합의/네트워크 전송/메타데이터 처리 같은 오버헤드가 있다.
hostpath는 그런 레이어가 얇아서 IOPS가 잘 나오기 쉬운 구조이다.
정리하면, hostpath는 복잡한 기능(분산/복제)을 포기하고 로컬 디스크 직결로 성능을 얻는 선택이다.
Local Host Storage의 단점
파드의 노드 종속 문제

- 파드가 Node1에서 뜨고, PVC(hostpath)가 Node1 로컬 디스크를 물고 있다.
- 해당 데이터는 Node1에만 존재한다.
- 만약 스케줄링이 바뀌어서 파드가 Node2로 가면, Node2에는 그 데이터가 없다.
따라서 노드 장애/드레인/업데이트 같은 이벤트로 파드가 이동하려고 해도, 볼륨이 특정 노드에 묶여 있으면 다른 노드에서 재기동이 불가능하거나 Pending이 된다.
노드 다운으로 인한 서비스 다운 문제
hostpath 기반 상태 저장 파드는 노드 장애 = 데이터 소실로 이어질 수 있다.
그래서 운영 환경에서 Local Host Storage를 단편적으로 도입하면, 고가용성(HA)이 깨질 수 있다.
Local Host Storage 제약사항 극복
Local Host Storage를 운영 환경에 도입할 때는 어플리케이션 레벨에서 HA를 구현하는 것이 일반적이다.
어플리케이션 레벨에서 HA를 구현할 수 있는 솔루션들은 다음과 같이 존재한다.
- MariaDB Galera Cluster
- MySQL Replication
- PostgreSQL Streaming Replication
- Redis Sentinel / Cluster
따라서, 각 노드들은 로컬 디스크를 사용하지만 DB들은 서로 데이터를 동기화가 이루어질 수 있다.
Reference
- https://kubernetes.io/ko/docs/home/
- 이정훈, ⌜24단계 실습으로 정복하는 쿠버네티스⌟, 위키북스, 2022, 492쪽