windowsHyper-V設計主要是針對Windows虛擬機。
基本介紹
- 中文名:windows10 自帶虛擬機
- 外文名:windowsHyper-V
- 開發公司:微軟
- 平台:Windows系列
在Windows 8桌面上運行windowsHyper-V
每家組織都有不同的windowsHyper-V需求,在一些情況下,在桌面上使用windowsHyper-V是合理的。例如,一些組織可能會要求用戶從windowsHyper-V虛擬機(VM)中瀏覽網頁,因為網路上滿是病毒網站。
如果不小心訪問到惡意網站,可能會導致安裝惡意軟體,損壞作業系統,竊取數據或帶來各種其他的傷害。在VM上運行Internet Explorer瀏覽器可以安全地將其遠離主作業系統。這可以防止敏感數據通過瀏覽器泄露。
還有其他組織也允許開發人員通過桌面使用VM。這樣可以獲得隔離的開發或測試環境,遠離主桌面作業系統。
也有組織使用windowsHyper-V運行備用作業系統。例如組織的任務關鍵型應用程式只運行在Windows XP上。這時用戶只需要在VM中的Windows XP上運行該套用,而不需要再所有台式機上都運行Windows XP。
windowsHyper-V帶來更多功能
在過去一段時間裡,微軟在windowsHyper-V角色提供的功能上取得了很大的改變,比如,動態記憶體、虛擬機實時備份、雲備份、線上調整VHDX大小以及第2代虛擬機,但是,這些一般在windowsHyper-V生產環境中會運行一些不同的作業系統,包括Linux發行版。在最初的windowsHyper-V版本中,通過添加安裝一個Linux集成服務(LIS)的組件,windowsHyper-V可以支持運行Linux的虛擬機一些基本的功能。最近,微軟正和供應商合作添加新功能,並在新的Linux版本中移除需要安裝的Linux集成服務。
windowsHyper-V動態記憶體
這是Linux虛擬機期待已久的功能。從Windows Server 2012 R2開始,現在運行在Windows Server 2012 R2 windowsHyper-V上的Linux虛擬機已經完全支持記憶體的熱添加和刪除。雖然你可以讓在Windows Server 2012 windowsHyper-V主機上運行的Linux虛擬機使用動態記憶體,但是,官方的說法是不支持的。每當windowsHyper-V需要為Linux虛擬機分配記憶體時,windowsHyper-V會用到動態記憶體功能中的熱添加功能,實際上是通過windowsHyper-V主機來執行的。如果windowsHyper-V想從Linux虛擬機中收回一些記憶體,windowsHyper-V會使用LIS的膨脹驅動程式。更為值得注意的是windowsHyper-V動態記憶體功能只支持64位的Linux發行版。某些Linux的發行版可能需要你手動啟用此功能的支持。例如,CentOS 和Red Hat Linux發行版需要你在/etc/udev/rules.d路徑下創建一個"udev"規則來啟用動態記憶體熱添加功能。
windowsHyper-V虛擬機實時備份
在早期的windowsHyper-V版本中,你必須暫停Liunx虛擬機才能創建備份。如果你的Linux虛擬機運行在Windows Server 2012 R2 的windowsHyper-V主機上,這些windowsHyper-V虛擬機現在酒可以在不停機的情況下,使用兼容的windowsHyper-V備份工具備份,比如Windows Server Backup。更為重要的是要知道,Windows虛擬機是利用Volume Shadow Copy Service,或VSS,來實現實時備份的,windowsHyper-V支持兩種備份類型:檔案系統備份和應用程式一致備份。對於Linux虛擬機,微軟推出了檔案系統快照,只能執行基於檔案系統的備份。另外有報導稱,如果Linux虛擬機有附加的iSCSI設備或直通設備,windowsHyper-V實時備份可能會失敗。
windowsHyper-V支持第2代虛擬機
之前Linux發行版windowsHyper-V是不支持2代虛擬機安裝的。從Windows Server 2012 R2開始,新的Linux發行版windowsHyper-V,比如CentOS 和 Red Hat Enterprise 7.0,以及SUSE SLES 12 和Ubuntu 14.10,是可以支持2代虛擬機安裝的。此外值得注意的是,2代虛擬機默認已開啟安全啟動。由於Linux虛擬機不支持安全啟動,你可能需要從Linux虛擬機的屬性頁禁用它或者通過windowsHyper-V主機上PowerShell命令禁用它。
windowsHyper-V線上備份
線上備份是對運行在Windows Server 2012 R2 windowsHyper-V主機上的Linux虛擬機支持的另一個增強功能。你現在可以使用Windows Azure Online Backup程式和System Center Data Protection Manager來線上備份Linux虛擬機到Microsoft Azure上。
windowsHyper-V線上調整VHDX大小
你現在可以在不停機的情況下,調整附加到Linux虛擬機windowsHyper-V上的固定VHDX的大小。這個功能是許多擁有Linux虛擬機windowsHyper-V的組織一直在等待的功能,因為線上調整VHDX大小的功能消除了需要經過複雜變更的過程,並在windowsHyper-V不停機的情況下,提高關鍵Linux虛擬機windowsHyper-V的存儲工作負載。值得一提的是,並不是所有Linux發行版都支持線上調整VHDX大小的功能。
windowsHyper-V從主機到虛擬機複製檔案
Windows Server 2012 R2 的windowsHyper-V引進了一個Guest Services的集成服務組件。一旦啟用Guest Services,windowsHyper-V將允許你將檔案複製到Linux虛擬機。Linux集成服務提供一個hv_fcopy的守護進程。目前windowsHyper-V此功能只支持CentOS 和 Red Hat 6.6 and 7.0, SUSE SLES 12, an以及Ubuntu 14.10 和 14.04。
儘管微軟的主要焦點是針對Windows虛擬機開發新的windowsHyper-V特性,但是現在很多功能都可用在Linux發行版windowsHyper-V上,以及可能對希望將他們的Linux工作負載整合到windowsHyper-V虛擬化平台上的組織帶來巨大的價值。
將虛擬機遷移到新windowsHyper-V
在考慮從Windows Server 2012 R2 windowsHyper-V遷移到下一個windowsHyper-V版本(可能是Windows Server 10 Hyper-V)時,需要考慮如何將現有的虛擬機遷移到新版本。windowsHyper-V一個版本將包括一個滾動更新功能,將允許管理員在windowsHyper-V集群不下線的情況下,一次性更新一個集群節點,即使如此,管理員也必須要考慮如何將虛擬機遷移到新版本的windowsHyper-V上。
不管是否正在實施一個windowsHyper-V集群部署,它都有可能從一個舊版本windowsHyper-V伺服器上的虛擬機實時遷移到下一代windowsHyper-V器上。最重要的是,實時遷移不一定是一個唯一的選項。管理員可以在虛擬機實時遷移時選擇上一代windowsHyper-V伺服器,只要它們不更新虛擬機版本。更新了虛擬機版本後,虛擬機只能與最新版本windowsHyper-V兼容。
與舊版本的windowsHyper-V一樣,主機必須開啟傳送和接收實時遷移虛擬機。
讓我們舉例說明,看它是如何工作的。我已經使用了Get-VM PowerShell 命令檢索了一個運行在Windows Server 2012 R2 的windowsHyper-V伺服器上虛擬機版本號。
即使是從舊版本的windowsHyper-V伺服器上將虛擬機實時遷移到下一代windowsHyper-V伺服器。實時遷移過程其實和Windows Server 2012 R2 的windowsHyper-V一樣。
下圖是舊版本的虛擬機實時遷移到"Windows Server 10" 的windowsHyper-V伺服器後的截圖。更重要的是,你可以看到虛擬機儘管運行在新版本的虛擬化管理程式上,但是windowsHyper-V保留了原來的虛擬機版本號。
由於虛擬機還是windowsHyper-V原來的版本號,那么它實時遷移到以前的windowsHyper-V伺服器上不會有任何問題。如果虛擬機版本升級到6後將不能實時遷移到以前的windowsHyper-V伺服器上。
這將引申出一個重要的問題。剛才我說過新版本的windowsHyper-V將提供一個滾動更新功能,也就是說它允許集群節點一個接一個的更新。如果一個虛擬機運行在一個既有新的也有舊的windowsHyper-V版本的集群中,那么在所有的群集節點更新到新版本之前,你將不能更新windowsHyper-V虛擬機的版本。
當然,提升windowsHyper-V虛擬機的版本能否帶來好處是個新問題,特別是虛擬機版本升級後不能降級。升級到版本6可以啟用windowsHyper-V新的功能和新的配置檔案格式。所以,假如虛擬機運行在以前版本的windowsHyper-V上,windowsHyper-V的版本還是版本5。但是新的特性和功能只支持已升級的虛擬機。
將windowsHyper-V虛擬機升級到版本6非常簡單,只需要在PowerShell上輸入下面的命令就可以。
Update-VMConfigurationVersion <VM name>
輸入此命令後,您將收到一條警告訊息,警告你你將不能將虛擬機遷移或將其導入正在運行舊版本的 windowsHyper-V主機上。如下圖所示:
正如你看到的,遷移一個虛擬機到"Windows Server 10" 的windowsHyper-V器上非常簡單。只要不更新虛擬機版本,虛擬機就可以實時遷移到舊版本的windowsHyper-V器上。
將虛擬機全遷移到windowsHyper-V
在考慮從windowsHyper-V遷移到下一個Hyper-V版本時,需要考慮如何將現有的虛擬機遷移到新版本。windowsHyper-V一個版本將包括一個滾動更新功能,將允許管理員在windowsHyper-V集群不下線的情況下,一次性更新一個集群節點,即使如此,管理員也必須要考慮如何將虛擬機遷移到新版本的windowsHyper-V上。
不管是否正在實施一個windowsHyper-V集群部署,它都有可能從一個舊版本windowsHyper-V伺服器上的虛擬機實時遷移到下一代windowsHyper-V器上。最重要的是,實時遷移windowsHyper-V不一定是一個唯一的選項。管理員可以在虛擬機實時遷移時選擇上一代windowsHyper-V伺服器,只要它們不更新windowsHyper-V虛擬機版本。更新了虛擬機版本後,虛擬機只能與最新版本windowsHyper-VV兼容。
與舊版本的windowsHyper-V一樣,主機必須開啟傳送和接收實時遷移虛擬機。
即使是從舊版本的windowsHyper-V伺服器上將虛擬機實時遷移到下一代windowsHyper-V伺服器。實時遷移過程其實和windowsHyper-V一樣。
下圖是舊版本的虛擬機實時遷移到"Windows Server 10" windowsHyper-V伺服器後的截圖。更重要的是,你可以看到虛擬機儘管運行在新版本的windowsHyper-V虛擬化管理程式上,但是windowsHyper-V保留了原來的虛擬機版本號。
由於虛擬機還是它原來的版本號,那么它實時遷移到以前的windowsHyper-V伺服器上不會有任何問題。如果虛擬機版本升級到6後將不能實時遷移到以前的windowsHyper-V伺服器上。
這將引申出一個重要的問題。剛才我說過新版本的windowsHyper-V將提供一個滾動更新功能,也就是說它允許集群節點一個接一個的更新。如果一個虛擬機運行在一個既有新的也有舊的windowsHyper-VV版本的集群中,那么在所有的群集節點更新到新版本之前,你將不能更新windowsHyper-V虛擬機的版本。
當然,提升虛擬機的版本能否帶來好處是個新問題,特別是windowsHyper-V虛擬機版本升級後不能降級。升級到版本6可以啟用windowsHyper-V新的功能和新的配置檔案格式。所以,假如虛擬機運行在以前版本的windowsHyper-V上,它們的版本還是版本5。但是新的特性和功能只支持已升級的虛擬機。
將虛擬機升級到版本6非常簡單,只需要在PowerShell上輸入下面的命令就可以。
輸入命令後,您將收到一條警告訊息,警告你你將不能將虛擬機遷移或將其導入正在運行舊版本的 windowsHyper-V 主機上。
正如你看到的,遷移一個虛擬機到"Windows Server 10" windowsHyper-V伺服器上非常簡單。只要不更新虛擬機版本,虛擬機就可以實時遷移到舊版本的windowsHyper-V伺服器上。
運行windowsHyper-V
在Windows Server 2012 R2上運行windowsHyper-V,你可以使用更多的虛擬化特性。這些特性來自於運行在windowsHyper-V之上的windowsHyper-VManager,但通過SCVMM 2012 R2管理產品使用這些特性能夠提供更高的靈活性與可用性。以下是通過SCVMM 2012 R2使用windowsHyper-V時能夠使用的新特性,而且用戶體驗相當棒。
windowsHyper-V 2012 R2支持虛擬機線上克隆。在windowsHyper-V 2012 R2上運行的虛擬機不需要停機就可以被克隆。儘管你可以通過windowsHyper-V Manager使用線上克隆功能,但SCVMM 2012 R2提供了更大的靈活性,允許你克隆運行在遠端windowsHyper-V主機之上的虛擬機或者已經準備好並存儲在SCVMM類庫中的虛擬機。
Windows Server 2012 R2現在支持創建站點間的網路網關,在windowsHyper-V網路虛擬化環境中有時被稱為HNV或NVGRE網關。儘管不使用SCVMM也可以增加NVGRE網關,但卻需要使用很多PowerShell命令而且管理網關很麻煩。
不需要增加你不想要的複雜性,SCVMM R2能夠幫助你快速部署NVGRE網關。增加HNV網關時另一個很重要的因素就是SCVMM 2012 R2支持增加第三方網關。你需要做的只是通過SCVMM 2012 R2增加網路服務並在windowsHyper-V主機上部署網關。
Hyper-V 2012 R2的windowsHyper-V共享特性支持客戶機集群。SCVMM 2012 R2更近一步,使在服務模板中集成windowsHyper-V共享特性成為了可能,反之,這使得在虛擬主機上快速部署支持集群功能的虛擬機成為了現實。