반응형
Kubernetes Volumes 운영 환경 분리
- 기본 스토리지 운영환경의 분리
1. 관리자 : 스토리지 구성
2. 개발자 : 필요한 만큼 요구
- Persistent Volume V & Persistent Volume Claim
1. Persistent Volume :데이터를 저장할 볼륨. 볼륨을 생성하고 이를 클러스터에 등록한 것
2. Persistent Volume V & Persistent Volume Claim : 필요한 저장 공간, RW 모드 등 요청사항을 기술한 명세서로서 PV에
전달하는 요청. PV와 바인딩을 하는 목적으로 사용
" PV는 관리자에 의해 생성된 볼륨을 뜻하고, PVC는 사용자가 볼륨을 사용하기 위해 PV에 요청을 하게 된다."
예제는 https://kubernetes.io/docs/concepts/storage/persistent-volumes/ 쿠버네티스 공식 사이트에서 예제 참고해도됨
PV(Persistent Volume) 생성
kubectl get persistentvolume
No resources found
cat pv.yaml
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv1
spec:
capacity:
storage: 20Gi
volumeMode: Filesystem
accessModes:
- ReadWriteMany
storageClassName: manual
persistentVolumeReclaimPolicy: Delete
nfs:
server: ip
path: /sharedir/k8s
kubectl apply -f pv.yaml
persistentvolume/pv1 created
kubectl get pv
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
pv1 20Gi RWX Delete Available manual 15s
PVC(Persistent Volume Claim) 생성
cat pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-web
spec:
accessModes:
- ReadWriteMany
volumeMode: Filesystem
resources:
requests:
storage: 20Gi
storageClassName: manual
kubectl apply -f pvc.yaml
persistentvolumeclaim/pvc-web created
kubectl get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
pvc-web Bound pv1 20Gi RWX manual 11s
kubectl get pv
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
pv1 20Gi RWX Delete Bound default/pvc-web manual 6m4s
어플리케이션 pod에 pv 연결
cat pvc-pod-web.yaml
apiVersion: v1
kind: Pod
metadata:
name: web
spec:
containers:
- image: nginx:1.14
name: nginx
volumeMounts:
- name: html
mountPath: /usr/share/nginx/html
volumes:
- name: html
persistentVolumeClaim:
claimName: pvc-web
kubectl apply -f pvc-pod-web.yaml
pod/web created
[참고]
- 유투브 따배쿠 강의
반응형
'Kubernetes' 카테고리의 다른 글
[Kubernetes] DNS (0) | 2023.02.09 |
---|---|
[Kubernetes] Kubernetes Network (0) | 2023.02.02 |
[kubernetes] Kubernetes 스토리지 (0) | 2023.01.30 |
[Kubernetes] Kubernetes 권한 (0) | 2023.01.29 |
[Kubernetes] Kubernetes 인증 (1) | 2023.01.29 |