7.14. VM 디스크
7.14.1. VM 디스크 핫플러그
VM(가상 머신) 또는 VMI(가상 머신 인스턴스)를 중지하지 않고 가상 디스크를 추가하거나 제거할 수 있습니다.
데이터 볼륨 및 PVC(영구 볼륨 클레임)만 핫플러그 및 핫 플러그할 수 있습니다. 컨테이너 디스크를 핫플러그하거나 핫 플러그 해제할 수 없습니다.
핫플러그 디스크는 재부팅 후에도 VM에 연결된 상태로 유지됩니다. VM에서 제거하려면 디스크를 분리해야 합니다.
VM에 영구적으로 마운트되도록 핫플러그 디스크를 영구적으로 만들 수 있습니다.
각 VM에는 virtio-scsi
컨트롤러가 있으므로 핫플러그 디스크가 scsi
버스를 사용할 수 있습니다. virtio-scsi
컨트롤러는 성능 이점을 유지하면서 virtio
의 제한을 극복합니다. 확장성이 뛰어나고 4억 개 이상의 디스크 핫 플러그를 지원합니다.
확장 불가능하므로 일반 virtio
를 핫플러그 디스크에 사용할 수 없습니다. 각 virtio
디스크는 VM의 제한된 PCI Express(PCIe) 슬롯 중 하나를 사용합니다. PCIe 슬롯은 다른 장치에서도 사용되며 사전에 예약해야 합니다. 따라서 필요에 따라 슬롯을 사용할 수 없습니다.
7.14.1.1. 웹 콘솔을 사용하여 디스크 핫플러그 및 핫플러그
OpenShift Container Platform 웹 콘솔을 사용하여 VM을 실행하는 동안 VM(가상 머신)에 연결하여 디스크를 핫 플러그할 수 있습니다.
핫플러그 디스크는 연결을 해제할 때까지 VM에 연결된 상태로 유지됩니다.
VM에 영구적으로 마운트되도록 핫플러그 디스크를 영구적으로 만들 수 있습니다.
사전 요구 사항
- 핫플러그에 사용할 수 있는 데이터 볼륨 또는 PVC(영구 볼륨 클레임)가 있어야 합니다.
프로세스
-
웹 콘솔에서 가상화
VirtualMachines 로 이동합니다. - 실행 중인 VM을 선택하여 세부 정보를 확인합니다.
-
VirtualMachine 세부 정보 페이지에서 구성
디스크 를 클릭합니다. 핫플러그 디스크를 추가합니다.
- 디스크 추가를 클릭합니다.
- Add disk (hot plugged) 창에서 소스 목록에서 디스크를 선택하고 저장을 클릭합니다.
선택 사항: 핫플러그 디스크를 분리합니다.
- 디스크 옆에 있는 옵션 메뉴 를 클릭하고 분리를 선택합니다.
- Detach 를 클릭합니다.
선택 사항: 핫플러그 디스크를 영구적으로 설정합니다.
- 디스크 옆에 있는 옵션 메뉴 를 클릭하고 영구적으로 만들기를 선택합니다.
- VM을 재부팅하여 변경 사항을 적용합니다.
7.14.1.2. 명령줄을 사용하여 디스크 핫플러그 및 핫플러그
명령줄을 사용하여 VM(가상 머신)을 실행하는 동안 디스크를 핫플러그 및 핫 플러그 해제할 수 있습니다.
VM에 영구적으로 마운트되도록 핫플러그 디스크를 영구적으로 만들 수 있습니다.
사전 요구 사항
- 핫 플러그에 사용할 수 있는 데이터 볼륨 또는 PVC(영구 볼륨 클레임)가 하나 이상 있어야 합니다.
프로세스
다음 명령을 실행하여 디스크를 핫 플러그합니다.
$ virtctl addvolume <virtual-machine|virtual-machine-instance> \ --volume-name=<datavolume|PVC> \ [--persist] [--serial=<label-name>]
-
선택적
--persist
플래그를 사용하여 핫플러그 디스크를 가상 머신 사양에 영구적으로 마운트된 가상 디스크로 추가합니다. 가상 시스템을 중지, 다시 시작 또는 재부팅하여 가상 디스크를 영구적으로 마운트합니다.--persist
플래그를 지정한 후에는 더 이상 가상 디스크를 핫플러그하거나 핫 플러그 해제할 수 없습니다.--persist
플래그는 가상 머신 인스턴스가 아닌 가상 머신에 적용됩니다. -
선택적
--serial
플래그를 사용하면 선택한 영숫자 문자열 레이블을 추가할 수 있습니다. 이를 통해 게스트 가상 머신에서 핫플러그 디스크를 식별하는 데 도움이 됩니다. 이 옵션을 지정하지 않으면 레이블의 기본값은 핫 플러그된 데이터 볼륨 또는 PVC의 이름으로 설정됩니다.
-
선택적
다음 명령을 실행하여 디스크를 핫플러그합니다.
$ virtctl removevolume <virtual-machine|virtual-machine-instance> \ --volume-name=<datavolume|PVC>
7.14.2. 가상 머신 디스크 확장
디스크의 PVC(영구 볼륨 클레임)를 확장하여 VM(가상 머신) 디스크의 크기를 늘릴 수 있습니다.
스토리지 공급자가 볼륨 확장을 지원하지 않는 경우 빈 데이터 볼륨을 추가하여 VM의 사용 가능한 가상 스토리지를 확장할 수 있습니다.
VM 디스크 크기를 줄일 수 없습니다.
7.14.2.1. VM 디스크 PVC 확장
디스크의 PVC(영구 볼륨 클레임)를 확장하여 VM(가상 머신) 디스크의 크기를 늘릴 수 있습니다.
PVC에서 파일 시스템 볼륨 모드를 사용하는 경우 디스크 이미지 파일은 파일 시스템 오버헤드용으로 일부 공간을 예약하는 동안 디스크 이미지 파일이 사용 가능한 크기로 확장됩니다.
프로세스
확장하려는 VM 디스크의
PersistentVolumeClaim
매니페스트를 편집합니다.$ oc edit pvc <pvc_name>
디스크 크기를 업데이트합니다.
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: vm-disk-expand spec: accessModes: - ReadWriteMany resources: requests: storage: 3Gi 1 # ...
- 1
- 새 디스크 크기를 지정합니다.
7.14.2.2. 빈 데이터 볼륨을 추가하여 사용 가능한 가상 스토리지 확장
빈 데이터 볼륨을 추가하여 VM(가상 머신)의 사용 가능한 스토리지를 확장할 수 있습니다.
사전 요구 사항
- 영구 볼륨이 하나 이상 있어야 합니다.
프로세스
다음 예와 같이
DataVolume
매니페스트를 생성합니다.DataVolume
매니페스트 예apiVersion: cdi.kubevirt.io/v1beta1 kind: DataVolume metadata: name: blank-image-datavolume spec: source: blank: {} storage: resources: requests: storage: <2Gi> 1 storageClassName: "<storage_class>" 2
다음 명령을 실행하여 데이터 볼륨을 생성합니다.
$ oc create -f <blank-image-datavolume>.yaml
데이터 볼륨에 대한 추가 리소스