-
k8s - Volume스마트팩토리 개발자 교육(23.05.08 ~ 23.10.27)7/Kubernetes 2023. 9. 26. 18:27
Volume
- 저장소를 공유하여 데이터를 사용하도록 한다
- 데이터 저장을 위해 사용된다
- pod가 삭제되어도 사라지지 않도록 한다
1. emptyDir
- pod 생성시 공유폴더를 만들어 준다
- ***pod가 사라지면 파일에 저장된 내용도 사라진다
apiVersion: v1 kind: Pod metadata: name: pod-volume-1 spec: containers: - name: container1 image: kubetm/init volumeMounts: - name: empty-dir mountPath: /mount1 - name: container2 image: kubetm/init volumeMounts: - name: empty-dir mountPath: /mount2 volumes: - name : empty-dir emptyDir: {}container1에 저장된 test.txt 파일

container2에도 보이는 text.txt파일

pod 삭제

삭제된 파일

2. hostPath
- 노드를 지정하여 파일을 공유 받도록 한다
- nodeSelector가 없으면 k8s 상황에 따라 다른 노드에 만들어 질 수 있다
apiVersion: v1 kind: Pod metadata: name: pod-volume-3 spec: nodeSelector: kubernetes.io/hostname: node1 #공유 받을 노드이름 containers: - name: container image: kubetm/init volumeMounts: - name: host-path mountPath: /mount1 volumes: - name : host-path hostPath: path: /node-v type: DirectoryOrCreatepod-volume-3 의 container에서 test.txt파일을 만든다

pod-volume-4 의 container에서 test.txt파일 확인한다

3. PVC / PV
- 외부 저장소에 있는 저장소를 지정하여 저장소 공유를 한다
- pvc 로 외부 저장소의 storage를 나누고 accessModes 로 저장소 형식을 지정한다
- pv에서 나눠진 pvc의 형태에 맞춰 만들다
- pod는 pv에 맞춰 저장소를 공유 받는다
apiVersion: v1 kind: PersistentVolume metadata: name: pv-03 spec: capacity: storage: 2G accessModes: - ReadWriteOnce local: path: /node-v nodeAffinity: required: nodeSelectorTerms: - matchExpressions: - {key: kubernetes.io/hostname, operator: In, values: [k8s-node1]}apiVersion: v1 kind: PersistentVolumeClaim metadata: name: pvc-01 spec: accessModes: - ReadWriteOnce resources: requests: storage: 1G storageClassName: ""apiVersion: v1 kind: Pod metadata: name: pod-volume-3 spec: containers: - name: container image: kubetm/init volumeMounts: - name: pvc-pv mountPath: /mount3 volumes: - name : pvc-pv persistentVolumeClaim: claimName: pvc-01'스마트팩토리 개발자 교육(23.05.08 ~ 23.10.27)7 > Kubernetes' 카테고리의 다른 글
k8s - namespace (0) 2023.09.27 k8s - configMap (0) 2023.09.26 k8s - service (0) 2023.09.26 k8s - pod (0) 2023.09.26 k8s : 특징 (0) 2023.09.22