《KVM虛擬化技術(shù)基礎(chǔ)與實(shí)踐》課件1第四章_第1頁(yè)
《KVM虛擬化技術(shù)基礎(chǔ)與實(shí)踐》課件1第四章_第2頁(yè)
《KVM虛擬化技術(shù)基礎(chǔ)與實(shí)踐》課件1第四章_第3頁(yè)
《KVM虛擬化技術(shù)基礎(chǔ)與實(shí)踐》課件1第四章_第4頁(yè)
《KVM虛擬化技術(shù)基礎(chǔ)與實(shí)踐》課件1第四章_第5頁(yè)
已閱讀5頁(yè),還剩59頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

KVM核心模塊配置4QEMU命令基本格式CPU配置內(nèi)存配置存儲(chǔ)器配置網(wǎng)絡(luò)配置圖形顯示配置4.1QEMU命令基本格式

QEMU命令基本格式為“qemu-kvm[options][disk_image]”,其選項(xiàng)非常多,不過(guò),大致可分為如下幾類:標(biāo)準(zhǔn)選項(xiàng),USB選項(xiàng),顯示選項(xiàng),i386平臺(tái)專用選項(xiàng),網(wǎng)絡(luò)選項(xiàng),字符設(shè)備選項(xiàng),藍(lán)牙相關(guān)選項(xiàng),Linux系統(tǒng)引導(dǎo)專用選項(xiàng),調(diào)試/專家模式選項(xiàng),PowerPC專用選項(xiàng),Sparc32專用選項(xiàng)。第4章KVM核心模塊配置QEMU的標(biāo)準(zhǔn)選項(xiàng)如下:-namename:設(shè)定客戶機(jī)名稱;-Mmachine:指定要模擬的主機(jī)類型,例如StandardPC、ISA-onlyPC和Ubuntu14.04PC等,可以使用命令“qemu-system-x86_64-M?”獲取所支持的所有類型;-mmegs:設(shè)定客戶機(jī)的RAM大??;-cpumodel:設(shè)定CPU模型,例如qemu32、qemu64等。-smp[cpus=]n[,maxcpus=cpus][,cores=cores][,threads=threads][,sockets=sockets]:設(shè)定模擬的SMP架構(gòu)中CPU的個(gè)數(shù)、每個(gè)CPU的core個(gè)數(shù)及CPU的socket個(gè)數(shù)等。第4章KVM核心模塊配置-numaopts:指定模擬多節(jié)點(diǎn)的numa設(shè)備;-fdafile:使用指定文件(file)作為軟盤鏡像,file為/dev/fd0表示使用物理軟驅(qū);-fdbfile:使用指定file作為軟盤鏡像,file為/dev/hda或者/dev/sda表示使用物理硬盤;-hdafile:使用指定file作為硬盤鏡像;-hdbfile:使用指定file作為硬盤鏡像;-hdcfile:使用指定file作為硬盤鏡像;-hddfile:使用指定file作為硬盤鏡像;第4章KVM核心模塊配置-cdromfile:使用指定file作為CD-ROM鏡像,需要注意的是-cdrom和-hdc不能同時(shí)使用;-driveoption[,option[,option[,...]]]:定義一個(gè)硬盤設(shè)備;可用子選項(xiàng)有很多。file=/path/to/somefile:硬件映像文件路徑;if=interface:指定硬盤設(shè)備所連接的接口類型。index=index:設(shè)定同一種控制器類型中不同設(shè)備的索引號(hào),即標(biāo)識(shí)號(hào);media=media:定義介質(zhì)類型為硬盤(disk)還是光盤(cdrom);snapshot=snapshot:指定當(dāng)前硬盤設(shè)備是否支持快照功能,on或off。第4章KVM核心模塊配置4.2CPU配置CPU是計(jì)算機(jī)的核心,負(fù)責(zé)處理、運(yùn)算計(jì)算機(jī)內(nèi)部的所有數(shù)據(jù)。QEMU負(fù)責(zé)模擬客戶機(jī)中的CPU,使得客戶機(jī)顯示出指定數(shù)目的CPU和相關(guān)的CPU特性。而當(dāng)打開(kāi)KVM時(shí),客戶機(jī)中CPU指令的執(zhí)行將由硬件處理器的模擬化功能(如IntelVT-x和AMDSVM)來(lái)輔助執(zhí)行。本節(jié)主要介紹KVM中CPU的基本配置和CPU的基本模型。第4章KVM核心模塊配置4.2.1CPU設(shè)置基本參數(shù)

隨著科技的快速發(fā)展,多核、多處理器以及超線程技術(shù)相繼出現(xiàn),SMP(SymmetricMulti-Processor,對(duì)稱多處理器)系統(tǒng)越來(lái)越被廣泛使用。QEMU不但可以模擬客戶機(jī)中的CPU,也可以模擬SMP架構(gòu),讓客戶機(jī)在運(yùn)行時(shí)充分利用物理硬件來(lái)實(shí)現(xiàn)并行處理。

在QEMU中,“-smp”參數(shù)是為了配置客戶機(jī)的SMP系統(tǒng)。在命令行中,關(guān)于配置SMP系統(tǒng)的參數(shù)如下:-smp[cpus=]n[,maxcpus=cpus][,cores=cores][,threads=threads][,sockets=sockets]第4章KVM核心模塊配置主要參數(shù)說(shuō)明:(1)?cpus用來(lái)設(shè)置客戶機(jī)中使用的邏輯CPU的數(shù)量(默認(rèn)值是1);(2)?maxcpus用來(lái)設(shè)置客戶機(jī)的最大CPU的數(shù)量,最多支持255個(gè)CPU。其中,包含啟動(dòng)時(shí)處于下線狀態(tài)的CPU數(shù)目;(3)?cores用來(lái)設(shè)置在一個(gè)socket上CPUcore的數(shù)量;(4)?threads用來(lái)設(shè)置在一個(gè)CPUcore上線程的數(shù)量;(5)?sockets用來(lái)設(shè)置客戶機(jī)中看到的總socket的數(shù)量。第4章KVM核心模塊配置4.2.2CPU模型

每一種虛擬機(jī)監(jiān)視器都定義了自己的策略,讓客戶機(jī)有一個(gè)默認(rèn)的CPU模型。有的VMM會(huì)簡(jiǎn)單地將宿主機(jī)中的CPU類型和特性直接傳遞給客戶機(jī)使用。在默認(rèn)情況下,QEMU為客戶機(jī)提供一個(gè)名為qemu64或qemu32的基本CPU模型。虛擬機(jī)監(jiān)視器的這種策略不但可以為CPU提供一些高級(jí)的過(guò)濾功能,還可以將物理平臺(tái)根據(jù)基本CPU模型進(jìn)行分組,使得客戶機(jī)在同一組硬件平臺(tái)上的動(dòng)態(tài)遷移更加平滑和安全。第4章KVM核心模塊配置4.3內(nèi)存配置

內(nèi)存是電腦的主要部件,在計(jì)算機(jī)系統(tǒng)中,占據(jù)著非常重要的地位。內(nèi)存作為一種存儲(chǔ)設(shè)備是程序中所必不可少的,因?yàn)樗械某绦蚨家ㄟ^(guò)內(nèi)存將代碼和數(shù)據(jù)提交到CPU中去處理和執(zhí)行。由于CPU與內(nèi)存之間進(jìn)行數(shù)據(jù)交換的速度是最快的,所以CPU在工作時(shí)都會(huì)從硬盤調(diào)用數(shù)據(jù)存放在內(nèi)存中,然后再?gòu)膬?nèi)存中讀取數(shù)據(jù)供自己使用。簡(jiǎn)單來(lái)說(shuō),內(nèi)存是電腦的一個(gè)緩沖區(qū),內(nèi)存的大小和訪問(wèn)速度會(huì)直接影響電腦的運(yùn)行速度。

第4章KVM核心模塊配置4.3.1內(nèi)存設(shè)置的基本參數(shù)

啟動(dòng)客戶機(jī)時(shí),設(shè)置內(nèi)存大小的參數(shù)如下:-m[size=]megs

設(shè)置客戶機(jī)虛擬內(nèi)存的大小為megsMB字節(jié)。在默認(rèn)情況下,單位為MB,內(nèi)存大小的默認(rèn)值為128M。也可以加上“M”或者“G”為后綴,指定使用MB或者GB作為內(nèi)存分配的單位。第4章KVM核心模塊配置4.3.2大頁(yè)

在Linux環(huán)境中,內(nèi)存是以頁(yè)P(yáng)age的方式進(jìn)行分配的,默認(rèn)大小為4K。如果需要比較大的內(nèi)存空間,則需要進(jìn)行頻繁的頁(yè)分配和管理尋址動(dòng)作。HugePage是傳統(tǒng)4?KPage的替代方案,它的廣泛?jiǎn)⒂瞄_(kāi)始于Kernel2.6,使用HugePage可以讓我們有更大的內(nèi)存分頁(yè)。第4章KVM核心模塊配置在宿主機(jī)中讓客戶機(jī)使用HugePage的指令:第一步,查看宿主機(jī)中內(nèi)存頁(yè)的大小和HugePage的大小。第二步,創(chuàng)建HugePage目錄/dev/hugepages。第三步,掛載hugetlbfs文件系統(tǒng)到Linux的HugePage目錄下。第四步,設(shè)置HugePage的數(shù)量。第五步,啟動(dòng)客戶機(jī),并讓其使用HugePage內(nèi)存。第六步,查看宿主機(jī)中HugePage的使用情況。第4章KVM核心模塊配置在Linux環(huán)境中開(kāi)啟HugePage的好處如下:(1)非Swap內(nèi)存:當(dāng)開(kāi)啟HugePage的時(shí)候,HugePage是不會(huì)Swap的;(2)減少TLB負(fù)擔(dān):TLB是在CPU里面的一塊緩沖區(qū)域,其中包括了部分PageTable內(nèi)容。(3)減少PageTable空間負(fù)載:在PageTable管理中,每條Page記錄會(huì)占據(jù)64?byte的空間。(4)減少PageTable檢索負(fù)載。(5)內(nèi)存性能提升:Page數(shù)量的減少和大小的增加,減少了管理過(guò)程的復(fù)雜性,進(jìn)一步減小了瓶頸出現(xiàn)的概率。第4章KVM核心模塊配置4.4存儲(chǔ)器配置

在計(jì)算機(jī)系統(tǒng)中,存儲(chǔ)器(Memory)是記憶設(shè)備,主要用來(lái)存放程序和數(shù)據(jù),是計(jì)算機(jī)的重要組成部分。隨著計(jì)算機(jī)硬件系統(tǒng)和軟件系統(tǒng)的不斷發(fā)展,計(jì)算機(jī)應(yīng)用領(lǐng)域的日益擴(kuò)大,對(duì)存儲(chǔ)器的要求也越來(lái)越高,既要求存儲(chǔ)容量大,又要求存取速度快。和內(nèi)存相比,磁盤存儲(chǔ)容量大,存取速度慢,但是磁盤上的數(shù)據(jù)可以永久存儲(chǔ),不像內(nèi)存一樣斷電就會(huì)消失。

本節(jié)將以磁盤為例介紹存儲(chǔ)器的基本配置。第4章KVM核心模塊配置4.4.1常見(jiàn)的存儲(chǔ)器配置在QEMU命令行工具中,常見(jiàn)的存儲(chǔ)配置的主要參數(shù)說(shuō)明如下所示:-hdafile:此為默認(rèn)選項(xiàng),指定file鏡像作為客戶機(jī)中的第一個(gè)IDE設(shè)備。-cdromfile:指定file作為CD-ROM鏡像,/dev/cdrom。也可以將host的/dev/cdrom作為?-cdrom的file參數(shù)來(lái)使用。注意,-cdrom不能和?-hdc同時(shí)使用,因?yàn)?-cdrom就是客戶機(jī)中的第三個(gè)IDE設(shè)備。第4章KVM核心模塊配置4.4.2啟動(dòng)順序配置在QEMU中,可以使用“-boot”參數(shù)指定客戶機(jī)的啟動(dòng)順序:-boot[order=drives][,once=drives][,menu=on|off][,splash=splashfile][,splash-time=sp-time]主要參數(shù)說(shuō)明如下:order=drives:在QEMU模擬的x86_64平臺(tái)中,用“a”和“b”表示第一和第二個(gè)軟驅(qū),用“c”表示第一個(gè)硬盤,用“d”表示CD-ROM光驅(qū),用“n”表示從網(wǎng)絡(luò)啟動(dòng)。once=drives:表示設(shè)置第一次啟動(dòng)的啟動(dòng)順序,重啟后恢復(fù)為默認(rèn)值。splash=splashfile:在menu=on時(shí),設(shè)置BIOS的splash的logo圖片splashfile。第4章KVM核心模塊配置4.4.3QEMU支持的鏡像文件格式常見(jiàn)的文件格式做一個(gè)詳細(xì)的介紹:1)

rawraw是qemu-img默認(rèn)創(chuàng)建的格式,是原始的磁盤鏡像格式,它直接將文件系統(tǒng)的存儲(chǔ)單元分配給客戶機(jī)使用,采取了直讀直寫的策略。它的優(yōu)勢(shì)在于可以非常簡(jiǎn)單、容易地移植到其他模擬器上去使用。

默認(rèn)情況下,qemu-img的raw格式的文件是稀疏文件,如果客戶機(jī)文件系統(tǒng)支持“空洞”,那么鏡像文件只有在被寫有數(shù)據(jù)的扇區(qū)才會(huì)真正占用磁盤空間,從而有節(jié)省磁盤空間的作用。第4章KVM核心模塊配置簡(jiǎn)而言之,raw有以下幾個(gè)優(yōu)點(diǎn):①尋址簡(jiǎn)單,訪問(wèn)效率較高;②可以通過(guò)格式轉(zhuǎn)換工具方便地轉(zhuǎn)換為其他格式;③可以方便地被宿主機(jī)掛載,不用開(kāi)虛擬機(jī)即可在宿主機(jī)和虛擬機(jī)間進(jìn)行數(shù)據(jù)傳輸。但是,由于raw格式實(shí)現(xiàn)簡(jiǎn)單,也存在很多缺點(diǎn):不支持壓縮、快照、加密和CoW(copy-on-write,寫時(shí)拷貝)等。第4章KVM核心模塊配置2)

cowcow格式是QEMU的copy-on-write鏡像文件格式,和raw一樣簡(jiǎn)單,也是創(chuàng)建時(shí)分配所有空間。但cow有一個(gè)bitmap表記錄當(dāng)前哪些扇區(qū)被使用,所以cow可以使用增量鏡像,也就是說(shuō)可以對(duì)其做外部快照。目前由于歷史遺留原因不支持窗口模式,因而使用較少。3)

qcowqcow是一種比較老的QEMU鏡像格式,它在cow的基礎(chǔ)上增加了動(dòng)態(tài)增加文件大小的功能,并且支持加密和壓縮。但是,一方面其優(yōu)化和功能不及qcow2,另一方面,讀寫性能又沒(méi)有cow和raw好,因而目前qcow使用較少。第4章KVM核心模塊配置4)

qcow2qcow2是qcow的一種改進(jìn),是QEMU0.8.3版本引入的鏡像文件格式。它是QEMU目前推薦的鏡像格式,也是一種集各種技術(shù)為一體的超級(jí)鏡像格式。qcow2有以下幾大優(yōu)點(diǎn):①占用更小的空間,支持寫時(shí)拷貝,鏡像文件只反映底層磁盤的變化;②支持快照,鏡像文件能夠包含多個(gè)快照的歷史;③支持基于zlib的壓縮方式;④支持AES加密以提高鏡像文件的安全性;⑤訪問(wèn)性能很高,接近了raw裸格式的性能。第4章KVM核心模塊配置5)

vdivdi(VirtualDiskImage)是兼容Oracle的VirtualBox1.1的鏡像文件格式。6)

vmdkvmdk(VirtualMachineDiskFormat)是VMware實(shí)現(xiàn)的虛擬機(jī)鏡像格式,兼容VMWare4版本以上。7)

qedqed(QEMUenhanceddisk)是從QEMU0.14版開(kāi)始加入的增強(qiáng)磁盤文件格式,為了避免qcow2格式的一些缺點(diǎn),也為了提高性能,不過(guò)目前還不夠成熟。第4章KVM核心模塊配置4.4.4qemu-img命令qemu-img是QEMU的磁盤管理工具,本節(jié)將介紹qemu-img的基本命令及語(yǔ)法:1)

check[-ffmt]filenamecheck命令用來(lái)對(duì)磁盤鏡像文件進(jìn)行一致性檢查,查找鏡像文件中的錯(cuò)誤。參數(shù)?-ffmt是指定文件的格式,如果不指定格式,qemu-img會(huì)自動(dòng)檢測(cè),filename是磁盤鏡像文件的名稱(包括路徑)。目前僅支持對(duì)“qcow2”、“qed”、“vdi”格式文件的檢查。第4章KVM核心模塊配置2)create[-ffmt][-ooptions]filename[size]

create命令用來(lái)創(chuàng)建一個(gè)格式為fmt,大小為size,文件名為filename的鏡像文件。根據(jù)文件格式的不同,還可以添加多個(gè)選項(xiàng)來(lái)對(duì)該文件進(jìn)行功能設(shè)置。如果想要查詢某種格式文件支持哪些選項(xiàng),可以使用“-o?”,在“-o”選項(xiàng)中各個(gè)選項(xiàng)用逗號(hào)來(lái)分隔。第4章KVM核心模塊配置4)

convert[-c][-p][-ffmt][-tcache][-Ooutput_fmt][-ooptions][-ssnapshot_name][-Ssparse_size]filename[filename2[...]]output_filename通過(guò)“convert”命令,可以實(shí)現(xiàn)不同格式的鏡像文件之間的轉(zhuǎn)換。可以將格式為fmt名為filename的鏡像文件根據(jù)options選項(xiàng)轉(zhuǎn)換成格式為output_fmt名為output_filename的鏡像文件。其中,“-c”參數(shù)是對(duì)輸出的鏡像文件進(jìn)行壓縮,只有qcow和qcow2格式的鏡像文件才支持壓縮。第4章KVM核心模塊配置5)

info[-ffmt]filenameinfo命令主要用來(lái)展示filename鏡像文件的信息。如果文件使用稀疏文件的存儲(chǔ)方式,則會(huì)顯示出它本來(lái)分配的大小以及實(shí)際已占用磁盤空間的大小。如果磁盤映像中存放有客戶機(jī)快照,則快照的信息也會(huì)被顯示出來(lái)。

第4章KVM核心模塊配置6)

snapshot[-l|-asnapshot|-csnapshot|-dsnapshot]filenamesnapshot命令主要用來(lái)操作鏡像文件中的快照,快照這個(gè)功能只支持qcow2格式,raw不支持。快照的主要參數(shù)說(shuō)明如下所示?!?l”:查詢并列出鏡像文件中的所有快照;“-asnapshot”:讓鏡像文件使用某個(gè)快照;“-csnapshot”:創(chuàng)建一個(gè)快照;“-d”:刪除一個(gè)快照。注意,創(chuàng)建磁盤快照時(shí)客戶機(jī)需要處于關(guān)閉的狀態(tài)。第4章KVM核心模塊配置7)

rebase[-ffmt][-tcache][-p][-u]-bbacking_file[-Fbacking_fmt]filenamerebase命令主要用來(lái)改變鏡像文件的后端鏡像文件,只有qcow2和qed格式才支持rebase命令。使用“-bbacking_file”中指定的文件作為后端鏡像,后端鏡像也被轉(zhuǎn)化為“-Fbacking_fmt”中指定的后端鏡像格式。它可以工作于兩種模式之下,一種是安全模式,也是默認(rèn)的模式。此模式下qemu-img會(huì)去比較原來(lái)的后端鏡像與現(xiàn)在的后端鏡像的不同進(jìn)行合理的處理;另一種是非安全模式,可以通過(guò)“-u”參數(shù)來(lái)指定。第4章KVM核心模塊配置8)

resizefilename[+|-]sizeresize命令主要用來(lái)改變鏡像文件的大小。“+”用于增加鏡像文件的大小,“-”用于減少鏡像文件的大小,而size也支持K、M、G、T等單位。注意,在縮小鏡像文件的大小之前,需要確保客戶機(jī)中的文件系統(tǒng)有空余空間,否則會(huì)丟失數(shù)據(jù)。在增加了鏡像文件大小后,還需啟動(dòng)客戶機(jī)到里面去應(yīng)用分區(qū)工具進(jìn)行相應(yīng)的操作才能真正讓客戶機(jī)使用到增加后的鏡像空間。不過(guò)使用resize命令之前最好做好備份,否則失敗的話,可能會(huì)導(dǎo)致鏡像文件無(wú)法正常使用而造成數(shù)據(jù)丟失。第4章KVM核心模塊配置4.4.5Ubuntu客戶機(jī)的鏡像制作過(guò)程本小節(jié)以Ubuntu12.04為例,詳細(xì)講述Ubuntu客戶機(jī)鏡像的制作過(guò)程,過(guò)程如下:(1)下載要制作為Ubuntu鏡像的ISO文件;(2)準(zhǔn)備好制作Ubuntu鏡像的服務(wù)器系統(tǒng)(例如,Ubuntu系統(tǒng));(3)創(chuàng)建一個(gè)10GB大小的鏡像“硬盤”(raw格式);#root@kvm-host:~#qemu-imgcreate-frawubuntu12.04.img10GFormatting'ubuntu12.04.img',fmt=rawsize=10737418240第4章KVM核心模塊配置(4)上傳這個(gè)ISO文件到服務(wù)器系統(tǒng)上,結(jié)合剛創(chuàng)建的鏡像“硬盤”引導(dǎo)啟動(dòng)Ubuntu系統(tǒng)安裝,具體步驟如下:#root@kvm-host:~#qemu-system-x86_64-m1024ubuntu12.04-desktop-amd64.iso-drivefile=ubuntu12.04.img-bootd進(jìn)入第一個(gè)安裝界面后,由于需要安裝Ubuntu,因此選擇InstallUbuntu。第4章KVM核心模塊配置圖4-2Ubuntu安裝界面1第4章KVM核心模塊配置圖4-3Ubuntu安裝界面2第4章KVM核心模塊配置圖4-4Ubuntu安裝界面3第4章KVM核心模塊配置圖4-5Ubuntu安裝界面4第4章KVM核心模塊配置4.4.6Windows客戶機(jī)的鏡像制作過(guò)程本小節(jié)以Window7為例,詳細(xì)講述Window客戶機(jī)鏡像的制作過(guò)程,過(guò)程如下:(1)下載要制作為Windows7鏡像的ISO文件。(2)創(chuàng)建一個(gè)10GB大小的鏡像“硬盤”(raw格式)。(3)下載Virtio驅(qū)動(dòng)。由于Windows默認(rèn)不支持Virtio驅(qū)動(dòng),而管理虛擬機(jī)是需要Virtio驅(qū)動(dòng)的,因此需要下載兩個(gè)Virtio驅(qū)動(dòng),即:virtio-win-0.1-30.iso和virtio-win-1.1.16.vfd。其中,iso文件中安裝了網(wǎng)卡驅(qū)動(dòng),vfd里面安裝了硬盤驅(qū)動(dòng)。第4章KVM核心模塊配置(4)使用剛下載的Windows7鏡像文件和剛創(chuàng)建的鏡像“硬盤”引導(dǎo)系統(tǒng)的安裝,映射驅(qū)動(dòng)vfd到軟盤A,開(kāi)啟BIOS啟動(dòng)選擇菜單,啟動(dòng)時(shí)按F12鍵,進(jìn)入光盤安裝界面,具體命令如下:#root@kvm-host:~#qemu-system-x86_64-m1024-drivefile=win7.img,cache=writeback,if=virtio,boot=on-fdavirtio-win-1.1.16.vfd-cdromwin7-x86.iso-netnic-netuser-bootorder=d,menu=on-usbdevicetablet-nographic-vnc:1第4章KVM核心模塊配置圖4-6Windows7安裝界面1第4章KVM核心模塊配置圖4-7Windows7安裝界面2第4章KVM核心模塊配置圖4-8Windows7安裝界面3第4章KVM核心模塊配置圖4-9Windows7安裝界面4第4章KVM核心模塊配置圖4-10Windows7安裝界面5第4章KVM核心模塊配置圖4-11Windows7安裝界面6第4章KVM核心模塊配置圖4-12Windows7安裝界面7第4章KVM核心模塊配置4.5網(wǎng)絡(luò)配置

在互聯(lián)網(wǎng)技術(shù)飛速發(fā)展的今天,網(wǎng)絡(luò)在人類生活的各個(gè)領(lǐng)域有著越來(lái)越重要的影響。而在虛擬化技術(shù)中,QEMU對(duì)客戶機(jī)也提供了多種類型的網(wǎng)絡(luò)支持。在QEMU中,主要給客戶機(jī)提供了以下4種不同模式的網(wǎng)絡(luò)配置方案:

(1)基于網(wǎng)橋(Bridge)的虛擬網(wǎng)卡模式。(2)基于NAT(NetworkAddresssTranslation)的虛擬網(wǎng)絡(luò)模式。(3)

QEMU內(nèi)置的用戶模式網(wǎng)絡(luò)。(4)直接分配網(wǎng)絡(luò)設(shè)備模式(例如,VT-d)。第4章KVM核心模塊配置QEMU命令行中基本的“-net”參數(shù)如下:-netnic[,vlan=n][,macaddr=mac][,model=type][,name=name][,addr=addr][,vectors=v]主要參數(shù)說(shuō)明如下:-netnic:是必需的參數(shù),表明為客戶機(jī)創(chuàng)建客戶機(jī)網(wǎng)卡。vlan=n:表示將建立一個(gè)新的網(wǎng)卡。macaddr=mac:設(shè)置網(wǎng)卡的MAC地址。model=type:設(shè)置模擬的網(wǎng)卡的類型,默認(rèn)為rtl8139。name=name:設(shè)置網(wǎng)卡的名字,該名稱僅在QEMUmonitor中可能用到,一般由系統(tǒng)自動(dòng)分配。第4章KVM核心模塊配置4.5.1網(wǎng)橋模式

在QEMU中,網(wǎng)橋模式是一種比較常見(jiàn)的網(wǎng)絡(luò)連接模式。在這種模式下,客戶機(jī)和宿主機(jī)共享一個(gè)物理網(wǎng)絡(luò),客戶機(jī)的IP是獨(dú)立的,它和宿主機(jī)是在同一個(gè)網(wǎng)絡(luò)里面。客戶機(jī)可以訪問(wèn)外部網(wǎng)絡(luò),外部網(wǎng)絡(luò)也可以訪問(wèn)這臺(tái)客戶機(jī)。在QEMU命令行中,關(guān)于網(wǎng)橋模式的網(wǎng)絡(luò)參數(shù)如下:net??tap[,vlan=n][,name=str][,fd=h][,ifname=name][,script=file][,downscript=dfile][,helper=helper]?[,sndbuf=nbytes][,vnet_hdr=on|off][,vhost=on|off][,vhostfd=h][,vhostforce=on|off]第4章KVM核心模塊配置主要參數(shù)說(shuō)明如下:-nettap:是必需的參數(shù),表示創(chuàng)建一個(gè)tap設(shè)備。vlan=n:設(shè)置該設(shè)備VLAN編號(hào),默認(rèn)值為0。name=str:設(shè)置網(wǎng)卡的名字。在QEMUmonitor里面用到,一般由系統(tǒng)自動(dòng)分配。fd=h:連接到現(xiàn)在已經(jīng)打開(kāi)著的TAP接口的文件描述符。ifname=name:表示tap設(shè)備的接口名字。script=file:表示host在啟動(dòng)guest時(shí)自動(dòng)執(zhí)行的腳本,默認(rèn)為/etc/qemu-ifup。第4章KVM核心模塊配置downscript=dfile:表示host在關(guān)閉guest時(shí)自動(dòng)執(zhí)行的腳本,默認(rèn)值為/etc/qemu-ifdown;如果不需要執(zhí)行,則設(shè)置為“downscript=no”。helper=helper:設(shè)置啟動(dòng)客戶機(jī)時(shí)在宿主機(jī)中運(yùn)行的輔助程序,包括去建立一個(gè)TAP虛擬設(shè)備,它的默認(rèn)值為/usr/local/libexec/qemu-bridge-helper,一般不用自定義,采用默認(rèn)值即可。sndbuf=nbytes:限制TAP設(shè)備的發(fā)送緩沖區(qū)大小為n字節(jié),當(dāng)需要流量進(jìn)行流量控制時(shí)可以設(shè)置該選項(xiàng)。其默認(rèn)值為“sndbuf=0”,即不限制發(fā)送緩沖區(qū)的大小。第4章KVM核心模塊配置如何在宿主機(jī)上通過(guò)配置實(shí)現(xiàn)網(wǎng)橋方式:要采用網(wǎng)橋模式的網(wǎng)絡(luò)配置。在宿主機(jī)中,要安裝兩個(gè)配置網(wǎng)絡(luò)所需的軟件包,uml-utilities和bridge-utils。使用“l(fā)smod”命令查看KVM相關(guān)模塊和tun的模塊是否加載。檢查/dev/net/tun,查看當(dāng)前用戶是否用于可讀寫權(quán)限。建立一個(gè)bridge,并將其綁定在一個(gè)可以正常工作的網(wǎng)絡(luò)接口上,同時(shí)讓bridge成為連接本機(jī)和外部網(wǎng)絡(luò)的接口。第4章KVM核心模塊配置(5)準(zhǔn)備啟動(dòng)腳本qemu_ifup,其功能是在啟動(dòng)時(shí)創(chuàng)建和打開(kāi)指定的TAP接口,并將該接口添加到虛擬網(wǎng)橋中。(6)準(zhǔn)備結(jié)束腳本qemu_ifdown,主要功能是退出時(shí)將該接口從虛擬網(wǎng)橋中移除,然后關(guān)閉該接口。一般不用做這個(gè),QEMU應(yīng)會(huì)自動(dòng)做。(7)用“qemu-kvm”命令啟動(dòng)bridge模式的網(wǎng)絡(luò)。第4章KVM核心模塊配置4.5.2NAT模式

使用NAT模式,就是讓客戶機(jī)借助NAT功能,通過(guò)宿主機(jī)所在的網(wǎng)絡(luò)來(lái)訪問(wèn)互聯(lián)網(wǎng)。由于NAT模式下的客戶機(jī)TCP/IP配置信息是由DHCP服務(wù)器提供的,無(wú)法進(jìn)行手工修改,因此客戶機(jī)也就無(wú)法和本局域網(wǎng)中的其他真實(shí)主機(jī)進(jìn)行通訊。使用NAT模式進(jìn)行網(wǎng)絡(luò)連接,可支持宿主機(jī)和客戶機(jī)之間的互訪,也支持客戶機(jī)訪問(wèn)網(wǎng)絡(luò)。與網(wǎng)橋方式不同的是,當(dāng)外界訪問(wèn)客戶機(jī)時(shí)NAT就表現(xiàn)出局限性,需要在擁有IP的宿主機(jī)上實(shí)現(xiàn)端口映射,讓宿主機(jī)IP的一個(gè)端口被重新映射到NAT內(nèi)網(wǎng)的客戶機(jī)相應(yīng)端口上。

第4章KVM核心模塊配置如何在宿主機(jī)上通過(guò)配置實(shí)現(xiàn)NAT方式:檢查宿主機(jī),將網(wǎng)絡(luò)配置選項(xiàng)中與NAT相關(guān)的選項(xiàng)配置好。在宿主機(jī)中,可以通過(guò)“apt-getinstall”命令安裝必要的軟件包:bridge-utils,iptables和dnsmasq。其中,bridge-utils是一個(gè)橋接工具,里面包含管理bridge的工具brctl。準(zhǔn)備一個(gè)為客戶機(jī)建立NAT所使用的qemu-ifup-NAT腳本。這個(gè)腳本的主要功能是:建立bridge,設(shè)置bridge的內(nèi)網(wǎng)IP,并且將客戶機(jī)的網(wǎng)絡(luò)接口與之綁定。第4章KVM核心模塊配置(4)準(zhǔn)備一個(gè)關(guān)閉客戶機(jī)時(shí)調(diào)用的網(wǎng)絡(luò)qemu-ifdow-NAT腳本,主要功能是:關(guān)閉網(wǎng)絡(luò),解除bridge綁定,刪除bridge和iptables的NAT規(guī)則。(5)啟動(dòng)客戶機(jī)。(6)在客戶機(jī)中,通過(guò)DHCP動(dòng)態(tài)獲得IP。默認(rèn)網(wǎng)關(guān)是宿主機(jī)中bridge的IP(192.168.122.1)。此刻,客戶機(jī)已經(jīng)可以連接到外部網(wǎng)絡(luò),但是外部網(wǎng)絡(luò)(宿主機(jī)除外)無(wú)法直接連接到客戶機(jī)中。(7)為了讓外部網(wǎng)絡(luò)也能訪問(wèn)客戶機(jī),可以在宿主機(jī)中添加iptables規(guī)則來(lái)進(jìn)行端口映射。第4章KVM核心模塊配置4.6圖形顯示配置

在客戶機(jī)中,圖形顯示是非常重要的功能。本節(jié)主要介紹KVM中圖形界面顯示的相關(guān)配置。顯示選項(xiàng)用于定義客戶機(jī)啟動(dòng)后的顯示接口的相關(guān)類型及屬性等,常見(jiàn)的選項(xiàng)如下。-nographic:默認(rèn)情況下,QEMU使用SDL來(lái)顯示VGA輸出,而此選項(xiàng)用于禁止圖形接口。此時(shí),QEMU類似一個(gè)簡(jiǎn)單的命令行程序,其仿真串口設(shè)備將被重定向到控制臺(tái)。第4章KVM核心模塊配置4.6.1SDL使用SDL是SimpleDirectMediaLayer(簡(jiǎn)易直控媒體層)的縮寫,是為多媒體編程而設(shè)計(jì)的一個(gè)跨平臺(tái)的多媒體庫(kù)。它通過(guò)OpenGL和2D視頻幀緩沖,提供了針對(duì)音頻、視頻、鍵盤、鼠標(biāo)、控制桿及3D硬件的低級(jí)別的訪問(wèn)接口,具有優(yōu)越的跨平臺(tái)特性,支持以下操作系統(tǒng):Linux、Windows、WindowsCE、BeOS、MacOS、MacOSX、FreeBSD、NetBSD、OpenBSD、BSD/OS、Solaris、IRIX以及QNX。同時(shí)代碼中包含了針對(duì)AmigaOS、Dreamcast、Atari、AIX、OSF/Tru64、RISCOS、SymbianOS和OS/2的支持。第4章KVM核心模塊配置

在QEMU模擬器中,圖形顯示默認(rèn)的就是使用SDL。要使用它,就得確保在編譯時(shí),安裝了SDL軟件包,配置對(duì)SDL的支持,然后才能編譯SDL功能到QEMU的命令行工具,從而啟動(dòng)客戶機(jī)時(shí)使用SDL的功能。如果未安裝SDL軟件包,則在運(yùn)行QEMU命令行啟動(dòng)客戶機(jī)時(shí)會(huì)有產(chǎn)生“無(wú)法加載libSDL”的錯(cuò)誤。第4章KVM核心模塊配置4.6.2VNC的使用

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論