一、基本概念
虛擬化軟件:
qemu:軟件純模擬全虛擬化軟件,特別慢!AIX,兼容性好!
xen(半):性能特別好,需要使用專門修改之后的內核,兼容性差!
KVM(Linux):全虛擬機,它有硬件支持CPU,基於內核,而且不需要使用專門的內核
virt(virt-install virt-clone)作用:虛擬機的安裝工具和克隆工具
qemu-kvm qemu-img 作用:管理虛擬機的虛擬磁盤
libvirt: 虛擬管理模塊
二、安裝
lsmod |grep -i kvm 查看是否支持kvm虛擬化
yum install qemu-kvm qemu-img virt-manager libvirt libvirt-python virt-manager libvirt-client virt-install virt-viewer -y 安裝虛擬化的相關軟件
優麒麟:sudo apt install qemu-kvm libvirt-clients libvirt-daemon-system bridge-utils virt-manager
systemctl stop firewalld 關閉防火牆
systemctl start libvirtd 啟動libvirt軟件
systemctl enable libvirtd 加入開機自啟動項
三、使用命令行創建虛擬機
1、參數詳解
命令格式: virt-install [選項] -h 查看幫助 --connect=CONNECT 連接非默認的hypervisor,默認為qemu:///system -n name 新的虛擬機主機實例名稱
--virt-type kvm 虛擬化的類型
--os-type=linux 系統類型
--os-variant fhel7 系統版本 -r MEMORT 虛擬機內存設置 --arch=ARCH cpu架構 --machine=MACHINE 虛擬機模擬機類型,Xen或者KVM等。 --vcpus=VCPUS 虛擬主機CPU個數 -c CDROM 設置光盤鏡像或光盤設備路徑 -l LOCATION 指定安裝源路徑 --pxe 使用pxe協議啟動 --import 導入現有的虛擬機 -x EXTRA 附加的內核參數,如-x "ks=http://server/server.ks" --os-type=Type 操作系統類型,如linux、windwos等 --disk=DISKOPTS 設置虛擬機磁盤,如--disk /dev/storage/path -w NETWORK 設置虛擬機網絡,如-w bridge=br0 --noneworks 虛擬機不設置任何網絡接口 -m MAC 設置虛擬機MAC地址 --vnc 設置通過vnc查看虛擬機 --hvm 使用全虛擬化技術 --paravirt 使用半虛擬化技術 --soundhw MODEL 設置聲卡設備 --autostart 設置虛擬機為開機啟動
--disk /opt/centos2.raw,format=raw,size=10設置硬盤大小,位置
--cdrom /opt/centos-7-x86_64-DVD.iso 設置鏡像
虛擬機磁盤格式
基於raw格式創建硬盤:
[root@CenoOS1 opt]# qemu-img create -f raw CentOS-7.2-x86_64.raw 10G Formatting 'CentOS-7.2-x86_64.raw', fmt=raw size=10737418240 [root@CenoOS1 opt]# ll -h total 16K -rw-r--r-- 1 root root 10G May 22 19:23 CentOS-7.2-x86_64.raw
基於raw創建虛擬機:
[root@CenoOS1 opt]# virt-install --name CentOS-7-x86_64 --virt-type kvm --ram 1024 --cdrom=/opt/CentOS-7.2.iso
--disk path=/opt/CentOS-7.2-x86_64.raw --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
執行完命令以后立即登陸VNC來安裝Linux。VNC訪問虛擬機:宿主機IP+端口號(5900)
基於qcow2格式創建硬盤:
[root@CenoOS1 opt]#qemu-img create -f qcow2 /opt/centos7.5.qcow2 8G
Formatting '/opt/c77.qcow2', fmt=qcow2 size=8589934592 encryption=off cluster_size=65536 lazy_refcounts=off
[root@ c7-41 opt] ll
基於qcow2格式創建虛擬機:
virt-install --virt-type=kvm --name=c77 --vcpus=1 -r 1024 --cdrom=/opt/CentOS-7-x86_64-DVD-1908.iso
--network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole --os-type=linux --os-variant=rhel7
--disk path=/opt/cento7.5.qcow2,size=6,format=qcow2
執行完命令以后立即登陸VNC來安裝Linux。VNC訪問虛擬機:宿主機IP+端口號(5900)
四、kvm虛擬機管理工具的部分常用命令
virt-install # 建立kvm虛擬機 virsh list --all # 查看正在運行的KVM虛擬機 virsh list --all # 查看所有KVM虛擬機 virsh start name # 啟動KVM虛擬機 virsh shutdown name # 正常關閉KVM虛擬機(一般要等幾分鍾) virsh destroy name # 強制關閉KVM虛擬機(類似於直接斷電) virsh suspend name # 掛起KVM虛擬機 virsh resume name # 恢復掛起的KVM虛擬機 virsh dumpxml name # 查看KVM虛擬機配置文件 virsh edit name # 編輯KVM虛擬機的xml配置文件(虛擬機關機后生效) virsh undefine name # 徹底刪除KVM虛擬機,建議先用virsh dumpxml name > xxx.xml 保存配置文件) virsh define xxx.xml # 根據xxx.xml文件定義虛擬機 virsh console name # 字符界面控制虛擬機 virsh domiflist name # 顯示虛擬機的網卡信息 virsh attach-interface name --type bridge --source br0 --medol virtio--config # 給虛擬機增加網卡,后面是網卡參數,根據 domiflist 查看情況來確定(虛擬機關機后生效,宿主機重啟后失效,需要保存到配置文件中,在重新define) virsh detach-interface name --type bridge --mac 物理地址 # 刪除虛擬機網卡,參數根據 domiflist 查看情況來
五、圖形化創建虛擬機
1、安裝組件
在centos上圖形化安裝kvm,實現在kvm上安裝centos7
注意:在redhat7.0上安裝kvm,一定要勾選如圖選項,必不可少的虛擬化組件
進入系統,選擇系統工具-》虛擬系統管理器
選擇新建虛擬機
選擇iso鏡像
選擇硬盤容量
勾上安裝前自定義配置
根據需要進行相關配置,點擊開始安裝
開始安裝系統