7/12-13

스토리지

볼륨 종류

Untitled

(쿠버네티스에서 지원하는 볼륨의 종류)

kubectl explain pod.spec.volumes

  1. emptyDir

    임시로 데이터를 저장하는 빈 볼륨

    RAM을 저장공간으로 사용 → 빠른 데이터 처리 가능

  2. gitRepo

    내부적으로 empthDir 기능을 이용하여, 초기에 Git 레포지토리의 내용을 채워서 제공하는 볼륨

    더 이상 사용되지 X

  3. hostPath

    쿠버네티스 클러스터 노드(호스트)의 FS를 제공하는 볼륨

    어떤 디렉토리인지 지정가능, 미리 데이터 채워서 제공 가능(emptyDir은 불가능)

    네트워크 스토리지 아님, 로컬에 있는 디스크 사용해야함

  4. 네트워크 스토리지 볼륨

    cephfs, cinde, fc, flexVolume, flocker, glusterfs, quobyte, iscsi, nfs, rbd, vsphereVolume, scaleIO 등

  5. 클라우드 스토리지 볼륨

    awsElasticBlackStore(EBS), azureDisk, azureFile, gceP

  6. **정적/동적 프로비저닝 볼륨**

    persistentVolumeClaim

  7. 특수 유형 볼륨

    configMap, secret

emptyDir

explain으로 확인 가능

explain으로 확인 가능

아무 데이터도 없는 빈 디렉토리를 제공해주는 볼륨

파드가 생성하는 데이터를 저장할 수 있으며, 동일한 파드 내의 컨테이너 간에 데이터를 공유할 때 유용하게 사용

또한, 빅데이터와 같은 큰 데이터셋을 처리하기 위한 임시 저장소로도 사용 가능

myapp-rs-emptyDir.yaml

myapp-rs-emptyDir.yaml

web-server 컨테이너는 nginx 웹 서버로 /usr/share/nginx/html 디렉토리에 볼륨을 마운트

html-generator 컨테이너는 ghcr.io/c1t1d0s7/fortune 이미지를 사용하여 같은 볼륨을 /var/htdocs 디렉토리에 마운트

fortune은 랜덤 메세지 출력하는 명령어

3초마다 포춘 명령을 실행하도록 구성됨