Using volume snapshots | Google Kubernetes Engine (GKE) | Google Cloud
특정 시점에서 PVC의 상태를 스냅 샷을 통해 그대로 보존시켜 추후 데이터 백업할 수 있는 기능
참고: DISABLED 하고 싶으면 ENABLED대신 DISABLED을 써준다.
gcloud container clusters update CLUSTER-NAME \
--update-addons=GcePersistentDiskCsiDriver=ENABLED
콘솔에서 해당 Cluster에서 확인

CSI Driver가 enable되면 GKE는 자동으로 Storageclass를 설치한다. 아래 명령어로 확인해보자.
kubectl get sc
standard, premium, gold, enterprise 등의 class가 나온다.

storageClassName: GKE는 자동으로 만든 Storageclass 중 standard-rwo를 사용한다.
kubectl apply -f - <<EOF
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: my-pvc
spec:
storageClassName: standard-rwo
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
EOF
kubectl apply -f - <<EOF
apiVersion: apps/v1
kind: Deployment
metadata:
name: hello-app
spec:
selector:
matchLabels:
app: hello-app
template:
metadata:
labels:
app: hello-app
spec:
containers:
- name: hello-app
image: google/cloud-sdk:slim
args: [ "sleep", "3600" ]
volumeMounts:
- name: sdk-volume
mountPath: /usr/share/hello/
volumes:
- name: sdk-volume
persistentVolumeClaim:
claimName: my-pvc
EOF
Deployment를 통해 생성된 Pod내에 test파일을 추가해보자.