爲何Hyper-v不可以從SCSI磁盤啓動和關閉?

在hyper-v的虛擬機上咱們有兩種磁盤控制器選擇,你能夠再一個虛擬機上加入IDE磁盤或者SCSI磁盤.下面列出了它們之間不一樣的地方.
IDE:工做在操做系統上,不須要集成服務安裝,能夠引導虛擬機.
SCSI:支持熱插拔的虛擬磁盤,這種類型的磁盤控制器和你平時在物理機上使用的是同樣的,沒有什麼差異.SCSI上面得VHD文
件也能夠儲存在IDE磁盤上,IDE上的VHD文件也可以儲存在SCSI磁盤上.
爲何hyper-v上的虛擬機不能從SCSI磁盤上啓動?
這裏,咱們所稱呼爲」SCSI」控制器其實有些不恰當.當咱們致力於虛擬服務器的時候,咱們聽到一些聲音,讓虛擬服務器工做在SCSI磁盤上.因此,虛擬服務器須要虛擬SCSI磁盤.爲此,咱們在虛擬服務器上添加了一個仿真的SCSI控制卡.不幸的是,SCSI控制器是一種很是先進的硬件.最終的結果是,仿效的設備比簡單的IDE控制器要慢.爲了SCSI控制器在虛擬機有更好的性能,咱們擴展了仿真控制器並重寫了自定義的驅動,來支持操做系統.在hyper-v中,咱們徹底放棄了仿真控制卡,相反,咱們使用了傳統的仿真IDE 控制器,和一個新的虛擬控制器,基於VMBUS,存儲控制氣.並無任何的仿真痕跡.當你選擇在虛擬機裏添加SCSI控制器時,你可使用這種虛擬存儲控制器.隨之而來的問題是.你的虛擬機的BIOS並不知道VMBUS,它只能認識從仿真驅動設備啓動.這就是爲何你能夠從一個IDE控制器和一箇舊的網絡適配器啓動,而不是一個SCSI控制器或網卡啓動.
爲何你不用關心不能從SCSI啓動的hyper-v?  
咱們來討論下用戶在什麼狀況下須要從SCSI磁盤啓動虛擬機.有以下兩個理由~!
第一個理由是SCSI比IDE能夠支持更大的VHD.爲了解決這一點,咱們是hyper-v的IDE控制器使用48-bit LBA.這樣,咱們能夠附加最大到2TB的VHD.
第二個理由是性能,可是, 這也不是什麼問題.
首先,我從以下的圖中去說明.下圖中的父分區圖並非100%的Windows Server 2008 R2的,可是,子分區圖,Windows Server 2008和Windows Server 2008 R2是同樣的.這是我想說的一點.
 
首先,你要注意子分區圖上的「Virtual Storage Minport (VSC)」.本質上是加載到虛擬機的SCSI控制器上的一個驅動程序.它鏈接到 VMBUS上,提供一個很是高的性能,並無像仿真方式那樣所涉及任何磁盤的I/O.下一個要注意的是圖上的「Fast Path Filter」這個過濾器驅動可以得到虛擬機磁盤上的全部對象.無論是IDE或SCSI.它可以經過VMBUS進行數據交換.除了一些低等級的操做.(如分區) 這就意味着,一旦安裝了集成服務,無論你是否使用IDE磁盤或SCSI磁盤.它們都使用相同的代碼路徑. 不過IDE磁盤仍然有兩個限制. 一個IDE控制器只能掛載兩個IDE磁盤. IDE磁盤的I/O block只有512K或者更少,而SCSI控制器能夠達到8MB. 但我尚未看到一個測試若是上述限制,致使IDE和SCSI之間明顯的性能差異.
相關文章
相關標籤/搜索