728x90
반응형
SMALL
스토리지 볼륨 (Storage Volume)
볼륨은 스토리지 어레이에서 스토리지 공간을 관리하고 구성하는 데이터 컨테이너이다. 볼륨은 스토리지 어레이에서 사용할 수 있는 스토리지 용량에서 생성되며 시스템 리소스를 쉽게 구성 및 사용할 수 있다.
PersistentVolume
PV는 관리자가 프로비저닝하거나, Storage class를 사용해서 동적으로 프로비저닝한 클러스터의 스토리지이다.
sudo -i
cd /tmp/
mkdir k8spv
exit
NFS (Network File System)은 네트워크로 연결된 다른 컴퓨터의 파일 시스템을 내 컴퓨터로 마운트해서 상대방의 파일 시스템 일부를 자시 자신의 디렉토리처럼 사용하는 프로토콜이다. 쉽게 말해, 저장 공간을 공유할 수 있도록 해주는 서비스이다.
sudo apt install nfs-common
sudo apt install nfs-kernel-server
systemctl status nfs-server.service
다음 명령어로 클라이언트가 루트 권한 획득을 가능하게 한다.
sudo vim /etc/exports
/tmp/k8spv {프라이빗 IPv4 주소}(rw,no_root_squash)
sudo systemctl restart nfs-server
systemctl status nfs-server.service
매니페스트 파일 작성
vim volume-test04-1-pv.yml
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-01
spec:
accessModes:
- ReadWriteOnce
capacity:
storage: 100Mi
persistentVolumeReclaimPolicy: Retain
storageClassName: pv-test-01
nfs:
server: 172.31.2.228
path: /tmp/k8spv
vim volume-test04-2-pvc.yml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-01
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 30Mi
storageClassName: pv-test-01
vim volume-test04-3-pod.yml
apiVersion: v1
kind: Pod
metadata:
name: nginx-volume-04
spec:
containers:
- name: nginx-test01
image: nginx:latest
volumeMounts:
- name: nfs-pv-01
mountPath: /mount01
volumes:
- name: nfs-pv-01
persistentVolumeClaim:
claimName: pvc-01
매니페스트 파일 실행
kubectl apply -f volume-test04-1-pv.yml
kubectl get pv
kubectl apply -f volume-test04-2-pvc.yml
kubectl get pvc
kubectl apply -f volume-test04-3-pod.yml
kubectl get pod
kubectl exec -it nginx-volume-04 -- /bin/bash
cd mount01/
echo "hello nfs pv!" > ./nfs_pvtest.txt
cat nfs_pvtest.txt
cd /tmp/k8spv/
cat nfs_pvtest.txt
작업 디렉토리로 와서 실습 환경을 삭제한다.
kubectl delete -f volume-test04-3-pod.yml
kubectl delete -f volume-test04-2-pvc.yml
kubectl delete -f volume-test04-1-pv.yml
728x90
반응형
LIST
'App Programming > Kubernetes' 카테고리의 다른 글
[K8s] 헬름 (Helm) (0) | 2024.06.09 |
---|---|
[K8s] 스테이트풀셋 (0) | 2024.06.09 |
[K8s] 롤아웃 (0) | 2024.06.08 |
[K8s] 매니페스트로 디플로이먼트 실행 (0) | 2024.06.08 |
[K8s] 리플리카셋 조정 (0) | 2024.06.08 |