天天看點

如何調整磁盤分區以提高虛拟機性能?

      既然VMware允許你從模闆建立一台新的虛拟機(VM),是以在一台虛拟機上花些時間調整它的性能,将它作為虛拟機的模闆,這就可以明顯地提升整個系統的性能。途徑之一是通過調整磁盤分區獲得性能,這會提高磁盤讀的速度。 在這篇文章中,我們會介紹怎樣通過調整磁盤分區來提高Windows類型虛拟機的整體性能,并将此VM制成模版。然後,它可以用來建立其他經過适當調整以及性能增強VM(虛拟機)。如果在閱讀這篇文章後,你還想更詳細了解一些細節, 請參閱VMware的白皮書——調整VMware虛拟機檔案系統(VMFS)分區推薦文檔。(注:本文僅适用于Vista之前的Windows版本 ,因為Vista和Windows Server 2008都使用預設的1024KB分區偏移量。 )

為什麼要調整磁盤分區? 一個被調整過的磁盤分區可以使系統能夠更有效地讀取資料。這也使系統變得更快。但是,要了解為什麼機器的磁盤調整是很重要的,我們将不得不了解虛拟機的磁盤子系統的結構。虛拟機磁盤系統由三個層次組成。最上面的層是虛拟機磁盤檔案( VMDK ) ,它由叢集組成,因為它被新技術檔案系統( NTFS )格式化 。 第二層是虛拟機檔案系統( VMFS ),并且它是由塊組成的。 最底層是邏輯單元号( LUN ) ,是由條或塊組成(在這種情況下,LUN是一個磁盤備援陣列(RAID) 5 ,它會結合3個或更多的磁盤,以保護資料不會從單塊磁盤丢失,建立一個大容量和具有備援性的磁盤) 。 LUN是在實體磁盤裝置或卷和應用之間的虛拟層。 在一個NTFS裡面 ,最小的資料單元是一個配置設定單元,或一個叢集。對于資料磁盤來說,你可以更改叢集的大小。但是,對系統卷來說,預設的叢集大小必須是4 KB,以便系統正常啟動。此外, x86系統的主啟動記錄( MBR )中有63個扇區來存放作業系統上磁盤分區表,和ESX伺服器是沒有什麼不同的。是以,問題是什麼呢?看看下面的圖表顯示的一個調整過分區(aligned partition)和一個未調整分區(unaligned partition)。

如何調整磁盤分區以提高虛拟機性能?

讓我們先從未調整分區的VMFS層開始。正如你所看到的,試圖在VMFS分區上讀取資料塊,可能會導緻讀取LUN層的兩個條,因為塊跨越了條邊界。這将導緻讀取時間将慢于單塊磁盤的讀取時間。幸運的是,你可以通過VMware基礎設施的用戶端(VI Client)自動建立調整VMFS分區。 但還有另一個調整關注的問題。正如你從圖上所看到的,在NTFS層企圖要讀取的叢集,可能會導緻在VMFS層讀取2個塊,進而導緻在LUN層讀三個條。

如果你的磁盤是被調整了的,那你怎麼才能知道呢? 在Windows分區層,你怎麼知道一個磁盤沒有得到調整?記住,MBR的表——即x86系統使用的是第一個63個扇區。通常每個扇區有512位元組。如果你做一下數學運算,63 x 512 = 32256 。要驗證這一點,以管理者身份登入到一台機器(實體機或者虛拟機),它的系統卷沒有對齊。轉到開始菜單,然後點選運作,鍵入“ Msinfo32.exe”指令 ,然後按ENTER 。浏覽到元件,然後儲存,然後磁盤。請注意,該分區起始偏移為磁盤# 0 ,分區# 0 (系統卷)是32,256位元組。

如何調整磁盤分區以提高虛拟機性能?

由于該系統體積是32256位元組,分區還沒有得到适當的調整。請記住, Windows系統格式化卷,以4 KB或4096位元組簇的大小。這意味着你想一個調整分區以4096位元組為邊界。用4096除32256。你得到7.875 ,這不是一個整數。 分區不符合以4096位元組為邊界,除非偏移量可以被4096整除。

調整磁盤分區

為了調整該分區,你将使用一個64 KB的偏移量,即65,536個位元組。用65536除以4096 。你應該得到的答案是16 。這表明,分區被調整到以4096位元組為邊界。 調整分區會破壞該分區上的資料,是以在作業系統被安裝後,你不能調整它。這會出現兩種選擇:你可以在另一台虛拟機上調整一個空的虛拟磁盤,或者,你也可以使用啟動磁盤,在安裝作業系統完畢之前調整該分區。 因為第一個虛拟機分區将不會被調整,是以如果你的目标是調整将來所有的VM系統分區,那麼第一種選擇是不理想的。附加的虛拟磁盤在被調整後,你将需要删除虛拟機。在你調整了這個磁盤之後,如果你删除了虛拟機,那麼你又有可能不想浪費時間來安裝作業系統。 第二個選項是針對在剛剛安裝好的ESX環境中,即目前沒有安裝任何虛拟機。在這種情況下,你使用的WinPE 2.0啟動磁盤來啟動你的第一個虛拟機,調整它的磁盤,安裝和配置作業系統,并将此虛拟機轉換為模闆。讓我們建立一個基本的WinPE 2.0啟動磁盤。

建立啟動盤的WinPE 2.0

你将需要以下内容:

  • Windows自動安裝工具包(Windows AIK)的副本 ;
  • 一台“技術員電腦” ( 裝有Windows Server 2003 SP1, Windows XP SP2中,或Windows Vista作業系統)
  • 一台裝有DVD刻錄機的電腦 (應該是技術員電腦)

一旦你有了一台可以安裝WAIK的技術員的電腦,下載下傳Windows AIK并把它安裝在技術員的電腦上。要安裝Windows AIK,你需要從微軟網站下載下傳它的鏡像檔案,将其刻錄到DVD盤并安裝。安裝了WindowsAIK後,轉到開始,程式,Windows AIK,然後是Windows PE工具指令提示符。注意:如果你使用Windows Vista ,你可以右鍵單擊Windows PE工具指令提示符選擇和進入計算機管理者模式。 在指令提示符打開後,你需要運作一些指令,将為你的WinPE 2.0磁盤建立必要的目錄結構。在指令提示符下運作下面的指令: copype <arch> <destination>

<arch>參數是指你的處理器架構(x86 , amd64或ia64 ),<destination>參數是一個到本地目錄的路徑。下面是一個例子,運作此指令: copype x86 c:\winpe-2_0 <enter> 你會發現這将建立下列目錄結構: \WinPE - 2_0 -包含引導加載( ETFSBoot.com )和一份已含有需要建立一個的WinPE 2.0磁盤所需要的基本檔案的Windows鏡像( winpe.wim )。

\WinPE - 2_0 \ISO-包含有創造WinPE 2.0啟動盤的ISO磁盤映像所需要的必要檔案。

\WinPE - 2_0 \mount-一個空檔案夾,但你需要修改winpe.wim鏡像檔案時會使用到。在此示例中,你将不會使用到此檔案夾。 如果你建立的目錄結構和我一樣,你隻需要将winpe.wim檔案複制到“c:\winpe-2_0\ISO\sources”目錄裡,并将它命名為boot.wim 。你可以使用下面的指令來完成:

copy c:\winpe\winpe.wim

c:\winpe-2_0\iso\sources\boot.wim /y 按下Enter鍵。現在,所有您需要做的就是建立ISO檔案,您将用它來啟動虛拟機。 要做到這一點,在Windows PE工具指令提示符下運作下面的指令: oscdimg -n -h -bc:\winpe-2_0\etfsboot.com c:\winpe-2_0\iso c:\winpe-2_0\winpe.iso 按下Enter鍵。這将轉換boot.wim檔案到winpe.iso檔案,此檔案可以引導一台機器到WinPE 2.0環境下 。 現在你所需要做的是複制winpe.iso檔案到一個地方( NFS, VMFS ,等等),使你的ESX主機可以加載此ISO檔案到虛拟機的虛拟光驅。一旦做到這一點,首先要建立一個帶有虛拟磁盤的虛拟機,此虛拟磁盤用作系統卷(磁盤大小要仔細選擇,因為之後你将不能改變它和維護此分區) 。将winpe.iso檔案挂載到虛拟機上,以便它能夠被引導到WinPE 2.0環境。啟動虛拟機并引導到WinPE 2.0環境下。

用Diskpart.exe建立64KB的調整分區 虛拟機将啟動到WinPE 2.0環境下的指令提示符。一旦你在指令提示符下,使用Diskpart.exe建立一個被調整過的分區。要做到這一點,鍵入以下指令: diskpart

select disk 0

create partition primary align=64 通過輸入' exit ' 你現在可以退出diskpar。關閉虛拟機。解除安裝winpe.iso檔案,取而代之的是一個ISO格式的作業系統( Windows Server 2003, Windows XP,等等) 。 像平常一樣安裝作業系統。當你到了可以建立新的分區這一步,選擇使用現有的分區,而不是建立一個新的分區。格式化分區為NTFS格式 。 當你安裝完作業系統和完成虛拟機配置,使用vCenter轉換此虛拟機成為一個模闆,并從此模闆來部署每一個新的虛拟機。另外,如果沒有vCenter,當你需要建立一個新的虛拟機時,你可以給新的虛拟機複制此虛拟磁盤。 現在,每個虛拟機包含沒有額外工作資料,而且被調整過的系統卷。當你開始部署虛拟機,做好前期工作,以確定虛拟機的系統卷有最佳性能,這是非常值得努力的。