11.3. 명령줄 인터페이스를 사용하여 가상 머신 복제
테스트의 경우 특정 속성 세트로 새 VM(가상 머신)을 생성하려면 CLI를 사용하여 기존 VM을 복제할 수 있습니다.
사전 요구 사항
- 소스 VM이 종료되었습니다.
- 복제된 디스크 이미지를 저장할 디스크 공간이 충분한지 확인합니다.
- 선택 사항: 여러 VM 복제를 생성할 때 소스 VM에서 고유한 데이터 및 설정을 제거하여 복제된 VM이 제대로 작동하는지 확인합니다. 자세한 내용은 가상 머신 템플릿 생성 을 참조하십시오.
프로세스
환경 및 사용 사례에 적합한 옵션과 함께
virt-clone
유틸리티를 사용합니다.샘플 사용 사례
다음 명령은
example-VM-1
이라는 로컬 VM을 복제하고example-VM-1-clone
VM을 생성합니다. 또한 원래 VM의 디스크 이미지와 동일한 위치에example-VM-1-clone.qcow2
디스크 이미지를 생성하고 할당합니다.# virt-clone --original example-VM-1 --auto-clone Allocating 'example-VM-1-clone.qcow2' | 50.0 GB 00:05:37 Clone 'example-VM-1-clone' created successfully.
다음 명령은
example-VM-2
라는 VM을 복제하고example-VM-3
이라는 로컬 VM을 생성합니다. 이 VM-3은example-VM-2
디스크 중 두 개만 사용합니다.# virt-clone --original example-VM-2 --name example-VM-3 --file /var/lib/libvirt/images/disk-1-example-VM-2.qcow2 --file /var/lib/libvirt/images/disk-2-example-VM-2.qcow2 Allocating 'disk-1-example-VM-2-clone.qcow2' | 78.0 GB 00:05:37 Allocating 'disk-2-example-VM-2-clone.qcow2' | 80.0 GB 00:05:37 Clone 'example-VM-3' created successfully.
VM을 다른 호스트에 복제하려면 로컬 호스트에서 재정의하지 않고 VM을 마이그레이션합니다. 예를 들어 다음 명령은 이전에 생성된
example-VM-3
VM을 로컬 디스크를 포함하여192.0.2.1
원격 시스템에 복제합니다.192.0.2.1
에 대해 이러한 명령을 실행하려면 root 권한이 필요합니다.# virsh migrate --offline --persistent example-VM-3 qemu+ssh://root@192.0.2.1/system root@192.0.2.1's password: # scp /var/lib/libvirt/images/<disk-1-example-VM-2-clone>.qcow2 root@192.0.2.1/<user@remote_host.com>://var/lib/libvirt/images/ # scp /var/lib/libvirt/images/<disk-2-example-VM-2-clone>.qcow2 root@192.0.2.1/<user@remote_host.com>://var/lib/libvirt/images/
검증
VM이 성공적으로 복제되었으며 제대로 작동하는지 확인하려면 다음을 수행하십시오.
호스트의 VM 목록에 복제본이 추가되었는지 확인합니다.
# virsh list --all Id Name State --------------------------------------- - example-VM-1 shut off - example-VM-1-clone shut off
복제본을 시작하고 부팅 여부를 관찰합니다.
# virsh start example-VM-1-clone Domain 'example-VM-1-clone' started
추가 리소스
-
virt-clone(1)
시스템의 도움말 페이지 - 가상 머신 마이그레이션