ubuntu下使用KVM


        簡介:KVM(kernel-based virtual machine,基於內核的虛擬主機),KVM自身是一個Linux內核模塊,當安裝有Linux系統的物理機裝載了KVM這個內核模塊后,可以在用戶空間創建虛擬機,但是每個虛擬機運行在Linux內核上的一個系統進程,可用kill命令殺死。

        特性:嵌入到linux正式kenel(提高兼容性)

                   代碼級調用(提高性能)

                   創建的虛擬機為一個進程(便於管理)

                    開源模式,RedHat收購后提供商業支持

        qumu+kvm--------》虛擬機:QEMU為一個開源的硬件模擬器項目,支持模擬支持的設備,缺點速度較慢;KVM為內核模塊,提供CPU和內存資源。

      

                    

 

部署使用:

qumu-kvm:為KVM管理程序提供硬件模擬的軟件程序

libvirt-bin:管理虛擬化平台的軟件

bridge-utils:配置網絡橋接的命令行工具

virtinst:創建虛擬機的命令行工具

virt-manager:提供圖形界面,通過libvirt支持管理虛擬機的命令行工具

root@test:~# apt install qemu-kvm libvirt-bin bridge-utils virtinst virt-manager  ##安裝完成后libvirtd自動啟動

創建虛擬磁盤:root@test:/data# qemu-img create -f qcow2 /data/Centos1.qcow2 20G

                           -f  [raw/qcow2]:raw為全鏡像格式,特點是一次性分配預設空間,寫入速度快,方便轉換為其他格式,性能最優,但是占用空間大。

                                                      qcow2為稀疏格式,支持壓縮、快照、鏡像,更小的存儲空間(用多少占多少)

查看虛擬磁盤信息:root@test:/data# qemu-img info /data/Centos1.qcow2

創建虛擬機:root@test:/data# virt-install --name test-li --virt-type kvm --ram 1024 --cdrom /data/CentOS-7-x86_64-Minimal-1810.iso --disk path=/data/Centos1.qcow2 --network default --graphics vnc,listen=0.0.0.0 --noautoconsole

                       --name:虛擬機名稱

 --noautoconsole:禁止自動連接至虛擬機的控制台;

                      --virt-type:虛擬機類型(kvm,xen,exsi)

執行完該命令后,qemu會開啟一個5900端口,使用VNC軟件連接,便可正常安裝虛擬機。

 

 安裝完成后,因為使用默認網絡,所以虛擬機無法通過dhcp獲取IP地址,可自己手動配置:

在宿主機中安裝完成bridge-utils工具時已經默認生成一張虛擬網橋,在虛擬機配置一個與該IP在同一局域網的IP即可:

 

 

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0    ##主要修改以下幾項配置

BOOTPROTO=static
IPADDR=192.168.122.2
NETMASK=255.255.255.0
GATEWAY=192.168.122.1
ONBOOT=yes  

修改完成后重啟網絡,便可上網

克隆虛擬機:

查看被克隆虛擬機磁盤位置:root@test:/data# cat /etc/libvirt/qemu/test-li.xml | grep source

虛擬機需要處於關閉狀態:root@test:/data# virsh shutdown k8s-master

克隆虛擬機:root@test:/data# virt-clone -o k8s-master -n k8s1 -f /data/k8s1.qcow2

Virsh常用命令:

查看kvm虛擬機:root@test:/data# virsh list      ##創建的虛擬機相關配置文件存放在/etc/libvirt/qemu下。

查看網絡列表:root@test:/data# virsh net-list

啟動虛擬機:root@test:~# virsh start test-li

正常關閉虛擬機:root@test:~# virsh shutdown test-li

強制關機:root@test:~# virsh destroy test-li

查看虛擬機配置信息:root@test:~# virsh dumpxml test-li

徹底刪除虛擬機:root@test:~# virsh undefine test-li

 

 

   

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM