3.2. virtctl 및 libguestfs CLI 툴 사용
virtctl
명령줄 툴을 사용하여 OpenShift Virtualization 리소스를 관리할 수 있습니다.
libguestfs
명령줄 툴을 사용하여 VM(가상 머신) 디스크 이미지에 액세스하고 수정할 수 있습니다. virtctl libguestfs
명령을 사용하여 libguestfs
를 배포합니다.
3.2.1. virtctl 설치 링크 복사링크가 클립보드에 복사되었습니다!
RHEL(Red Hat Enterprise Linux) 9, Linux, Windows 및 MacOS 운영 체제에 virtctl
을 설치하려면 virtctl
바이너리 파일을 다운로드하여 설치합니다.
RHEL 8에 virtctl
을 설치하려면 OpenShift Virtualization 리포지토리를 활성화한 다음 kubevirt-virtctl
패키지를 설치합니다.
3.2.1.1. RHEL 9, Linux, Windows 또는 macOS에 virtctl 바이너리 설치 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform 웹 콘솔에서 운영 체제의 virtctl
바이너리를 다운로드한 다음 설치할 수 있습니다.
프로세스
-
웹 콘솔의 가상화
개요 페이지로 이동합니다. -
Download virtctl 링크를 클릭하여 운영 체제의
virtctl
바이너리를 다운로드합니다. install
virtctl
:RHEL 9 및 기타 Linux 운영 체제의 경우:
아카이브 파일의 압축을 풉니다.
tar -xvf <virtctl-version-distribution.arch>.tar.gz
$ tar -xvf <virtctl-version-distribution.arch>.tar.gz
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
virtctl
바이너리를 실행할 수 있도록 합니다.chmod +x <path/virtctl-file-name>
$ chmod +x <path/virtctl-file-name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl
바이너리를PATH
환경 변수의 디렉터리로 이동합니다.다음 명령을 실행하여 경로를 확인할 수 있습니다.
echo $PATH
$ echo $PATH
Copy to Clipboard Copied! Toggle word wrap Toggle overflow KUBECONFIG
환경 변수를 설정합니다.export KUBECONFIG=/home/<user>/clusters/current/auth/kubeconfig
$ export KUBECONFIG=/home/<user>/clusters/current/auth/kubeconfig
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Windows의 경우:
- 아카이브 파일의 압축을 풉니다.
-
추출된 폴더 계층 구조로 이동하고
virtctl
실행 파일을 두 번 클릭하여 클라이언트를 설치합니다. virtctl
바이너리를PATH
환경 변수의 디렉터리로 이동합니다.다음 명령을 실행하여 경로를 확인할 수 있습니다.
path
C:\> path
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
macOS의 경우:
- 아카이브 파일의 압축을 풉니다.
virtctl
바이너리를PATH
환경 변수의 디렉터리로 이동합니다.다음 명령을 실행하여 경로를 확인할 수 있습니다.
echo $PATH
echo $PATH
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.2.1.2. RHEL 8에 virtctl RPM 설치 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Virtualization 리포지토리를 활성화하고 kubevirt-virtctl
패키지를 설치하여 RHEL(Red Hat Enterprise Linux) 8에 virtctl
RPM 패키지를 설치할 수 있습니다.
사전 요구 사항
- 클러스터의 각 호스트는 RHSM(Red Hat Subscription Manager)에 등록되어 있어야 하며 유효한 OpenShift Container Platform 서브스크립션이 있어야 합니다.
프로세스
subscription-manager
CLI 툴을 사용하여 다음 명령을 실행하여 OpenShift Virtualization 리포지토리를 활성화합니다.subscription-manager repos --enable cnv-4.15-for-rhel-8-x86_64-rpms
# subscription-manager repos --enable cnv-4.15-for-rhel-8-x86_64-rpms
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
kubevirt-virtctl
패키지를 설치합니다.yum install kubevirt-virtctl
# yum install kubevirt-virtctl
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.2.2. virtctl 명령 링크 복사링크가 클립보드에 복사되었습니다!
virtctl
클라이언트는 OpenShift Virtualization 리소스를 관리하는 명령줄 유틸리티입니다.
VM(가상 머신) 명령은 별도로 지정하지 않는 한 VMI(가상 머신 인스턴스)에도 적용됩니다.
3.2.2.1. virtctl information 명령 링크 복사링크가 클립보드에 복사되었습니다!
virtctl
information 명령을 사용하여 virtctl
클라이언트에 대한 정보를 봅니다.
명령 | 설명 |
---|---|
|
|
|
|
| 특정 명령의 옵션 목록을 확인합니다. |
|
|
3.2.2.2. VM 정보 명령 링크 복사링크가 클립보드에 복사되었습니다!
virtctl
을 사용하여 VM(가상 머신) 및 VMI(가상 머신 인스턴스)에 대한 정보를 볼 수 있습니다.
명령 | 설명 |
---|---|
| 게스트 머신에서 사용 가능한 파일 시스템을 확인합니다. |
| 게스트 머신의 운영 체제에 대한 정보를 봅니다. |
| 게스트 머신에서 로그인한 사용자를 확인합니다. |
3.2.2.3. VM 매니페스트 생성 명령 링크 복사링크가 클립보드에 복사되었습니다!
virtctl create
명령을 사용하여 가상 머신, 인스턴스 유형 및 기본 설정에 대한 매니페스트를 생성할 수 있습니다.
명령 | 설명 |
---|---|
|
|
| VM 매니페스트를 생성하여 VM의 이름을 지정합니다. |
| 기존 클러스터 전체 인스턴스 유형을 사용하는 VM 매니페스트를 생성합니다. |
| 기존 네임스페이스 인스턴스 유형을 사용하는 VM 매니페스트를 생성합니다. |
| 클러스터 전체 인스턴스 유형에 대한 매니페스트를 생성합니다. |
| 네임스페이스가 지정된 인스턴스 유형에 대한 매니페스트를 생성합니다. |
| 클러스터 전체 VM 기본 설정에 대한 매니페스트를 생성하여 기본 설정 이름을 지정합니다. |
| 네임스페이스가 지정된 VM 기본 설정에 대한 매니페스트를 생성합니다. |
3.2.2.4. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.2.2.5. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.2.2.6. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.2.2.7. 링크 복사링크가 클립보드에 복사되었습니다!
oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type json -p '[{"op": "add", "path": "/spec/featureGates", \ "value": "HotplugVolumes"}]'
$ oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type json -p '[{"op": "add", "path": "/spec/featureGates", \ "value": "HotplugVolumes"}]'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
virtctl vmexport download <vmexport_name> --vm|pvc=<object_name> \ --volume=<volume_name> --output=<output_file>
$ virtctl vmexport download <vmexport_name> --vm|pvc=<object_name> \
--volume=<volume_name> --output=<output_file>
|
|
|
|
|
|
3.2.2.8. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
3.2.2.9. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
3.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
virtctl guestfs -n <namespace> <pvc_name>
$ virtctl guestfs -n <namespace> <pvc_name>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.2.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|