Aller au contenu principal

51. Manage and Configure Virtual Machines


개요

가상화는 물리적 컴퓨터 내에 가상 머신을 생성할 수 있게 합니다. 64개 CPU 코어와 1024 GB RAM을 가진 단일 강력한 서버는 각 2개의 vCPU와 32 GB RAM을 가진 32개의 가상 머신을 지원할 수 있습니다. 이 접근 방식이 DigitalOcean, AWS, Google Cloud 등 클라우드 서비스의 기반입니다.

QEMU-KVM: Linux 가상화의 주요 기술.

  • QEMU(Quick Emulator): 가상 컴퓨터 에뮬레이션
  • KVM(Kernel-based Virtual Machine): Linux 커널에 통합되어 하드웨어 가속을 활용한 성능 향상

virsh 명령줄 도구는 VirtualBox의 그래픽 인터페이스와 유사하게 터미널 명령으로 가상 머신을 관리합니다.

시작하기

virt-manager 패키지 설치 (필수 의존성 포함):

sudo apt install virt-manager

가상 머신 설정 생성

디렉토리와 XML 설정 파일 생성:

mkdir machines
cd machines/
vim testmachine.xml

XML 설정 예시:

<domain type="qemu">
<name>TestMachine</name>
<memory unit="GiB">1</memory>
<vcpu>1</vcpu>
<os>
<type arch="x86_64">hvm</type>
</os>
</domain>

가상 머신 정의:

virsh define testmachine.xml

virsh로 가상 머신 관리

도움말 확인:

virsh help

모든 정의된 도메인 목록 (비활성 포함):

virsh list --all

VM 시작 및 상태 관리

virsh start TestMachine      # 시작
virsh list # 실행 중인 VM 확인
virsh reboot TestMachine # 정상 재부팅
virsh reset TestMachine # 강제 하드웨어 리셋

VM 종료

virsh shutdown TestMachine   # 정상 종료 (게스트 OS 필요)
virsh destroy TestMachine # 강제 전원 차단
destroy 명령은 VM을 갑작스럽게 종료할 뿐, VM 정의를 제거하지 않습니다. 완전히 제거하려면 undefine이 필요합니다.
virsh undefine TestMachine                          # 설정 제거
virsh undefine --remove-all-storage TestMachine # 설정 + 스토리지 제거

VM 재생성:

virsh define testmachine.xml

자동 시작 설정

virsh autostart TestMachine            # 호스트 부팅 시 자동 시작 활성화
virsh autostart --disable TestMachine # 자동 시작 비활성화

VM 리소스 수정

할당된 리소스 확인:

virsh dominfo TestMachine

vCPU 수 변경

영구적으로 vCPU 수 변경 (다음 부팅에 적용):

virsh setvcpus TestMachine 2 --config

최대 vCPU 수 설정:

virsh setvcpus TestMachine 2 --config --maximum

재시작:

virsh destroy TestMachine
virsh start TestMachine

메모리 할당 변경

메모리를 2048 MB로 조정:

virsh setmem TestMachine 2048M --config

재시작 후 확인:

virsh dominfo TestMachine

출력 예시:

CPU(s):         2
Max memory: 2097152 KiB
Used memory: 2097152 KiB
Autostart: enable