KVM虛擬化概念詳講linux
free
查看內存 網絡
grep -Ei 'vmx|svm' /proc/cpuinfo
查看虛擬機是支持虛擬化dom
lsblk
查看是否增長了一塊新的磁盤 這裏咱們看到新增了一塊50g的內存 mkfs.ext4 /dev/sdb
blkid /dev/sdb
查看磁盤信息mkdir /kvm_data
mount /dev/sdb /kvm_data
掛載到/kvm_data/kvm_data
開機自動掛載 須要修改‘/etc/fstab’
/dev/sdb /kvm_data ext4 defaults 0 0
seLinux
yum install -y virt-* libvirt bridge-utils qemu-img
啓動KVM性能
配置網卡 首先複製原先的網卡 測試
接下來修改ifcfg-bro
ui
TYPE="Bridge" BOOTPROTO="none" DEFROUTE="yes" NAME="bro" DEVICE="bro" ONBOOT="yes" IPADDR="192.168.207.143" NETMASK="255.255.255.0" GATEWAY="192.168.207.2" DNS1=114.114.114.114 DNS2=8.8.8.8
修改ifcfg-ens33
操作系統
TYPE="Ethernet" NAME="ens33" DEVICE="ens33" ONBOOT="yes" BOOTPROTO="none" BRIDGE="bro"
systemctl restart network
重啓網卡.net
首先檢查KVM模塊是否加載,命令以下(lsmod命令用於顯示已載入系統的模塊):rest
lsmod|grep kvm
code
systemctl start libvirtd
開啓libvirtd
brctl show
查看有兩個網卡
上傳Centos7到/tmp/
目錄下
virt-install --name=test --memory=512,maxmemory=1024 --vcpus=1,maxvcpus=2 --os-type=linux --os-variant=rhel7 --location=/tmp/CentOS-7-x86_64-DVD-1511.iso --disk path=/kvm_data/test.img,size=10 --bridge=br0 --graphics=none --console=pty,target_type=serial --extra-args="console=tty0 console=ttyS0"
輸入上面的命令開始安裝虛擬機
命令解釋:
--name:指定虛擬機的名稱。 --memory:指定分配給虛擬機的內存資源大小。 maxmemory:指定可調節的最大內存資源大小,由於KVM支持熱調整虛擬機的資源。 --vcpus:指定分配給虛擬機的CPU核心數量。 maxvcpus:指定可調節的最大CPU核心數量。 --os-type:指定虛擬機安裝的操做系統類型。 --os-variant:指定系統的發行版本。 --location:指定ISO鏡像文件所在的路徑,支持使用網絡資源路徑,也就是說可使用URL。 --disk path:指定虛擬硬盤所存放的路徑及名稱,size則是指定該硬盤的可用大小,單位是G。 --bridge:指定使用哪個橋接網卡,也就是說使用橋接的網絡模式。 --graphics:指定是否開啓圖形。 --console:定義終端的屬性,target_type 則是定義終端的類型。 --extra-args:定義終端額外的參數。
開機後進入設置界面 對時區 root密碼等進行設置
virsh list
查看虛擬機列表 只能看見已經開啓的虛擬機virsh list --all
查看全部的虛擬機virsh console test
進入指定的虛擬機vrish經常使用命令,命令以下:
virsh shutdown test //關閉虛擬機 virsh start test //開啓虛擬機 virsh destroy test //相似stop,這個是強制中止 virsh undefine test //完全銷燬虛擬機,會刪除虛擬機配置文件,virsh list --all就看不到 virsh autostart test //宿主機開機該虛擬機也開機 virsh autostart --disable test //解除開機啓動 virsh suspend test //掛起 virsh resume test //恢復
克隆虛擬機以前必需要關閉虛擬機
virt-clone --original test --name test02 --file
--original:指定克隆源虛擬機。 --name:指定克隆後的虛擬機名字。 --file:指定目標虛擬機的虛擬磁盤文件
test02
ls /etc/libvirt/qemu/
快照是在咱們使用Vmware的時候,很經常使用的一個功能。它能夠回到以前的某一狀態。在KVM中RAW格式的虛擬磁盤不支持作快照,qcow2支持。
建立快照 virsh snapshot-create test
qemu-img info /kvm_data/test.img
查看test.img信息 而且同時查看 快照列表
virsh snapshot-list test
列出全部快照
virsh snapshot-current test
查看當前快照詳細信息
ls /var/lib/libvirt/qemu/snapshot/test/
查看全部快照配置文件
恢復指定快照 virsh snapshot-revert test 1588485687
刪除指定快照 virsh snapshot-delete test 1588485687
qemu-img info /kvm_data/test.img
查看磁盤格式信息
建立2 GB的RAW格式磁盤 qemu-img create -f raw /kvm_data/test_1.img 2G
qemu-img convert -O qcow2 /kvm_data/test_1.img /kvm_data/test_1.qcow2
將磁盤轉換爲qcow2格式
ls -lh /kvm_data/test_1.img
能夠看到qcow2文件比較小,raw文件大小和咱們指定空間大小同樣是2G raw格式的磁盤性能比qcow2要好,可是raw格式的磁盤沒法作快照
qemu-img convert -O raw /kvm_data/test02.img /kvm_data/test02_2.img
將test02轉換爲raw格式
更改磁盤格式和文件路徑,而後啓動test02虛擬機,命令以下: virsh edit test02
qemu-img resize /kvm_data/test02_2.img +2G
qemu-img info /kvm_data/test02_2.img
查看磁盤信息 大小增長了2gvirsh console test02
使用 fdisk -l
查看磁盤列表這樣咱們看到已經變爲12g了 接下來對該磁盤進行分區 fdisk /dev/vda
分區完成後 使用p查看磁盤列表:
qemu-img create -f raw /kvm_data/test02_3.raw 5G
建立一塊新的5g的磁盤virsh edit test02
編輯虛擬機test02接下來,咱們擴容qcow2格式的磁盤,命令以下:
qemu-img resize /kvm_data/test.img +2G
若提示qemu-img: Can't resize an image which has snapshots
,須要刪除快照
使用命令 qemu-img info test.img
查看虛擬機信息
fdisk -l
virsh dominfo test
virsh edit test
virsh dominfo test
virsh setmem test 800m
修改動態內存virsh setvcpus test 2
修改cpu數 只能增長不能減小virsh dumpxml test > /etc/libvirt/qemu/test.xml
把配置寫到配置文件中配置網卡
virsh domiflist test
列出網卡列表virsh attach-interface test --type bridge --source virbr0
virsh domiflist test
virsh dumpxml test > /etc/libvirt/qemu/test.xml
把配置文件進行備份
進入虛擬機查看網卡信息 ip a
virsh domblklist test
查看虛擬磁盤所在目錄virsh dumpxml test > /etc/libvirt/qemu/test03.xml
若是是遠程虛擬機須要把該文件拷貝到遠程上去rsync -av /kvm_data/test.img /kvm_data/test03.img
若是是遷移到遠程,則須要把該磁盤文件拷貝到遠程機器上由於是遷移到本機,配置文件用的是test子機的配置,不改會有衝突,因此須要修改該文件。若是是遠程機器不用修改,命令以下:
vi /etc/libvirt/qemu/test03.xml
virsh define /etc/libvirt/qemu/test03.xml
定義新的虛擬機
virsh list --all
查看全部的虛擬機