[쿠버네티스 스토리지] Volume 개요와 종류
볼륨 (Volume)
- 컨테이너가 외부 스토리지에 액세스하고 공유하는 방법
- 파드의 각 컨테이너에는 고유의 분리된 파일 시스템 존재
- 볼륨은 파드의 컴포넌트이며 파드의 스펙에 의해 정의
- 독립적인 쿠버네티스 오브젝트가 아니며 스스로 생성, 삭제 불가
- 각 컨테이너의 파일 시스템의 볼륨을 마운트하여 생성
- 볼륨의 종류
- 임시 볼륨: emptyDir (파드의 스토리지)
- 로컬 볼륨: hostpath, local (노드의 스토리지)
- 네트워크 볼륨: iSCSI, NFS, cephFS, glusterFS.. (클러스터 외부 자원)
- 네트워크 볼륨 (클라우드 종속적): gcePersistentDisk, awsEBS, azureFile..
주요 사용 가능한 볼륨의 유형
- emptyDir: 일시적인 데이터 저장, 비어 있는 디렉터리
- hostPath: 파드에 호스트 노드의 파일 시스템에서 파일이나 디렉토리를 마운트
- nfs: 기존 NFS (네트워크 파일 시스템) 공유가 파드에 장착
- gcePersistentDisk: 구글 컴퓨트 엔진 (GCE) 영구디스크 마운트 (awsElasticBlockStore, azureDisk 또한 클라우드에서 사용하는 형태)
- persistentVolumeClaim: 사용자가 특정 클라우드 환경의 세부 사항을 모른 채 GCE PersistentDisk 또는 iSCSI 볼륨과 같은 내구성 스토리지를 요구(Claim)할 수 있는 방법
- configMap, Secret, downwardAPI: 특수한 유형의 볼륨(나중에 배움)