Kubernetes PV, PVC 매칭 지정하기

PV와 PVC를 생성하다보면 서로 매칭이 안되고 다른 PV와 PVC가 매칭되는 경우가 있다.
PV와 PVC를 Label ID로 매칭하면 이슈를 최소화할 수 있다.

본 포스트에서는 Key를 test-key-id로 Value를 0으로 지정해 예를 들었다.

apiVersion: v1
kind: PersistentVolume
metadata:
  name: test-0
  labels:
    type: nfs
    test-key-id: "0"
spec:
  capacity:
    storage: 1Gi
  accessModes:
  - ReadWriteOnce
  nfs:
    server: 192.0.0.0
    path: /mnt/test/0
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: test-0
  namespace: test
spec:
  storageClassName: ""
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 1Gi
  selector:
    matchExpressions:
    - key: test-key-id
      operator: In
      values:
      - "0"
---
apiVersion: v1
kind: PersistentVolume
metadata:
  name: test-1
  labels:
    type: nfs
    test-key-id: "1"
spec:
  capacity:
    storage: 1Gi
  accessModes:
  - ReadWriteOnce
  nfs:
    server: 192.0.0.0
    path: /mnt/test/1
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: test-1
  namespace: test
spec:
  storageClassName: ""
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 1Gi
  selector:
    matchExpressions:
    - key: test-key-id
      operator: In
      values:
      - "1"

Leave a Comment