Ảo hóa KVM – Kernel-Based Virtual Machine
KVM ra đời phiên bản đầu tiên vào năm 2007 bởi công ty Qumranet tại Isarel, KVM được tích
hợp sẵn vào nhân của hệ điều hành Linux bắt đầu từ phiên bản 2.6.20. Năm 2008, RedHat đã mua lại Qumranet và bắt đầu phát triển, phổ biến KVM Hypervisor.
Hình 5: Ảo hóa KVM Hypervisor
Một số đặc điểm của KVM:
– Là giải pháp ảo hóa dạng tồn phần và hồn tồn nguồn mở, miễn phí.
– Hỗ trợ các loại công nghệ phần cứng đa dạng và thông dụng như Intel-VT, AMD-V.
– Cung cấp các máy ảo đa dạng, hỗ trợ nhiều loại hệ điều hành và không cần tinh chỉnh lại các
ảnh của hệ điều hành
– Sử dụng cơ chế quản lý vùng nhớ của Linux (KSM) và các cơ chế bảo mật có sẵn của Linux (SELinux)
Hình 6: Kiến trúc KVM Hypervisor
Với ưu điểm nguồn mở và độ tùy biến cao, KVM hypervisor được lựa chọn là nền tảng ảo hóa chính khi lựa chọn cơng nghệ ảo hóa nguồn mở. KVM cũng đồng thời là nền tảng của giải pháp
điện toán đám mây nguồn mở nổi tiếng nhất hiện nay là OpenStack.
Hình 7: Mơ hình quản lý tập trung và phân phối tài nguyên nhiều máy chủ KVM trong hệ thống
điện toán đám mây nguồn mở OpenStack
Chuẩn bi:
Máy ảo VMWare centos 7.4:
B1. Cài KVM
#yum install qemu-kvm qemu-img virt-manager libvirt libvirt-python libvirt-client virt-install virt-viewer bridge-utils
Nếu X11 chưa cài, thực hiện lệnh:
# yum install "@X Window System" xorg-x11-xauth xorg-x11-fonts-* xorg-x11-utils -y Hoặc #cd kvm # rpm -Uvh * # cd ../kvm.X11/ # rpm -Uvh *
# systemctl start libvirtd # systemctl enable libvirtd B2. add bridge "br0"
# nmcli c add type bridge autoconnect yes con-name br0 ifname br0 set IP, dns, gateway for br0
# nmcli c modify br0 ipv4.addresses 192.168.100.110/24 ipv4.method manual # nmcli c modify br0 ipv4.gateway 192.168.100.1
# nmcli c modify br0 ipv4.dns 8.8.8.8 remove the current setting
#nmcli c delete ens33
#nmcli c add type bridge-slave autoconnect yes con-name ens33 ifname ens33 master br0
#reboot
Hoặc cấu hình br0 theo cách: #cd /etc/sysconfig/network-scripts #cp ifcfg-ens33 ifcfg-br0
# vi ifcfg-ens33
# vi ifcfg-br0
# systemctl restart network
Kiểm tra các module đã được nạp # [root@node2 ~]# lsmod | grep kvm
kvm_intel 170086 0
kvm 566340 1 kvm_intel irqbypass 13503 1 kvm
B3. Create a Virtual Machine#1
Nhập lệnh ‘virt-install‘ command hoặc from GUI (virt-manager ) File Option, chọn “New Virtual Machine”
TYPE=Ethernet BOOTPROTO=static DEVICE=ens33 ONBOOT=yes BRIDGE=br0 TYPE=Bridge BOOTPROTO=static NAME=br0 DEVICE=br0 ONBOOT=yes IPADDR=192.168.100.102 NETMASK=255.255.255.0 GATEWAY=192.168.100.1 DNS1=8.8.8.8 [root@node1 ~]# ifconfig br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.100.110 netmask 255.255.255.0 broadcast 192.168.100.255 inet6 fe80::bb94:55b:2c77:23fc prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:46:13:fb txqueuelen 1000 (Ethernet) RX packets 220 bytes 32183 (31.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0 TX packets 239 bytes 24722 (24.1 KiB)
Chọn cấu hình Ram, CPU cho máy ảo
Click on Finish to start the installation. B4. Basic Operations
Hiển thị tất cà các máy ảo
Hiển thị các máy ảo đang hoạt động
Khởi động máy ảo
[root@node2 ~]# virsh list --all
Id Name State