파드의 컨테이너는 이미지로부터 파일 시스템을 제공받습니다.
즉, 파드가 종료되면 파드 내에 변경된 데이터 또한 사용할 수 없게 됩니다.
새 파드가 생성되면 새 파일 시스템을 제공받게 됩니다.
데이터를 유지할수 없기 때문에 상태가 없는 stateless 하다. 라고 합니다.
쿠버네티스의 파드는 새 데이터를 보존하기 위해 외부 저장소 볼륨을 생성하고, 볼륨을 컨테이너에 마운트해서 사용합니다.
이 볼륨은 여러 파드에서 동시에도 접근이 가능합니다.
볼륨의 라이프 사이클은 파드의 라이프 사이클과 같아 파드가 생성되면 볼륨이 생성되고 파드가 삭제되면 볼륨도 삭제됩니다.
파드가 재시작하는 경우에는 데이터가 유지됩니다.
그러나 새로 도입된 PersisentVolume 및 PVClaim을 사용해 파드와 별개의 라이프 사이클을 가질 수 있게 되었습니다.
즉, 파드나 컨트롤러가 제거되고 생성되어도 기존의 볼륨을 사용할 수 있습니다.
볼륨 종류
- emptyDir
임시로 데이터를 저장하는 빈 볼륨
- gitRepo
내부적으로 emptyDir 기능을 이용해 초기에 Git 레포지토리의 내용을 채워서 제공하는 볼륨.
더 이상 사용되지 않습니다.
- hostPath
클러스터 노드의 파일 시스템을 제공하는 볼륨입니다.
- 네트워크 스토리지 볼륨
cephfs, cinder, fc, flexVolume, flocker, glusterfs, quobyte, iscsi, nfs, rbd, vsphereVolume, scaleIO 등
- 클라우드 스토리지 볼륨
awsElasticBlockStore, azureDisk, azureFile, gcePersistentDisk
- 정적/동적 프로비저닝 볼륨
persistentVolumeClaim
- 특수 유형 볼륨
configMap, secret
'Cloud > Kubernates' 카테고리의 다른 글
[k8s, kubernates] PV, PVC (0) | 2024.07.17 |
---|---|
[k8s, kubernates] emptyDir 볼륨과 초기화 컨테이너 (1) | 2024.07.16 |
[k8s, kubernates] Apache(httpd) 웹서비스 구성 (0) | 2024.07.16 |
[k8s, kubernates] 서비스 -1 (0) | 2024.07.15 |
[k8s, kubernates]컨트롤러 : 데몬셋 (0) | 2024.07.09 |