VPC로 가상 머신 생성 File Storage
가상 사설 클라우드 4.17 그리고 나중에 베어 메탈 워커 노드만 해당 RHCOS 전용
OpenShift 가상화에서 실행되는 가상 머신에 영구 스토리지를 프로비저닝하려면 File Storage for VPC 을 사용하세요.
이 주제에서는 환경을 확인하고, VPC File Storage 를 사용하는 가상 머신을 만들고, 가상 머신이 성공적으로 시작되었는지 확인하는 방법에 대해 설명합니다.
시작하기 전에
VPC File Storage 를 사용하여 가상 머신을 생성하기 전에 다음 작업을 완료하세요:
- 베어메탈 워커 노드( Red Hat CoreOS (RHCOS))를 사용하는 VPC 클러스터를 만듭니다. 자세한 내용은 VPC 클러스터 만들기를 참조하세요.
- OpenShift 가상화 배포 계획의 계획 지침을 검토하세요.
- OpenShift 가상화를 위한 스토리지 설정에 설명된 대로 VPC File Storage 를 구성합니다.
- OpenShift 가상화 운영자 설치 에 설명된 대로 OpenShift 가상화 운영자를 설치합니다.
virtctlCLI를 설치하십시오. 자세한 내용은 가상화 CLI 도구 시작하기(OpenShift)를 참조하세요.
환경 확인
가상 머신을 생성하기 전에 클러스터가 준비되었는지 확인합니다.
-
OpenShift 가상화 구성 요소가 배포되었는지 확인합니다.
oc get hyperconverged -n openshift-cnv oc get pods -n openshift-cnvHyperConverged 출력에서
PHASE값Deployed을 찾습니다. 파드 출력에서 가상화 파드가Running또는Completed상태를 표시하고Pending,CrashLoopBackOff또는Error에 멈추지 않았는지 확인합니다. -
VPC 파일 CSI 드라이버 애드온이 설치되어 있는지 확인합니다.
ibmcloud ks cluster addon ls -c CLUSTER_NAME | grep vpc-file-csi-driver출력에서
vpc-file-csi-driver애드온을 찾아 상태 상태가normal또는 애드온이 준비되었음을 나타내는 상태인지 확인합니다. -
VPC File Storage 클래스를 사용할 수 있는지 확인합니다.
oc get storageclass | grep vpc-fileibmc-vpc-file-1000-iops또는ibmc-vpc-file-6000-iops과 같은 스토리지 클래스를 찾아보세요. 이후 단계에서 사용할 스토리지 클래스 이름을 기록해 두세요. -
선택한 VPC File Storage 클래스에 대한 스토리지 프로필이
ReadWriteMany액세스 모드 및Filesystem볼륨 모드로 구성되어 있는지 확인합니다.oc get storageprofile <storage-class-name> -o yaml출력에서
spec아래claimPropertySets을 찾습니다.accessModes에ReadWriteMany이 포함되어 있고volumeMode이Filesystem으로 설정되어 있는지 확인합니다.claimPropertySets: - accessModes: - ReadWriteMany volumeMode: Filesystem -
선택한 스토리지 클래스가 퍼시스턴트 볼륨 클레임을 프로비저닝할 수 있는지 확인합니다.
cat <<EOF | oc apply -f - apiVersion: v1 kind: PersistentVolumeClaim metadata: name: vpc-file-test-pvc spec: accessModes: - ReadWriteMany resources: requests: storage: 10Gi storageClassName: <storage-class-name> EOF -
테스트 영구 볼륨 클레임이 바인딩되었는지 확인합니다.
oc get pvc vpc-file-test-pvc출력에서
STATUS열을 찾아 퍼시스턴트 볼륨 클레임에Bound이 표시되는지 확인합니다. 클레임이Pending에 남아 있는 경우 스토리지 클래스 또는 스토리지 프로필이 올바르게 구성되지 않은 것입니다. -
클레임이 구속력이 없는 경우 영구 볼륨 클레임 세부 정보를 검토하세요.
oc describe pvc vpc-file-test-pvc -
테스트용 영구 볼륨 클레임을 삭제하십시오.
oc delete pvc vpc-file-test-pvc
웹 콘솔에서 가상 머신 만들기
OpenShift 웹 콘솔을 사용하여 VPC File Storage 에 디스크를 저장하는 가상 머신을 생성합니다.
- 클러스터의 OpenShift 웹 콘솔에 로그인합니다.
- 탐색 메뉴에서 가상화 > VirtualMachines.
- 만들기를 클릭하고 템플릿을 선택하거나 가상 머신을 수동으로 정의하려는 경우 YAML에서를 선택합니다.
- 가상 머신의 이름을 입력하십시오.
- 가상 머신을 생성할 프로젝트를 선택합니다.
- 스토리지 섹션에서
ibmc-vpc-file-1000-iops또는ibmc-vpc-file-6000-iops와 같은 VPC File Storage 클래스를 선택합니다. - 워크로드 요구 사항에 따라 디스크 크기를 설정하세요.
- CPU 및 메모리 설정을 검토한 다음 필요에 따라 업데이트하세요.
- 만들기 VirtualMachine 을 클릭합니다.
- 가상 머신 상세 정보 페이지에서 디스크, 네트워크 인터페이스 및 구성 탭을 검토하여 가상 머신이 예상 설정으로 생성되었는지 확인합니다.
가상 머신이 생성되면 콘솔은 연결된 영구 볼륨 클레임 및 데이터 볼륨 리소스를 생성합니다.
CLI를 사용하여 가상 머신 생성하기
재사용 가능한 매니페스트에서 가상 머신을 만들려면 CLI를 사용하세요.
-
아직 네임스페이스가 없는 경우 가상 머신 워크로드를 위한 네임스페이스를 생성하세요.
oc create namespace vm-project -
VPC File Storage 클래스를 참조하는 가상 머신 매니페스트를 생성합니다.
cat <<EOF | oc apply -f - apiVersion: kubevirt.io/v1 kind: VirtualMachine metadata: name: rhel9-vm namespace: vm-project spec: running: false template: metadata: labels: kubevirt.io/domain: rhel9-vm spec: domain: cpu: cores: 2 devices: disks: - disk: bus: virtio name: rootdisk - disk: bus: virtio name: cloudinitdisk resources: requests: memory: 4Gi volumes: - dataVolume: name: rhel9-vm-rootdisk name: rootdisk - cloudInitNoCloud: userData: | #cloud-config user: cloud-user password: changeme chpasswd: { expire: false } name: cloudinitdisk dataVolumeTemplates: - metadata: name: rhel9-vm-rootdisk spec: pvc: accessModes: - ReadWriteMany resources: requests: storage: 40Gi storageClassName: <storage-class-name> volumeMode: Filesystem source: blank: {} EOF -
가상 머신 및 데이터 볼륨 리소스가 생성되었는지 확인합니다.
oc get vm -n vm-project oc get dv -n vm-project oc get pvc -n vm-project출력에서 가상 머신
rhel9-vm이 나열되어 있는지, 데이터 볼륨rhel9-vm-rootdisk이 존재하는지, 영구 볼륨 클레임rhel9-vm-rootdisk이 생성되었는지 확인합니다. 영구 볼륨 클레임이 아직Bound이 아닌 경우 프로비저닝이 완료될 때까지 기다렸다가 계속하세요. -
데이터 볼륨이 준비되지 않은 경우 데이터 볼륨 세부 정보를 검토합니다.
oc describe dv rhel9-vm-rootdisk -n vm-project oc describe pvc rhel9-vm-rootdisk -n vm-project -
가상 머신을 시작하십시오.
virtctl start rhel9-vm -n vm-project -
가상 머신 인스턴스가 실행 중인지 확인합니다.
oc get vmi -n vm-project출력에서 가상 머신 인스턴스 이름을 찾아 해당 단계가
Running인지 확인합니다. 가상 머신 인스턴스가 나열되지 않으면 가상 머신 상태를 검토합니다.oc get vm rhel9-vm -n vm-project -o yaml
가상 머신 유효성 검사
가상 머신을 생성한 후 스토리지 및 컴퓨팅 리소스가 예상대로 작동하는지 확인합니다.
-
영구 볼륨 클레임이 바인딩되었는지 확인합니다.
oc get pvc -n vm-project출력에서 퍼시스턴트 볼륨 클레임
rhel9-vm-rootdisk을 찾아STATUS열에Bound이 표시되는지 확인합니다. -
데이터 볼륨 가져오기 또는 프로비저닝이 성공적으로 완료되었는지 확인합니다.
oc get dv -n vm-project출력에서 데이터 볼륨이 사용자 환경에 따라
Succeeded또는Ready과 같은 성공적인 단계로 표시되는지 확인합니다. 데이터 볼륨이 준비되지 않은 경우 데이터 볼륨 및 영구 볼륨 클레임 이벤트를 검토하세요.oc describe dv rhel9-vm-rootdisk -n vm-project oc describe pvc rhel9-vm-rootdisk -n vm-project -
가상 머신 인스턴스가 실행 중인지 확인합니다.
oc get vmi -n vm-project -
가상 머신 인스턴스 세부 정보를 검토하여 노드 배치, 인터페이스 및 연결된 볼륨을 확인합니다.
oc describe vmi rhel9-vm -n vm-project -
클라우드 초기화 자격 증명을 구성한 경우 가상 머신 콘솔에 연결합니다.
virtctl console rhel9-vm -n vm-project -
인스턴스가 시작되지 않으면 가상 머신 세부 정보를 검토하세요.
oc describe vm rhel9-vm -n vm-project oc describe vmi rhel9-vm -n vm-project
제한 사항 및 고려 사항 이해
가상 머신에 VPC File Storage 를 사용할 때 다음 고려 사항을 검토하세요:
- VPC File Storage 의 성능
- VPC File Storage 는 네트워크 연결 스토리지 옵션입니다. 일반적으로 개발, 테스트 및 낮은 I/O 워크로드에 가장 적합합니다.
- 스냅샷 및 복제
- 스냅샷 및 복제 지원은 OpenShift 데이터 재단과 다릅니다. 프로덕션 워크로드에 대해 VPC File Storage 로 표준화하기 전에 스토리지 요구 사항을 검토하세요.
- 실시간 마이그레이션
- 실시간 마이그레이션은 스토리지 프로필이 올바르게 구성되고 워크로드가 OpenShift 가상화 요구 사항을 충족하는 경우 지원됩니다.
- 스토리지 프로필 구성
- CDI가 스토리지 클래스를 올바르게 사용할 수 있도록 VPC 파일 CSI 프로비저너에 대한 스토리지 프로필을 구성해야 합니다.
문제점 해결
가상 머신이 시작되지 않거나 디스크가 올바르게 프로비저닝되지 않은 경우 다음 항목을 검토하세요:
다음 단계
VPC를 사용하여 가상 머신을 생성한 후 File Storage: