Home >> Blog >> 什麼是虛擬主機?如何挑選正確的Virtual Machine VM主機為你工作?
虛擬主機 (VM) 是一種虛擬環境,其工作方式類似於電腦中的電腦。它運行在其主機的一個隔離分區上,擁有自己的 CPU 能力、內存、操作系統(如 Windows、Linux、macOS)和其他資源。最終用戶可以在 VM 上運行應用程序並像在工作站上正常使用它們一樣使用它們。
虛擬主機是如何工作的?
虛擬主機是通過虛擬化技術實現的。虛擬化使用軟體來模擬允許多個 VM 在單台機器上運行的虛擬硬體。實體機稱為主機,而在其上運行的虛擬主機稱為來賓。
此過程由稱為管理程序的軟體管理。管理程序負責管理和配置從主機到來賓的資源,例如內存和存儲。它還安排虛擬主機中的操作,以便它們在使用資源時不會相互超限。虛擬主機只有在有虛擬主機管理程序來虛擬化和分發主機資源時才能工作。虛擬化中使用了兩種類型的管理程序。
類型 1 管理程序(也稱為裸機管理程序)本地安裝在底層實體硬體上。虛擬主機直接與主機交互以分配硬體資源,中間沒有任何額外的軟體層。運行類型 1 管理程序的主機僅用於虛擬化。它們經常出現在基於伺服器的環境中,例如企業數據中心。類型 1 管理程序的一些示例包括Citrix Hypervisor和 Microsoft Hyper-V。需要一個單獨的管理工具來處理訪客活動,例如創建新的虛擬主機實例或管理權限。
類型 2 管理程序(也稱為託管管理程序)在主機電腦的操作系統上運行。託管管理程序將 VM 請求傳遞給主機操作系統,然後主機操作系統為每個來賓提供適當的實體資源。類型 2 管理程序比它們的類型 1 對應物慢,因為每個 VM 操作都必須首先通過主機操作系統。與裸機管理程序不同,客戶操作系統不依賴於實體硬體。用戶可以像往常一樣運行虛擬主機並使用他們的電腦系統。這使得類型 2 管理程序適用於沒有專用虛擬化伺服器的個人用戶或小型企業。
企業為什麼要使用虛擬主機?
VM主機 使組織能夠利用虛擬桌面基礎架構 (VDI)。VDI 部署允許用戶遠程訪問桌面環境,例如 Windows 或 Linux 等開源操作系統。它充當隨時隨地可用的數字辦公室,讓混合型員工輕鬆訪問公司工具,從而提高工作效率。
VM主機 為組織提供了許多其他好處,包括成本節約、安全性和可擴展性。
安全
VM 環境與主機操作系統隔離,從而提高了安全性,因為惡意軟體等漏洞不會影響底層硬體。這使得 VM 成為在投入生產之前測試新應用程序或軟體更改的理想選擇。受感染的 VM 可以輕鬆恢復到舊版本。它也可以快速刪除和重新創建,以加快災難恢復。
雲端計算
虛擬化與雲端計算齊頭並進。組織可以部署雲原生 VM 並將它們遷移到本地伺服器,然後再遷移回來,以利用混合雲。雲服務也可以實時調整以滿足不同的使用水平。這不僅提高了最終用戶的可擴展性,也提高了內部的可擴展性。例如,開發人員可以在雲中創建臨時虛擬環境來測試他們的實現。
成本效益
組織使用虛擬化在一台伺服器上託管多個VM主機。假設一個組織想要部署多個應用程序。他們無需投資額外的伺服器,而是可以在一台伺服器上為每個應用程序部署虛擬機——同樣的結果只是成本的一小部分。這提高了成本效率,因為實體硬體以最大容量被利用。
可擴展性
添加 VM 就像在實體機中克隆現有 VM 的副本一樣簡單。組織可以更好地響應負載波動,這有助於穩定性能。與在實體伺服器上安裝不同的操作系統相比,這更快、更高效。
虛擬主機的優勢
由於軟體與實體主機分離,用戶可以在單個硬體上運行多個操作系統實例,從而節省公司時間、管理成本和實體空間。另一個優勢是 VM 可以支持舊版應用程序,從而減少或消除將舊版應用程序遷移到更新或不同操作系統的需求和成本。
此外,我們SEO優化人員也可以使用虛擬主機在安全的沙盒環境中測試應用程序。這也有助於隔離可能感染給定 VM 實例的惡意軟體。由於 VM 內的軟體無法篡改主機,惡意軟體無法傳播同樣多的損害。
VM主機缺點
虛擬的主機確實有一些缺點。在一台實體主機上運行多個虛擬的主機可能會導致性能不穩定,尤其是在不滿足特定應用程序的基礎架構要求的情況下。與實體電腦相比,這也使它們在許多情況下效率較低。大多數 IT 運營利用實體和虛擬系統之間的平衡。
其他形式的虛擬化
VM 在伺服器虛擬化中的成功導致將虛擬化應用到其他領域,包括存儲、網路和桌面。如果在數據中心中使用了一種硬體,則很有可能正在探索虛擬化它的概念。
在網路虛擬化方面,公司已經探索了網路即服務選項和網路功能虛擬化(NFV),它使用商品伺服器代替專用網路設備,以實現更靈活和可擴展的服務。這與軟體定義網路略有不同,後者將網路控制平面與轉發平面分開,以實現對網路資源進行更自動化的供應和基於策略的管理。第三種技術,虛擬網路功能,是可以在 NFV 環境中運行的基於軟體的服務,包括路由、防火牆、負載平衡、WAN 加速和加密等過程。
VM主機和容器
虛擬主機的增長導致容器docker等技術的進一步發展,使這一概念又向前邁進了一步,並在 Web 應用程序開發人員中獲得了吸引力。在容器設置中,可以虛擬化單個應用程序及其依賴項。與 VM 相比,容器的開銷要少得多,因此容器僅包含二進製文件、庫和應用程序。
雖然有些人認為容器的開發可能會扼殺虛擬主機,但虛擬主機有足夠的能力和優勢來推動技術向前發展。例如,在同時運行多個應用程序或在舊操作系統上運行遺留應用程序時,VM 仍然很有用。
此外,有些人認為容器不如虛擬主機管理程序安全,因為容器只有一個應用程序共享的操作系統,而虛擬主機可以隔離應用程序和操作系統。
IDC 軟體定義計算部門的研究經理 Gary Chen 表示,即使客戶探索雲架構和容器,VM 軟體市場仍然是一項基礎技術。“儘管虛擬主機軟體市場非常成熟且接近飽和,但在未來五年內將繼續保持正增長,”Chen 在 IDC 的《2019-2022 年全球虛擬主機軟體預測》中寫道。
VMS、5G 和邊緣計算
虛擬主機被視為 5G 和邊緣計算等新技術的一部分。例如,Microsoft、VMware 和 Citrix 等虛擬桌面基礎架構 (VDI) 供應商正在尋找將其 VDI 系統擴展到因 COVID-19 大流行而現在在家工作的員工的方法。“使用 VDI,您需要極低的延遲,因為您基本上將擊鍵和鼠標移動發送到遠程桌面,”卡內基梅隆大學電腦科學教授 Mahadev Satyanarayanan 說。2009 年,Satyanarayanan 寫了一篇關於如何使用基於虛擬主機的小雲來為互聯網邊緣的移動設備提供更好的處理能力的文章,這導致了邊緣計算的發展。
像今天使用的許多其他技術一樣,如果不是幾十年前引入的原始虛擬主機概念,這些技術就不會被開發出來。
VM主機類型
組織可以使用兩種類型的虛擬主機:
進程虛擬主機
也稱為應用程序虛擬主機,進程vm主機支持單個進程或應用程序在主機操作系統上運行。它用於屏蔽底層硬體或操作系統,並像其他本機應用程序一樣執行應用程序。它通常用於提供獨立於平台的編程環境。例如,Java 應用程序是使用 Java 虛擬主機 (JVM) 實現的。另一個例子是 Wine 軟體,它幫助 Windows 應用程序在 Linux 上運行
虛擬化類型
如今,IT 基礎架構或傳統數據中心的所有組件都可以虛擬化,並提供多種虛擬化:
- 存儲vm化:可以通過將多個實體存儲設備合併為單個存儲設備來虛擬化存儲。
- 軟體vm化:軟體可以通過創建一個電腦系統來實現虛擬化,該電腦系統配有硬體,允許一個或多個客戶操作系統在實體主機上運行。
- 硬體vm化:創建電腦和操作系統 (VM) 的虛擬版本並將其整合到單個主實體伺服器中。
- 桌面vm化:桌面虛擬化將桌面環境與實體設備分離,並將桌面存儲在遠程伺服器上,允許用戶從任何設備上的任何位置訪問他們的桌面。
- 網路vm化:通過將設備組合成一個基於軟體的vm網路資源,可以在同一實體網路上創建多個子網路。
系統虛擬主機
系統虛擬主機,或硬體虛擬主機,虛擬化了一個完整的操作系統,可以作為實體機的替代品。系統虛擬主機共享主機的實體資源,但有自己的操作系統。虛擬化進程在虛擬主機管理程序或虛擬主機監視器上運行,該監視器運行在裸硬體(本機虛擬主機)或操作系統之上(託管虛擬主機)。VirtualBox 和 VMware ESXi 都是系統虛擬主機的示例。
使用虛擬主機的其他好處
虛擬主機本質上是電腦中的電腦。虛擬主機有幾個優點:
- 降低硬體成本。許多組織沒有充分利用他們的硬體資源。組織無需投資另一台伺服器,而是可以啟動虛擬伺服器。
- 更快的桌面配置和部署。部署新的實體伺服器通常需要許多耗時的步驟。但是,借助虛擬化系統,組織可以使用安全的預配置伺服器模板快速部署新的虛擬伺服器。
- 更小的足跡。利用虛擬化減少了維護和擴展 IT 功能所需的辦公空間,同時還釋放了桌面空間以支持更多員工。
- 增強的數據安全性。虛擬化通過在雲中復制您的伺服器來簡化災難恢復。由於虛擬主機獨立於底層硬體,組織不需要異地的相同實體伺服器來促進輔助恢復站點。在發生災難時,員工可以通過具有成本效益的備份和災難恢復解決方案快速恢復在線。
- 便攜性。可以在虛擬環境甚至從一台實體伺服器到另一台實體伺服器之間無縫移動虛擬主機,而 IT 團隊只需極少的投入。虛擬主機相互隔離,並擁有自己的虛擬硬體,使其獨立於硬體。將實體伺服器移動到另一個位置是一項資源密集型任務。
- 提高 IT 效率。許多 IT 部門將至少一半的時間用於管理日常管理任務,但是通過虛擬化可以將一台實體伺服器劃分為多個虛擬主機——管理員可以從一台實體伺服器同時部署和管理多個操作系統。
使用虛擬主機的挑戰
VM 有很多優勢,尤其是當人們需要在單個實體設備上運行多個操作系統時。但是,使用 VM 存在一些挑戰:
- 當同時在主機上運行虛擬主機時,每個虛擬主機都會根據系統的工作負載引入不穩定的性能。
- 與實體機相比,VM 的效率有所下降。
- 虛擬化解決方案的許可模型可能很棘手。由於額外的硬體要求,它們可能會導致巨大的前期投資成本。
- 由於虛擬主機和雲部署的違規數量越來越多,安全性是一個額外的問題。
- 對於每個虛擬化解決方案,基礎架構設置都很複雜。小型企業必須聘請專家才能成功部署這些解決方案。
- 當多個用戶嘗試訪問同一實體主機上的相同或不同 VM 時,VM 會構成數據安全威脅。
虛擬主機和容器的異同
容器是軟體的標準化單元,包括代碼及其所有依賴項,例如係統庫、系統工具和設置。容器化應用程序可以在所有類型的基礎設施中快速可靠地部署。vm主機和容器都隔離了應用程序,因此它們可以在任何平台上運行。但虛擬主機與容器的不同之處在於它vm化硬體以在單台機器上運行多個操作系統。相反,容器將單個應用程序及其所有依賴項打包在一起,因此它可以在任何操作系統上運行。
虛擬主機在管理程序上運行並包含單獨的操作系統映像,而單個主機上的容器共享主機的操作系統內核。與虛擬主機相比,這使得容器非常輕量級並減少了管理開銷。它們的可移植性使它們非常適合 Web 應用程序和微服務。vm主機不是輕量級的,可能需要更多時間來啟動,但它們有自己的操作系統內核,最適合同時運行多個應用程序或需要舊操作系統的遺留應用程序。vm主機和容器也可以一起使用。
開始使用虛擬主機的 7 個實際理由
1.嘗試新的操作系統
假設您一生都是 Windows 用戶,但您喜歡冒險並想體驗一下 Linux。您有多種嘗試 Linux 的選擇,包括雙引導設置,但虛擬化是一種很好的嘗試方式,風險很小。
在您的 Windows 系統上,您只需要安裝 VirtualBox(或其他管理程序)並創建一個新的vm主機。然後獲取任何 Linux 安裝 ISO(如 Ubuntu 或 Linux Mint)並將其安裝為vm主機。現在,您可以像任何其他程序一樣在 Windows 系統(主機操作系統)內的窗口中運行 Linux(來賓操作系統)。
即使您是新手,也可以放心,因為虛擬主機充當沙盒。如果來賓操作系統出現問題,例如惡意軟體感染或設置損壞,則不會影響主機操作系統。
如果虛擬主機由於某種原因無法啟動,您可以簡單地重新創建vm主機並重新安裝操作系統。不必擔心因為您嘗試了不熟悉的操作系統而導致電腦崩潰。
2.運行舊的或不兼容的軟體
也許您幾年前改用 Mac,但您錯過了一款僅限 Windows 的軟體。或者您可能需要運行一個不再在 Windows 10 上運行的古老程序。
vm主機為運行與您當前機器不兼容的軟體提供了一個很好的環境。只要您有權訪問安裝程序,您就可以輕鬆地將其安裝在虛擬操作系統上。
另外,以這種方式運行過時的軟體要安全得多,因為它是在vm主機中進行沙盒處理的。希望這些天您不必運行僅限 Windows XP 的軟體,但可以選擇以防萬一。
如果您為此目的使用 VirtualBox,請確保安裝了 Guest Additions。這樣做可以讓您以無縫模式運行應用程序,從而將它們與主機操作系統中的應用程序並排放置。
3. 為其他平台開發軟體
vm主機的另一個重要用途是簡化跨多個平台測試應用程序和網站的工作流程。
例如,假設您正在開發一款可在桌面和移動平台上運行的遊戲。您可以使用仿真在您的電腦上測試各種版本。無需在手機和其他測試電腦上來回移動安裝程序文件,您只需模擬它們即可。
虛擬化還允許您編譯為其他可執行類型。即使你使用跨平台的框架,你可能也只能在 Mac 上編譯 APP 文件,在 Windows 上編譯 EXE 文件。虛擬化不是每次構建都需要雙啟動,而是簡化了流程。
有時無法替代在真實硬件上運行應用程序,因為仿真並不完美。但是對於許多用途來說,仿真是訪問其他操作系統的便捷方式,無需太多麻煩。
4. 安全處理潛在的惡意軟體
正如我們所見,vm主機的主要好處之一是它與您的主系統隔離。這意味著您可以承擔通常會避免的安全風險。
例如,假設您想下載一個程序,但不確定它來自的站點是否合法。或者,也許您想在不冒感染風險的情況下對您的防病毒軟體進行測試。
不太實際,也許你很無聊,想看看病毒對操作系統的影響。您甚至可以測試會破壞您的電腦的理論,例如如果您在 Windows 中刪除 System32會發生什麼。
當然,惡意軟體檢測到它在vm環境中運行並試圖突破的可能性總是很小。雖然風險很低,但您不應該魯莽行事。
5. 撕裂你的系統
如果您特別精通技術,虛擬主機可讓您探索和試驗操作系統,而不必擔心後果。這可能是了解更多有關操作系統的有趣方式。
例如,您可以在 Windows 10 中虛擬化 Windows 10 的副本,並使用來賓版本來修改註冊表。也許你想學習一些 Linux 命令而不用擔心不小心搞砸了。
6. 利用虛擬主機快照
vm主機的另一個出色功能是能夠創建系統級快照,您可以在需要時立即恢復。
假設您要安裝一個未經測試且可能不穩定的新應用程序。或者,也許您想卸載過去幾個月積累的大量軟體。還有一次,您可能想要調整一些系統配置。但在所有情況下,您都會猶豫不決,因為不確定是否要解決任何問題。
vm主機監視器允許您拍攝快照,這是 VM 在任何時間點的完整副本。如果確實出現問題,您可以恢復快照並繼續前進,就像什麼都沒發生一樣。因此,這些備份就像更全面的系統還原。
最重要的是,它們被保存為單個文件,您可以將其移動並存儲在主機上的其他位置。使用快照作為備份,您可以先在 VM 中嘗試有風險的過程,以便準備好在主系統上進行更改。你也可以復制它們以備將來使用。
7. 將系統克隆到另一台機器
由於vm主機的全部內容存儲在幾個文件中,您可以輕鬆地將它們傳輸到另一台電腦並加載vm主機而不會出現任何問題(當然,只要您使用相同的管理程序)。
例如,VirtualBox 將 VM 設置存儲在一個很小的 VBOX 文件中。另一個主要組件是 VDI 文件,它充當虛擬存儲磁盤。
無論您最初使用的是哪個主機操作系統,您都可以復制這些文件並將它們加載到另一台電腦上的 VirtualBox 中。這有效地重新創建了您可以在任何地方使用的訪客系統的副本。
VMware Workstation Player 有一個名為 vCenter Converter 的相關功能。這使您可以安裝當前的非虛擬操作系統並將其轉換為虛擬映像,然後您可以將其加載到另一台電腦上的 VMware Workstation Player 中。
現在您知道虛擬主機的用途了
現在您不必想知道為什麼要使用虛擬主機。希望這些原因中的一個或多個讓您興奮地嘗試其中一個。
在開始之前,請記住,您需要一台功能強大的電腦才能獲得最佳體驗。如果您的 CPU 較弱、內存不足 8GB 或存儲空間很小,您的電腦將難以運行除主機操作系統之外的虛擬操作系統。