6.1. PersistentVolumeClaims (영구 볼륨 클레임)
개요
PersistentVolumeClaims 페이지는 MCM 컨트롤 플레인에서 관리하는 모든 PVC를 통합적으로 관리하는 페이지입니다. PVC(PersistentVolumeClaim)는 사용자가 스토리지를 요청하는 Kubernetes 리소스로, PersistentVolume과 바인딩되어 파드에 영구 스토리지를 제공합니다.
주요 목적:
- 멀티클러스터 PVC 통합 관리
- 스토리지 요청 및 바인딩 상태 모니터링
- 스토리지 클래스 및 접근 모드 관리
- PropagationPolicy를 통한 PVC 배포
PVC 사용 사례:
- 데이터베이스 영구 저장소 제공
- 파일 업로드 스토리지
- 로그 및 백업 저장소
- 애플리케이션 상태 저장
- 공유 파일 시스템
화면 구성
PersistentVolumeClaims 페이지는 테이블 형태로 PVC 목록을 표시합니다.

페이지 상단 요소
| 요소 | 설명 |
|---|---|
| 네임스페이스 필터 | 특정 네임스페이스의 PVC만 표시 |
| 시스템 네임스페이스 포함 | 시스템 네임스페이스(kube-system 등)의 PVC 표시 토글 |
| 새로고침 버튼 | PVC 목록 갱신 |
| 생성 버튼 | 새 PVC 생성 다이얼로그 열기 |
| 검색창 | PVC 이름으로 검색 |
테이블 컬럼
| 컬럼 | 설명 | 정렬 |
|---|---|---|
| 이름 | PVC 이름 | ✅ |
| 네임스페이스 | PVC가 속한 네임스페이스 | ✅ |
| 상태 | PVC 바인딩 상태 (Bound/Pending/Lost) | ✅ |
| 볼륨 | 바인딩된 PersistentVolume 이름 | ✅ |
| 용량 | 할당된 스토리지 용량 | ✅ |
| 접근 모드 | 볼륨 접근 모드 (RWO/RWX/ROX) | ✅ |
| 스토리지 클래스 | 사용된 스토리지 클래스 이름 | ✅ |
| 경과시간 | PVC 생성 후 경과 시간 | ✅ |
| 작업 | 편집/삭제 버튼 | - |
상태 표시
상태 컬럼은 PVC의 바인딩 상태를 표시합니다:
| 상태 | 설명 | 표시 |
|---|---|---|
| Bound | PersistentVolume에 바인딩됨 | 녹색 |
| Pending | 적합한 PV를 기다리는 중 | 노란색 |
| Lost | 바인딩된 PV가 삭제됨 | 빨간색 |
접근 모드
| 접근 모드 | 설명 |
|---|---|
| RWO | ReadWriteOnce - 단일 노드에서 읽기/쓰기 |
| RWX | ReadWriteMany - 여러 노드에서 읽기/쓰기 |
| ROX | ReadOnlyMany - 여러 노드에서 읽기 전용 |
PVC 상세 정보
PVC 행을 클릭하면 상세 정보 패널이 열립니다.

상세 패널 헤더
| 요소 | 설명 |
|---|---|
| PVC 이름 | 선택한 PVC 이름 |
| 네임스페이스 | PVC가 속한 네임스페이스 |
| 상태 | PVC 바인딩 상태 (예: Bound) |
액션 버튼
| 버튼 | 기능 |
|---|---|
| 새로고침 | PVC 정보 갱신 |
| 편집 | YAML 편집 모드 |
| 삭제 | PVC 삭제 |
탭 메뉴
개요 탭
PVC의 기본 정보, 스토리지 정보, 스펙 정보를 표시합니다.
기본 정보:
| 항목 | 설명 |
|---|---|
| 이름 | PVC 이름 |
| 네임스페이스 | PVC가 속한 네임스페이스 |
| 상태 | PVC 바인딩 상태 |
| 경과시간 | 생성 후 경과 시간 |
| 생성일 | PVC 생성 일시 |
스토리지 정보:
| 항목 | 설명 |
|---|---|
| 볼륨 | 바인딩된 PersistentVolume 이름 |
| 용량 | 실제 할당된 스토리지 용량 |
| 접근 모드 | 볼륨 접근 모드 (RWO/RWX/ROX) |
| 스토리지 클래스 | 사용된 스토리지 클래스 |
스펙 정보:
| 항목 | 설명 |
|---|---|
| 볼륨 모드 | Filesystem 또는 Block |
| 요청 스토리지 | 요청한 스토리지 용량 |
멀티클러스터 정책 탭
PVC에 적용된 멀티 클러스터 정책 정보를 표시합니다.

전파 정책 (PropagationPolicy):
| 컬럼 | 설명 |
|---|---|
| 이름 | PropagationPolicy 이름 |
| 네임스페이스 | 정책이 속한 네임스페이스 |
| 범위 | 네임스페이스 범위 정책 / 클러스터 범위 정책 |
| 대상 클러스터 | 타겟 클러스터 목록 |
오버라이드 정책 (OverridePolicy):
클러스터별 커스텀 설정이 있는 경우 표시됩니다.
레이블 탭
PVC에 적용된 Kubernetes 레이블 목록을 표시합니다.
어노테이션 탭
PVC에 적용된 어노테이션 목록을 표시합니다.
이벤트 탭
PVC 관련 Kubernetes 이벤트를 표시합니다.
PVC 생성
새로운 PVC를 MCM 컨트롤 플레인에 생성합니다.
입력 항목
| 항목 | 필수 | 설명 |
|---|---|---|
| 이름 | ✅ | PVC 이름 |
| 네임스페이스 | ✅ | 배포할 네임스페이스 |
| 스토리지 클래스 | - | 사용할 스토리지 클래스 |
| 접근 모드 | ✅ | 볼륨 접근 모드 선택 |
| 용량 | ✅ | 요청할 스토리지 용량 |
PVC 정의 예시
기본 PVC:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: my-pvc
namespace: default
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
storageClassName: standard
공유 스토리지 PVC:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: shared-pvc
namespace: default
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 10Gi
storageClassName: nfs-client
블록 볼륨 PVC:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: block-pvc
namespace: default
spec:
accessModes:
- ReadWriteOnce
volumeMode: Block
resources:
requests:
storage: 5Gi
storageClassName: block-storage
YAML 편집
"YAML 편집" 탭에서 PVC 정의를 직접 작성할 수 있습니다.
PVC 작업
PVC 편집
- PVC 선택
- 상세 패널에서 "편집" 버튼 클릭
- YAML 에디터에서 PVC 정의 수정
- "저장" 버튼 클릭
주의: PVC의 일부 필드(접근 모드, 스토리지 클래스 등)는 생성 후 변경할 수 없습니다.
PVC 삭제
⚠️ 주의: PVC를 삭제하면 데이터가 영구적으로 손실될 수 있습니다. PV의 Reclaim Policy에 따라 데이터가 유지되거나 삭제됩니다.
- 삭제할 PVC 선택
- 상세 패널에서 "삭제" 버튼 클릭
- 확인 다이얼로그에서 PVC 이름 입력
- "삭제" 버튼 클릭
사용 예시
시나리오 1: 데이터베이스용 PVC 생성
- "생성" 버튼 클릭
- PVC 정보 입력:
- 이름:
postgres-data - 네임스페이스:
database - 스토리지 클래스:
ssd-storage - 접근 모드:
ReadWriteOnce - 용량:
20Gi
- 이름:
- "생성" 버튼 클릭
- PropagationPolicy로 타겟 클러스터 지정
- 데이터 베이스 파드에서 PVC 마운트
시나리오 2: 공유 파일 스토리지 PVC 생성
- "생성" 버튼 클릭 → YAML 편집 탭 선택
- 다음 YAML 작성:
apiVersion: v1kind: PersistentVolumeClaimmetadata:name: shared-filesnamespace: appspec:accessModes:- ReadWriteManyresources:requests:storage: 50GistorageClassName: nfs-client
- "생성" 버튼 클릭
- 여러 파드에서 동일한 PVC 마운트
시나리오 3: PVC 바인딩 상태 확인
- PVC 목록에서 상태 컬럼 확인
- "Pending" 상태인 PVC 클릭
- 이벤트 탭에서 바인딩 실패 원인 확인:
- 적합한 PV 없음
- 스토리지 클래스 문제
- 용량 부족
- 필요한 조치 수행
시나리오 4: 멀티클러스터 PVC 배포
- PVC 생성
- PropagationPolicy 생성:
- 리소스 셀렉터: PVC 지정
- 타겟 클러스터: 배포할 클러스터 선택
- 상세 패널에서 "멀티클러스터 정책" 탭 확인
- 각 클러스터에서 PVC 상태 확인