스토리지 관리하기
Kubernetes Engine 이용 시 사용할 스토리지를 생성하고 관리할 수 있습니다. 스토리지는 PVC, PV, 스토리지클래스 항목별로 생성한 후 관리합니다.
PVC, PV, 스토리지클래스 서비스는 서비스 생성 시 선택한 클러스터(네임스페이스)로 기본 설정됩니다. 목록의 다른 항목을 선택해도 기본 클러스터(네임스페이스) 설정이 유지됩니다.
- 다른 클러스터(네임스페이스)를 선택하려면 목록 오른쪽의 톱니바퀴 버튼을 클릭하세요. 클러스터/네임스페이스 설정 팝업창에서 변경할 클러스터와 네임스페이스를 선택하고 확인 버튼을 클릭하세요. 선택한 클러스터/네임스페이스에 생성된 서비스를 확인할 수 있습니다.
스토리지 유형별로 연계되는 항목은 다음과 같습니다.
| 유형 | 상세 설명 |
|---|---|
| 블록 스토리지 | Virtual Server 내 Block storage 상품과 연계하여 해당 상품의 Volume을 사용하는 스토리지 클래스를 지원 |
| 오브젝트 스토리지 | Samsung Cloud Platform 상품 또는 외부의 Object Storage와 연계 가능
|
| 파일 스토리지 | File Storage 상품과 연계하여 NFS 및 CIFS 프로토콜 Volume의 스토리지 클래스를 지원
|
PVC 관리하기
Persistent Volume Claim(PVC)은 필요한 스토리지 용량을 할당받기 위해 정의한 객체입니다. PVC는 추상화를 통해 높은 사용성을 제공하며, 컨테이너 라이프사이클(Container Lifecycle) 만료 시 데이터가 함께 소멸되는 문제를 방지할 수 있습니다(Data Persistence 유지).
PVC 생성하기
PVC를 생성하려면 다음 절차를 따르세요.
- 모든 서비스 > Container > Kubernetes Engine 메뉴를 클릭하세요. Kubernetes Engine의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 스토리지 메뉴 아래 PVC를 클릭하세요. PVC 목록 페이지로 이동합니다.
- PVC 목록 페이지에서 클러스터와 네임스페이스를 왼쪽 상단의 톱니바퀴 버튼에서 선택 후, 오브젝트 생성을 클릭하세요.
- 오브젝트 생성 팝업창에서 오브젝트 정보를 입력하고 확인 버튼을 클릭하세요.
PVC 상세 정보 확인하기
PVC 상세 정보를 확인하려면 다음 절차를 따르세요.
- 모든 서비스 > Container > Kubernetes Engine 메뉴를 클릭하세요. Kubernetes Engine의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 스토리지 메뉴 아래 PVC를 클릭하세요. PVC 목록 페이지로 이동합니다.
- PVC 목록 페이지에서 클러스터와 네임스페이스를 왼쪽 상단의 톱니바퀴 버튼에서 선택 후, 확인을 클릭하세요.
- PVC 목록 페이지에서 상세 정보를 확인하려는 항목을 선택하세요. PVC 상세 페이지로 이동합니다.
- 목록 상단의 시스템 객체 표시를 선택하면 쿠버네티스 객체 항목을 제외한 나머지 항목이 표시됩니다.
- 각 탭을 클릭하여 서비스 정보를 확인하세요.
구분 상세 설명상태 표시 PVC의 현재 상태를 표시합니다. - Bound: 정상 연결
PVC 삭제 PVC를 삭제 상세 정보 PVC의 상세 정보 확인 가능 YAML PVC의 리소스 파일을 YAML 편집기에서 수정 가능 - 편집 버튼을 클릭하고 리소스를 수정한 후, 저장 버튼을 클릭하여 변경 사항을 적용
이벤트 PVC 내에서 발생한 이벤트를 확인 Account 정보 Account 이름, 위치, 생성 일시 등, Account에 대한 기본적인 정보를 확인 메타데이터 정보 PVC의 메타데이터 정보를 확인 객체 정보 PVC의 객체 정보를 확인 표. PVC 상세 정보 항목
PVC 삭제하기
PVC를 삭제하려면 다음 절차를 따르세요.
- 모든 서비스 > Container > Kubernetes Engine 메뉴를 클릭하세요. Kubernetes Engine의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 스토리지 메뉴 아래 PVC를 클릭하세요. PVC 목록 페이지로 이동합니다.
- PVC 목록 페이지에서 클러스터와 네임스페이스를 왼쪽 상단의 톱니바퀴 버튼에서 선택 후, 확인을 클릭하세요.
- PVC 목록 페이지에서 삭제하려는 항목을 선택하세요. PVC 상세 페이지로 이동합니다.
- PVC 상세 페이지에서 PVC 삭제를 클릭하세요.
- 알림 확인창이 나타나면 확인 버튼을 클릭하세요.
PVC 목록 페이지에서 삭제하려는 항목을 선택한 후, 삭제를 클릭하면 선택한 PVC를 삭제할 수 있습니다.
- PVC를 삭제하기 전, 삭제될 PV 및 볼륨의 백업 여부 등을 확인하세요.
PV 관리하기
Persistent Volume(PV)은 시스템 관리자가 Kubernetes Engine에 생성한 물리 디스크를 의미합니다.
PV 생성하기
PV를 생성하려면 다음 절차를 따르세요.
- 모든 서비스 > Container > Kubernetes Engine 메뉴를 클릭하세요. Kubernetes Engine의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 스토리지 메뉴 아래 PV를 클릭하세요. PV 목록 페이지로 이동합니다.
- PV 목록 페이지에서 클러스터와 네임스페이스를 왼쪽 상단의 톱니바퀴 버튼에서 선택 후, 오브젝트 생성을 클릭하세요.
- 오브젝트 생성 팝업창에서 오브젝트 정보를 입력하고 확인 버튼을 클릭하세요.
PV 상세 정보 확인하기
PV 상세 정보를 확인하려면 다음 절차를 따르세요.
- 모든 서비스 > Container > Kubernetes Engine 메뉴를 클릭하세요. Kubernetes Engine의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 스토리지 메뉴 아래 PV를 클릭하세요. PV 목록 페이지로 이동합니다.
- PV 목록 페이지에서 클러스터와 네임스페이스를 왼쪽 상단의 톱니바퀴 버튼에서 선택 후, 확인을 클릭하세요.
- PV 목록 페이지에서 상세 정보를 확인하려는 항목을 선택하세요. PV 상세 페이지로 이동합니다.
- 목록 상단의 시스템 객체 표시를 선택하면 쿠버네티스 객체 항목을 제외한 나머지 항목이 표시됩니다.
- 각 탭을 클릭하여 서비스 정보를 확인하세요.
구분 상세 설명 상태 표시 PV의 현재 상태를 표시합니다. - Bound: 정상 연결
PV 삭제 PV를 삭제 상세 정보 PV의 상세 정보 확인 가능 YAML PV의 리소스 파일을 YAML 편집기에서 수정 가능 - 편집 버튼을 클릭하고 리소스를 수정한 후, 저장 버튼을 클릭하여 변경 사항을 적용
이벤트 PV 내에서 발생한 이벤트를 확인 Account 정보 Account 이름, 위치, 생성 일시 등, Account에 대한 기본적인 정보를 확인 메타데이터 정보 PV의 메타데이터 정보를 확인 객체 정보 PV의 객체 정보를 확인 표. PV 상세 정보 항목
PV 삭제하기
PV를 삭제하려면 다음 절차를 따르세요.
- 모든 서비스 > Container > Kubernetes Engine 메뉴를 클릭하세요. Kubernetes Engine의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 스토리지 메뉴 아래 PV를 클릭하세요. PV 목록 페이지로 이동합니다.
- PV 목록 페이지에서 클러스터와 네임스페이스를 왼쪽 상단의 톱니바퀴 버튼에서 선택 후, 확인을 클릭하세요.
- PV 목록 페이지에서 삭제하려는 항목을 선택하세요. PV 상세 페이지로 이동합니다.
- PV 상세 페이지에서 PV 삭제를 클릭하세요.
- 알림 확인창이 나타나면 확인 버튼을 클릭하세요.
스토리지클래스 관리하기
스토리지 클래스(Storage Class)는 스토리지의 유형이나 성능 등의 수준을 정의하는 Kubernetes 리소스입니다.
Kubernetes Engine에서는 nfs-subdir-external-sc, bs-sc 스토리지 클래스를 기본 제공하며, 다음과 같은 특징이 있습니다.
- nfs-subdir-external-sc 스토리지 클래스는 클러스터에 연결된 파일 스토리지를 공유해 사용합니다.
- 액세스 모드: RWX - ReadWriteMany
- 리클레임 정책: Delete(PVC 삭제 시 PV와 저장된 데이터를 함께 삭제), Retain(PVC 삭제 시 PV와 저장된 데이터 유지)
- 용량 확장: 개별 PVC 확장 불가/파일 스토리지 전체 확장 허용
- bs-sc 스토리지 클래스는 블록 스토리지 상품과 연계하여 SSD 타입의 Volume을 사용할 수 있도록 지원합니다.
- 액세스 모드: RWO - ReadWriteOnce
- 리클레임 정책: Delete(PVC 삭제 시 PV와 저장된 데이터를 함께 삭제), Retain(PVC 삭제 시 PV와 저장된 데이터 유지)
- 용량 확장 지원: 개별 PVC 확장 지원 (8 Gi 단위 볼륨 자동 확장)
사전 정의된 스토리지 클래스
| 스토리지 클래스 | 리클레임 정책* | 볼륨 확장 허용** | 마운트 옵션 | 비고 |
|---|---|---|---|---|
| nfs-subdir-external-sc (default) | Delete | 미지원 | nfsvers=3, noresvport | 기본 Volume (NFS) 설정과 연계 |
| nfs-subdir-external-sc-retain | Retain | 미지원 | nfsvers=3, noresvport | 기본 Volume (NFS) 설정과 연계 |
| bs-sc | Delete | 지원 | - | VirtualServer > BlockStorage 상품과 연계 |
| bs-sc-retain | Retain | 지원 | - | VirtualServer > BlockStorage 상품과 연계 |
- (*) default가 아닌 스토리지 클래스를 사용하려면 PVC의 spec.storageClassName에 스토리지 클래스명 지정 필요
- (**) 사용자가 직접 default 스토리지 클래스 변경 가능 (storageclass.kubernetes.io/is-default-class: “true” annotation 조정)
리클레임 정책의 특징은 다음과 같습니다.
- Delete: PVC를 삭제하면 해당 PV와 물리 데이터도 삭제됩니다.
- Retain: PVC를 삭제해도 해당 PV와 물리 데이터는 삭제되지 않고 유지됩니다. 워크로드에서 사용하지 않는 물리 데이터가 Storage에 남아있을 수 있으므로 용량관리에 주의가 필요합니다.
볼륨 확장 사용 시 다음 사항을 고려하세요.
- nfs-subdir-external-sc 스토리지 클래스
- PVC의 용량을 조정할 수 없습니다. (볼륨 확장 미지원)
- 모든 PV들은 File Storage 볼륨의 전체 용량을 공유하므로, 각 PVC의 볼륨 확장이 필요하지 않습니다.
- bs-sc 스토리지 클래스
- PVC 용량을 확장할 수 있습니다. (축소 기능 미지원)
- PVC에 요청된 용량만큼 해당 PV의 용량이 보장되는 것은 아닙니다. (8 Gi 단위 확장 지원)
스토리지클래스 생성하기
스토리지클래스를 생성하려면 다음 절차를 따르세요.
- 모든 서비스 > Container > Kubernetes Engine 메뉴를 클릭하세요. Kubernetes Engine의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 스토리지 메뉴 아래 스토리지클래스를 클릭하세요. 스토리지클래스 목록 페이지로 이동합니다.
- 스토리지클래스 목록 페이지에서 클러스터와 네임스페이스를 왼쪽 상단의 톱니바퀴 버튼에서 선택 후, 오브젝트 생성을 클릭하세요.
- 오브젝트 생성 팝업창에서 오브젝트 정보를 입력하고 확인 버튼을 클릭하세요.참고스토리지클래스의 개념과 오브젝트 생성에 대한 자세한 내용은 쿠버네티스 공식 문서 > 스토리지 클래스를 참고하세요.
스토리지클래스 상세 정보 확인하기
스토리지클래스 상세 정보를 확인하려면 다음 절차를 따르세요.
- 모든 서비스 > Container > Kubernetes Engine 메뉴를 클릭하세요. Kubernetes Engine의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 스토리지 메뉴 아래 스토리지클래스를 클릭하세요. 스토리지클래스 목록 페이지로 이동합니다.
- 스토리지클래스 목록 페이지에서 클러스터와 네임스페이스를 왼쪽 상단의 톱니바퀴 버튼에서 선택 후, 확인을 클릭하세요.
- 스토리지클래스 목록 페이지에서 상세 정보를 확인하려는 항목을 선택하세요. 스토리지클래스 상세 페이지로 이동합니다.
- 목록 상단의 시스템 객체 표시를 선택하면 쿠버네티스 객체 항목을 제외한 나머지 항목이 표시됩니다.
- 각 탭을 클릭하여 서비스 정보를 확인하세요.
구분 상세 설명스토리지클래스 삭제 스토리지클래스를 삭제 상세 정보 스토리지클래스의 상세 정보 확인 가능 YAML 스토리지클래스의 리소스 파일을 YAML 편집기에서 수정 가능 - 편집 버튼을 클릭하고 리소스를 수정한 후, 저장 버튼을 클릭하여 변경 사항을 적용
이벤트 스토리지클래스 내에서 발생한 이벤트를 확인 Account 정보 Account 이름, 위치, 생성 일시 등, Account에 대한 기본적인 정보를 확인 메타데이터 정보 스토리지클래스의 메타데이터 정보를 확인 객체 정보 스토리지클래스의 객체 정보를 확인 표. 스토리지클래스 상세 정보 항목
스토리지클래스 삭제하기
스토리지클래스를 삭제하려면 다음 절차를 따르세요.
- 모든 서비스 > Container > Kubernetes Engine 메뉴를 클릭하세요. Kubernetes Engine의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 스토리지 메뉴 아래 스토리지클래스를 클릭하세요. 스토리지클래스 목록 페이지로 이동합니다.
- 스토리지클래스 목록 페이지에서 클러스터와 네임스페이스를 왼쪽 상단의 톱니바퀴 버튼에서 선택 후, 확인을 클릭하세요.
- 스토리지클래스 목록 페이지에서 삭제하려는 항목을 선택하세요. 스토리지클래스 상세 페이지로 이동합니다.
- 스토리지클래스 상세 페이지에서 스토리지클래스 삭제를 클릭하세요.
- 알림 확인창이 나타나면 확인 버튼을 클릭하세요.주의스토리지클래스 목록 페이지에서 삭제하려는 항목을 선택한 후, 삭제를 클릭하면 선택한 스토리지클래스를 삭제할 수 있습니다.