소개
리눅스 랩탑에서 가상환경을 위해 기본적으로는 multipass 를 사용하고 있습니다. 그런데 ubuntu 가 아닌 다른 OS 를 가상머신으로 올리고 싶어 Virtual Machine Manager 를 사용하게 되어 간단 사용법들을 작성해보려 합니다.
처음에는 일반적으로 널리 사용되는 Virtualbox 를 사용하려 하였습니다. 그런데 multipass 를 사용하고 있는 환경에서 virtualbox 를 사용하려고 하니 리소스 점유 때문에 함께 사용이 되질 않았습니다. multipass 가 qemu/kvm 기반으로 리소스를 점유하고 있는 상태 였는데, virtualbox 는 다른 하이버바이저 기반이다 보니 동시에 사용이 되질 않았습니다.
그래서 multipass 와 동일한 qemu/kvm 기반으로 구동되는 가상머신 도구인 Virtual Machine Manager 를 이용하여 추가적인 가상머신을 띄우기로 하였습니다.
Virtual Machine Manager 란?
virtual machines through libvirt. It primarily targets KVM VMs, but
also manages Xen and LXC (linux containers). It presents a summary
view of running domains, their live performance & resource utilization
statistics. Wizards enable the creation of new domains, and configuration
& adjustment of a domain’s resource allocation & virtual hardware. An
embedded VNC and SPICE client viewer presents a full graphical console
to the guest domain.
Virtual Machine Manager 는 virtualbox 와 같은 가상머신 관리도구 입니다.
주로 qemu/kvm 기반으로 cpu, mem, network 등 리소스 관리가 가능하고 스냅샷 및 복원 기능도 지원합니다. 타 가상머신 관리자에서 지원하는 기능들은 대부분 지원을 하고 있으며, 추가로 XML 로도 가상머신을 관리할 수 있는데 이를 통해 가질 수 있는 이점들이 좀 있을듯합니다.
주요 기능들
개인적으로 주로 사용하는 기능들 위주로 나열해보려 합니다.
Windows 사이즈 맞춤 Display
Virtual Machine Manager 의 창크기 조절에 따라 VM 의 Display 도 그에 맞게 조절을 하기위한 설정 법입니다.
아래 Menu 바에서 View > Scale Display > Always
선택을 해줍니다.
그러면 Display 창 크기를 쉽게 조절 가능합니다.
Virtual Hardware details 확인 및 수정
만든 VM 의 하드웨어 상세정보를 확인하거나 수정하기 위한 설정입니다.
CPU, Mem, Network 등등의 상세설정들을 확인할 수 있으며, 수정이 가능합니다.
Virtual Machine Manager 의 이점은 상세설정을 XML 을 통해 구성할 수 있는데, 이를 통해 as Code 가 가지는 이점들을 가질 수 있습니다.
XML 로 가상 머신 관리
XML 로 설정이 가능하여 아래와 같이 as Code 의 이점들을 함께 가져 갈 수 있습니다.
- 재사용성
- 자동화 스크립팅 가능
- 버전 관리
- 문서화
Snapshot
snapshot 기능도 존재하여 쉽게 설정 가능합니다.
결론
기본적으로 가상머신 관리자 툴이 가지는 기능들 외에 XML 을 이용한 가상머신 관리 기능이 눈에 띄었는데요.
virsh, qemu-img
커맨드라인 명령어 툴을 사용하여 kvm/qemu 기반의 가상머신 관리 자동화도 가능할듯합니다. 시간이 되면 가상머신 관리 자동화에 대해서도 한번 다뤄봐야겠습니다.