部署KVM虛擬化平臺(可跟做)

一、KVM概述KVM是Kernel Virtual Machine的簡寫,目前Linux發(fā)行版必須在64位的系統(tǒng)環(huán)境才能運行KVM,同時硬件需要支持VT技術(shù)。?
1、案例前置知識點KVM自Linux2.6.20版本后就直接整合到Linux內(nèi)核,它依托CPU虛擬化指令集(如Intel-VT、AMD-V)實現(xiàn)高性能的虛擬化支持。由于與Linux內(nèi)核高度整合,因此在性能、安全性、兼容性、穩(wěn)定性上都有很好的表現(xiàn)。?
下圖是一個簡單的KVM虛擬化架構(gòu),在KVM環(huán)境中運行的每個虛擬化操作系統(tǒng)都將表現(xiàn)位單個獨立的系統(tǒng)進程。因此它可以 很方便地與Linux系統(tǒng)中的安全模塊進行整合(SELinux),可以靈活地實現(xiàn)資源的管理及分配。?
二、實施案例1、環(huán)境需求:Centos操作系統(tǒng)3臺;Windiws 7操作系統(tǒng)1臺;所需鏡像和工具請訪問:https://pan.baidu.com/s/1fPhMgWJAjnmgJI5w267QCA?
提取碼:7x2p?
2、編輯虛擬機支持虛擬化1)修改處理器為2個,勾選虛擬化引擎?
2)檢查CPU是否支持虛擬化[root@centos01 ~]# cat /proc/cpuinfo | grep vmxflags ??????: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch epb tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap xsaveopt dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_eppflags ??????: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch epb tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap xsaveopt dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp3、安裝KVM所需軟件[root@centos01 ~]# ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target ???????<!--將命令行改為圖形化運行,重啟虛擬機即可生效-->[root@centos01 ~]# rm -rf /etc/yum.repos.d/CentOS-* ????????????????????????????????????<!--刪除系統(tǒng)自動yum源-->[root@centos01 ~]# mount /dev/cdrom /mnt/ <!--掛載操作系統(tǒng)光盤-->mount: /dev/sr0?寫保護,將以只讀方式掛載[root@centos01 ~]# rpm -qa | grep qemu-kvm <!--檢查kvm模塊是否安裝-->qemu-kvm-1.5.3-141.el7.x86_64qemu-kvm-common-1.5.3-141.el7.x86_64[root@centos01 ~]# rpm -qa | grep qemu-kvm-tools<!--檢查kvm調(diào)試工具是否安裝-->[root@centos01 ~]# yum -y install qemu-kvm-tools <!--安裝調(diào)試工具-->[root@centos01 ~]# rpm -qa | grep qemu-kvm-tools<!--檢查kvm調(diào)試工具是否安裝成功-->qemu-kvm-tools-1.5.3-141.el7.x86_64[root@centos01 ~]# rpm -qa | grep virt-install ??????????????????????????????<!--檢查創(chuàng)建虛擬機工具是否安裝-->[root@centos01 ~]# yum -y install virt-install <!--安裝創(chuàng)建虛擬機工具-->[root@centos01 ~]# rpm -qa | grep virt-install<!--檢查創(chuàng)建虛擬機工具是否安裝成功-->virt-install-1.4.1-7.el7.noarch[root@centos01 ~]# rpm -qa | grep qemu-img<!--檢查磁盤管理工具是否安裝-->qemu-img-1.5.3-141.el7.x86_64[root@centos01 ~]# rpm -qa | grep bridge-utils<!--檢查網(wǎng)絡(luò)工具是否安裝-->bridge-utils-1.5-9.el7.x86_64[root@centos01 ~]# rpm -qa | grep libvirt<!--檢查虛擬機管理工具是否安裝-->libvirt-daemon-driver-qemu-3.2.0-14.el7.x86_64libvirt-client-3.2.0-14.el7.x86_64libvirt-daemon-driver-interface-3.2.0-14.el7.x86_64libvirt-daemon-driver-storage-disk-3.2.0-14.el7.x86_64libvirt-daemon-driver-storage-3.2.0-14.el7.x86_64libvirt-daemon-driver-storage-core-3.2.0-14.el7.x86_64libvirt-daemon-driver-storage-mpath-3.2.0-14.el7.x86_64libvirt-daemon-driver-storage-iscsi-3.2.0-14.el7.x86_64libvirt-daemon-kvm-3.2.0-14.el7.x86_64libvirt-daemon-driver-nodedev-3.2.0-14.el7.x86_64libvirt-gconfig-1.0.0-1.el7.x86_64libvirt-daemon-driver-storage-rbd-3.2.0-14.el7.x86_64libvirt-daemon-driver-storage-scsi-3.2.0-14.el7.x86_64libvirt-libs-3.2.0-14.el7.x86_64libvirt-daemon-driver-network-3.2.0-14.el7.x86_64libvirt-daemon-driver-nwfilter-3.2.0-14.el7.x86_64libvirt-glib-1.0.0-1.el7.x86_64libvirt-daemon-driver-storage-gluster-3.2.0-14.el7.x86_64libvirt-daemon-3.2.0-14.el7.x86_64libvirt-daemon-config-network-3.2.0-14.el7.x86_64libvirt-gobject-1.0.0-1.el7.x86_64libvirt-daemon-driver-storage-logical-3.2.0-14.el7.x86_64libvirt-python-3.2.0-3.el7.x86_64libvirt-daemon-driver-secret-3.2.0-14.el7.x86_64[root@centos01 ~]# rpm -qa | grep virt-manager<!--檢查圖形管理虛擬機工具是否安裝-->virt-manager-common-1.4.1-7.el7.noarch[root@centos01 ~]# yum -y install virt-manager<!--安裝圖形管理虛擬機工具-->[root@centos01 ~]# rpm -qa | grep virt-manager ????????????????????????????????<!--檢查圖形管理虛擬機工具是否安裝成功-->virt-manager-1.4.1-7.el7.noarchvirt-manager-common-1.4.1-7.el7.noarch[root@centos01 ~]# lsmod | grep kvm <!--檢查虛擬化模塊是否開啟-->kvm_intel ????????????170086 ?0 kvm ??????????????????566340 ?1 kvm_intelirqbypass ?????????????13503 ?1 kvm[root@centos01 ~]# systemctl start libvirtd <!--啟動虛擬化服務(wù)-->[root@centos01 ~]# systemctl enable libvirtd ?????<!-設(shè)置開機自動啟動-->4、使用WinSCP工具導(dǎo)入鏡像1)使用winSCP將操作系統(tǒng)光盤導(dǎo)入到虛擬化管理器中(工具請訪問網(wǎng)盤自行提?。?
2)輸入IP地址和用戶名密碼,登錄即可?
3)跳過警告即可?
4)導(dǎo)入操作系統(tǒng)?
5)驗證是否上傳成功[root@centos01 ~]# pwd ???<!--查看當(dāng)前位置-->/root[root@centos01 ~]# ls ????????<!--驗證是否上傳成功-->anaconda-ks.cfg ?CentOS-7.4-x86_64-1708.iso ?initial-setup-ks.cfg5、虛擬化管理器創(chuàng)建虛擬機1)打開虛擬化管理器[root@centos01 ~]# virt-manager?
2)創(chuàng)建新的虛擬機?
3)瀏覽操作系統(tǒng)光盤?
4)選擇光盤?
5)保持默認(rèn),單擊前進即可?
6)自定義內(nèi)存大小?
7)自定義磁盤大小?
8)自定義虛擬機名稱,單擊完成即可?
9)選擇第一行,回車鍵開始安裝?
10)開始初始化配置?
11)安裝完成,重啟虛擬機?
12)接受許可協(xié)議?
13)創(chuàng)建賬戶?
三、虛擬化的基本管理使用1)查看虛擬機運行狀態(tài)[root@centos01 ~]# virsh list --all Id ???名稱 ????????????????????????狀態(tài)---------------------------------------------------- 2 ????centos ????????????????????????running2)關(guān)閉虛擬機[root@centos01 ~]# virsh shutdown centos域?centos?被關(guān)閉3)啟動虛擬機[root@centos01 ~]# virsh start centos域?centos?已開始4)設(shè)置虛擬機開機自動啟動[root@centos01 ~]# virsh autostart centos域?centos標(biāo)記為自動開始5)強制關(guān)閉虛擬機[root@centos01 ~]# virsh destroy centos域?centos?被刪除1、掛起和恢復(fù)虛擬機1)掛起虛擬機[root@centos01 ~]# virsh suspend centos域?centos?被掛起2)恢復(fù)掛起的虛擬機[root@centos01 ~]# virsh resume centos域?centos?被重新恢復(fù)2、備份恢復(fù)虛擬機1)備份虛擬機[root@centos01 ~]# virsh dumpxml centos > /etc/libvirt/qemu/centos01.xml2)刪除虛擬機[root@centos01 ~]# virsh undefine centos域?centos?已經(jīng)被取消定義3)查看備份的虛擬機[root@centos01 ~]# cd /etc/libvirt/qemu/[root@centos01 qemu]# lsautostart ?centos01.xml ?networks4)恢復(fù)虛擬機[root@centos01 qemu]# virsh define centos01.xml?定義域?centos(從?centos01.xml)5)查看恢復(fù)虛擬機的運行狀態(tài)[root@centos01 ~]# virsh list --all Id ???名稱 ????????????????????????狀態(tài)---------------------------------------------------- 4 ????centos ????????????????????????running6)修改虛擬機配置文件的兩種方法[root@centos01 ~]# vim /etc/libvirt/qemu/centos.xml[root@centos01 ~]# virsh edit centos3、克隆和快照1)克隆虛擬機[root@centos01 ~]# virsh shutdown centos域?centos?被關(guān)閉[root@centos01 ~]# virt-clone -o centos -n centos02 -f /var/lib/libvirt/images/centos02.qcow2?正在分配?'centos02.qcow2' ?????????????????????| ?30 GB ?00:11 ????成功克隆?'centos02'。2)創(chuàng)建快照[root@centos01 ~]# virsh snapshot-create centos已生成域快照?15742741813)恢復(fù)快照[root@centos01 ~]# virsh snapshot-revert centos 15742741814)查看快照[root@centos01 ~]# virsh snapshot-list centos?名稱 ??????????????生成時間 ?????????????狀態(tài)------------------------------------------------------------ 1574274181 ??????????2019-11-21 02:23:01 +0800 shutoff5)刪除快照[root@centos01 ~]# virsh snapshot-delete centos 1574274181已刪除域快照?1574274181[root@centos01 ~]# virsh snapshot-list centos?名稱 ??????????????生成時間 ?????????????狀態(tài)------------------------------------------------------------——————?本文至此結(jié)束,感謝閱讀?——————?
了解更多網(wǎng)絡(luò)知識關(guān)注:http://www.vecloud.com/