Hướng dẫn tạo máy ảo KVM trên Linux

So sánh các công nghệ ảo hóa

Công nghệ ảo hóa được phân thành ba loại chính:

  • Giả lập phần mềm: Không yêu cầu phần cứng đặc biệt nhưng hiệu suất thấp nhất
  • Ảo hóa bán phần: Sử dụng phần cứng vật lý trực tiếp, hiệu suất cao nhưng cần sửa đổi kernel
  • Ảo hóa hoàn toàn: Sử dụng phần cứng hỗ trợ VT-x/AMD-V, hiệu suất tối ưu

Các giải pháp phổ biến:

Công nghệHỗ trợĐặc điểm
VMwareGiả lập phần mềmHỗ trợ hệ điều hành khách khác vật chủ
XenẢo hóa bán phầnChỉ hỗ trợ hệ điều hành giống vật chủ
KVMẢo hóa hoàn toànHỗ trợ đa hệ điều hành khách

Kiến trúc KVM

KVM (Kernel-based Virtual Machine) là mô-đun ảo hóa mã nguồn mở tích hợp vào kernel Linux từ phiên bản 2.6.20. Mỗi máy ảo được quản lý như một tiến trình Linux tiêu chuẩn với ba chế độ vận hành:

  1. Chế độ hạt nhân (Kernel mode)
  2. Chế độ người dùng (User mode)
  3. Chế độ khách (Guest mode)

Chuẩn bị cài đặt

Kiểm tra hỗ trợ ảo hóa trên CPU Intel:

egrep 'vmx' /proc/cpuinfo

Kích hoạt công nghệ VT trong BIOS. Cấu hình nguồn yum:

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all && yum makecache

Cài đặt thành phần KVM

yum install -y qemu-kvm libvirt virt-install bridge-utils
systemctl start libvirtd

Kiểm tra trạng thái:

systemctl status libvirtd
virsh list --all

Cấu hình mạng cầu nối

Tạo file cấu hình ifcfg-br0:

DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
ONBOOT=yes

Sửa file ifcfg-ens33:

BRIDGE=br0
systemctl restart network

Tạo máy ảo qua CLI

qemu-img create -f qcow2 /var/lib/libvirt/images/vm01.img 20G
virt-install \
--name vm01 \
--ram 2048 \
--vcpus 2 \
--disk path=/var/lib/libvirt/images/vm01.img \
--network bridge=br0 \
--graphics vnc \
--cdrom /root/CentOS-7-x86_64-DVD-1810.iso \
--os-type linux

Quản lý máy ảo

Các lệnh cơ bản:

virsh list --all
virsh start vm01
virsh shutdown vm01
virsh autostart vm01

Kiểm tra định dạng đĩa:

qemu-img info /var/lib/libvirt/images/vm01.img

Mở rộng

Cấu hình VNC client để truy cập máy ảo:

yum install -y tigervnc-server
vncserver :1

Chuyển đổi từ VMware sang KVM:

yum install -y virt-v2v
virt-v2v -ic vpx://vcenter.example.com/Datacenter/esxi_host vmware_vm

Thẻ: kvm libvirt virt-install qemu-img virtualization

Đăng vào ngày 7 tháng 7 lúc 08:01