標籤:虛擬化 虛擬機器 kvm
KVM簡介
Kernel-based Virtual Machine的簡稱,是一個開源的系統虛擬化模組,自Linux 2.6.20之後整合在Linux的各個主要發行版本中。它使用Linux自身的調度器進行管理,所以相對於Xen,其核心源碼很少。KVM目前已成為學術界的主流VMM之一。
KVM的虛擬化需要硬體支援(如Intel VT技術或者AMD V技術)。是基於硬體的完全虛擬化。而Xen早期則是基於軟體類比的Para-Virtualization,新版本則是基於硬體支援的完全虛擬化。但Xen本身有自己的進程調度器,儲存管理模組等,所以代碼較為龐大。廣為流傳的商業系統虛擬化軟體VMware ESX系列是基於軟體類比的Full-Virtualization。
KVM虛擬化平台部署
檢查硬體環境是否支援虛擬化
[[email protected] ~]# egrep --color ‘(vmx|svm)‘ /proc/cpuinfo vmx 表示INTEL,svm表示AMD
注:(我在vmware中搭建的Centos6.5 x64的,且支援CPU Inter VT-X虛擬化技術,物理機BIOS已經開啟,但是檢查模組沒有vmx.)
解決方案(僅供vmware測試機):在workstation上實現嵌套虛擬化,需要編輯虛擬機器的vmx檔案,添加vhv.enable = "TRUE" 找到虛擬機器安裝檔案,帶有.vmx尾碼,添加即可。
# cat /proc/cpuinfo flags: 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 rdtscp lm constant_tsc up arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni pclmulqdq vmx ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt aes xsave avx hypervisor lahf_lm ida arat epb xsaveopt pln pts dts tpr_shadow vnmi ept vpid
安裝模組
[[email protected] ~]# modprobe kvm[[email protected] ~]# modprobe kvm_intel[[email protected] ~]# lsmod | grep kvmkvm_intel 55496 0 kvm 337772 1 kvm_intel
安裝kvm管理工具
# yum install qemu-kvm qemu-kvm-tools -y# ln -sv /usr/libexec/qemu-kvm /usr/sbin/# rpm -qa | grep kvmqemu-kvm-tools-0.12.1.2-2.479.el6.x86_64qemu-kvm-0.12.1.2-2.479.el6.x86_64
qemu-kvm的標準選項
qemu-kvm的標準選項主要涉及指定主控件類型、CPU模式、NUMA、軟碟機裝置、光碟機裝置及硬體裝置等。-name name:設定虛擬機器名稱;-M machine:指定要類比的主控件類型,如Standard PC、ISA-only PC或Intel-Mac等,可以使用“qemu-kvm -M ?”擷取所支援的所有類型;-m megs:設定虛擬機器的RAM大小;-cpu model:設定CPU模型,如coreduo、qemu64等,可以使用“qemu-kvm -cpu ?”擷取所支援的所有模型;-smp n[,cores=cores][,threads=threads][,sockets=sockets][,maxcpus=maxcpus]:設定類比的SMP架構中CPU的個數等、每個CPU的核心數及CPU的socket數目等;PC機上最多可以類比255顆CPU;maxcpus用於指定熱插拔的CPU個數上限;-numa opts:指定類比多節點的numa裝置;-fda file-fdb file:使用指定檔案(file)作為磁碟片鏡像,file為/dev/fd0表示使用物理軟碟機;-hda file-hdb file-hdc file-hdd file:使用指定file作為硬碟鏡像;-cdrom file:使用指定file作為CD-ROM鏡像,需要注意的是-cdrom和-hdc不能同時使用;將file指定為/dev/cdrom可以直接使用物理光碟機;-drive option[,option[,option[,...]]]:定義一個硬碟裝置;可用子選項有很多。file=/path/to/somefile:硬體映像檔案路徑;if=interface:指定硬碟裝置所串連的介面類型,即控制器類型,如ide、scsi、sd、mtd、floppy、pflash及virtio等;index=index:設定同一種控制器類型中不同裝置的索引號,即標識號;media=media:定義介質類型為硬碟(disk)還是光碟片(cdrom);snapshot=snapshot:指定當前硬碟裝置是否支援快照功能:on或off;cache=cache:定義如何使用物理機緩衝來訪問塊資料,其可用值有none、writeback、unsafe和writethrough四個;format=format:指定映像檔案的格式,具體格式可參見qemu-img命令;-boot [order=drives][,once=drives][,menu=on|off]:定義啟動裝置的引導次序,每種裝置使用一個字元表示;不同的架構所支援的裝置及其表示字元不盡相同,在x86 PC架構上,a、b表示軟碟機、c表示第一塊硬碟,d表示第一個光碟機裝置,n-p表示網路介面卡;預設為硬碟裝置;-boot order=dc,once=d
本文出自 “阿俊部落格” 部落格,請務必保留此出處http://ssc4469.blog.51cto.com/6315913/1685592
Centos 6.5 KVM 虛擬化平台部署