hostPath: Node 단위의 데이터 공유
hostPath는 Kubernetes 노드의 파일 시스템에 있는 특정 경로를 Pod에 마운트하는 볼륨 타입이다.
- 노드 의존적: hostPath 볼륨은 Pod이 실행되는 특정 노드의 파일 시스템 경로에 접근한다. 따라서 다른 노드에서는 동일한 경로에 접근할 수 없다.
- 데이터 지속성: Pod이 재시작되거나 다시 스케줄링되어도 동일한 노드에서 실행된다면 데이터는 그대로 유지된다. 하지만 다른 노드로 스케줄링될 경우 데이터에 접근할 수 없다.
apiVersion: v1
kind: Pod
metadata:
name: hostpath-example
spec:
containers:
- name: test-container
image: busybox
volumeMounts:
- mountPath: /test-hostpath
name: test-volume
volumes:
- name: test-volume
hostPath:
path: /data
type: Directory
emptyDir: Pod 단위의 데이터 공유
emptyDir는 Pod가 생성될 때 빈 디렉토리를 제공하는 볼륨 타입이다.
- Pod 내에서만 데이터 공유: emptyDir 볼륨은 동일한 Pod 내의 컨테이너들 간에 데이터를 공유할 수 있다. Pod이 삭제되면 데이터도 함께 삭제된다.
- 데이터 지속성 없음: Pod이 삭제되거나 재시작되면 emptyDir 볼륨의 데이터는 사라진다.
apiVersion: v1
kind: Pod
metadata:
name: emptydir-example
spec:
containers:
- name: test-container
image: busybox
volumeMounts:
- mountPath: /test-emptydir
name: test-volume
volumes:
- name: test-volume
emptyDir: {}
둘 다 굉장히 제한된 사용환경을 갖고 있다보니 사용하는 경우는 잘 없다.
Pod 이하 단위에서 상태를 잘 갖지 않기 때문에 마치 백엔드를 stateless하게 개발하는 것과 비슷.
728x90
'Kubernetes' 카테고리의 다른 글
[k8s] Kubernetes Architecture (0) | 2024.07.08 |
---|---|
[k8s] 쿠버네티스를 위한 yaml 유효성 검사 세팅 (0) | 2024.06.11 |
[k8s] 마스터, 워커 (0) | 2023.04.12 |
Kubernetes Overview (0) | 2023.04.07 |
[k8s] 운영상 관점에서의 VM과 container. (0) | 2023.04.05 |
댓글