虛擬?機(jī) (VM) 是一種計(jì)算資源,它使用軟件而不是物理計(jì)算機(jī)來運(yùn)行程序和部署應(yīng)用程序。一臺(tái)或多臺(tái)虛擬“訪客”機(jī)器在物理“主機(jī)”機(jī)器上運(yùn)行。每個(gè)虛擬機(jī)都運(yùn)行自己的操作系統(tǒng)并獨(dú)立于其他虛擬機(jī)運(yùn)行,即使它們都運(yùn)行在同一主機(jī)上。這意味著,例如,虛擬 MacOS 虛擬機(jī)可以在物理 PC 上運(yùn)行。
虛擬機(jī)技術(shù)用于本地和云環(huán)境中的許多用例。最近,公共云服務(wù)正在使用虛擬機(jī)一次向多個(gè)用戶提供虛擬應(yīng)用程序資源,以實(shí)現(xiàn)更具成本效益和更靈活的計(jì)算。
虛擬機(jī)是做什么用的?
虛擬機(jī) (VM) 允許企業(yè)在桌面上的應(yīng)用程序窗口中運(yùn)行操作系統(tǒng),該操作系統(tǒng)的行為類似于完全獨(dú)立的計(jì)算機(jī)。可以部署 VM 以適應(yīng)不同級(jí)別的處理能力需求,運(yùn)行需要不同操作系統(tǒng)的軟件,或者在安全的沙盒環(huán)境中測(cè)試應(yīng)用程序。
虛擬機(jī)歷來被用于 服務(wù)器虛擬化,這使 IT 團(tuán)隊(duì)能夠整合他們的計(jì)算資源并提高效率。此外,虛擬機(jī)可以執(zhí)行被認(rèn)為風(fēng)險(xiǎn)太大而無(wú)法在主機(jī)環(huán)境中執(zhí)行的特定任務(wù),例如訪問受病毒感染的數(shù)據(jù)或測(cè)試操作系統(tǒng)。由于虛擬機(jī)與系統(tǒng)的其余部分分離,因此虛擬機(jī)內(nèi)部的軟件無(wú)法篡改主機(jī)。
虛擬機(jī)是如何工作的?
虛擬機(jī)在物理機(jī)的操作系統(tǒng)上作為應(yīng)用程序窗口中的進(jìn)程運(yùn)行,類似于任何其他應(yīng)用程序。構(gòu)成虛擬機(jī)的關(guān)鍵文件包括日志文件、NVRAM 設(shè)置文件、虛擬磁盤文件和配置文件。
虛擬機(jī)的優(yōu)勢(shì)
虛擬機(jī)易于管理和維護(hù),與物理機(jī)相比,它們具有以下幾個(gè)優(yōu)勢(shì):
- VM 可以在單個(gè)物理計(jì)算機(jī)上運(yùn)行多個(gè)操作系統(tǒng)環(huán)境,從而節(jié)省物理空間、時(shí)間和管理成本。
- 虛擬機(jī)支持舊版應(yīng)用程序,從而降低遷移到新操作系統(tǒng)的成本。例如,運(yùn)行 Linux 發(fā)行版作為來賓操作系統(tǒng)的 Linux 虛擬機(jī)可以存在于運(yùn)行非 Linux 操作系統(tǒng)(如 Windows)的主機(jī)服務(wù)器上。
- VM 還可以提供集成的災(zāi)難恢復(fù)和應(yīng)用程序配置選項(xiàng)。
虛擬機(jī)的缺點(diǎn)
雖然虛擬機(jī)與物理機(jī)相比有幾個(gè)優(yōu)點(diǎn),但也有一些潛在的缺點(diǎn):
- 如果不滿足基礎(chǔ)架構(gòu)要求,在一臺(tái)物理機(jī)上運(yùn)行多個(gè)虛擬機(jī)可能會(huì)導(dǎo)致性能不穩(wěn)定。
- 與完整的物理計(jì)算機(jī)相比,虛擬機(jī)效率較低且運(yùn)行速度較慢。大多數(shù)企業(yè)使用物理和 虛擬基礎(chǔ)設(shè)施的組合 來平衡相應(yīng)的優(yōu)勢(shì)和劣勢(shì)。
兩種類型的虛擬機(jī)
用戶可以從兩種不同類型的虛擬機(jī)中進(jìn)行選擇——進(jìn)程虛擬機(jī)和系統(tǒng)虛擬機(jī):
進(jìn)程虛擬機(jī)允許單個(gè)進(jìn)程作為應(yīng)用程序在主機(jī)上運(yùn)行,??通過屏蔽底層硬件或操作系統(tǒng)的信息,提供獨(dú)立于平臺(tái)的編程環(huán)境。進(jìn)程 VM 的一個(gè)示例是 Java 虛擬機(jī),它使任何操作系統(tǒng)都可以運(yùn)行 Java 應(yīng)用程序,就好像它們是該系統(tǒng)的本機(jī)一樣。
系統(tǒng)虛擬機(jī)完全虛擬化以替代物理機(jī)。系統(tǒng)平臺(tái)支持在多個(gè)虛擬機(jī)之間共享主機(jī)的物理資源,每個(gè)虛擬機(jī)運(yùn)行自己的操作系統(tǒng)副本。此虛擬化過程依賴于虛擬機(jī)管理程序,該管理程序可以在裸硬件(例如 VMware ESXi)或操作系統(tǒng)之上運(yùn)行。
什么是 5 種類型的虛擬化?
如今,傳統(tǒng) 數(shù)據(jù)中心 或 IT 基礎(chǔ)架構(gòu)的所有組件都可以通過各種特定類型的虛擬化進(jìn)行虛擬化:
- 硬件虛擬化:在對(duì)硬件進(jìn)行虛擬化時(shí),會(huì)創(chuàng)建計(jì)算機(jī)和操作系統(tǒng) (VM) 的虛擬版本并將其整合到單個(gè)主物理服務(wù)器中。管理程序直接與物理服務(wù)器的磁盤空間和 CPU 通信以管理 VM。硬件虛擬化,也稱為服務(wù)器虛擬化,可以更有效地利用硬件資源,讓一臺(tái)機(jī)器同時(shí)運(yùn)行不同的操作系統(tǒng)。
- 軟件虛擬化:軟件虛擬化創(chuàng)建了一個(gè)完整的計(jì)算機(jī)系統(tǒng),其硬件允許一個(gè)或多個(gè)客戶操作系統(tǒng)在物理主機(jī)上運(yùn)行。例如,Android OS 可以在本機(jī)使用 Microsoft Windows OS 的主機(jī)上運(yùn)行,??使用與主機(jī)相同的硬件。此外,應(yīng)用程序可以虛擬化并從服務(wù)器交付到最終用戶的設(shè)備,例如筆記本電腦或智能手機(jī)。這允許員工在遠(yuǎn)程工作時(shí)訪問集中托管的應(yīng)用程序。
- 存儲(chǔ)虛擬化:可以通過將多個(gè)物理存儲(chǔ)設(shè)備合并為單個(gè)存儲(chǔ)設(shè)備來虛擬化存儲(chǔ)。好處包括提高性能和速度、負(fù)載平衡和降低成本。存儲(chǔ)虛擬化還有助于災(zāi)難恢復(fù)計(jì)劃,因?yàn)榭梢詮?fù)制虛擬存儲(chǔ)數(shù)據(jù)并快速將其傳輸?shù)搅硪粋€(gè)位置,從而減少停機(jī)時(shí)間。
- 網(wǎng)絡(luò)虛擬化:通過將設(shè)備組合成一個(gè)基于軟件的虛擬網(wǎng)絡(luò)資源,可以在同一物理網(wǎng)絡(luò)上創(chuàng)建多個(gè)子網(wǎng)絡(luò)。網(wǎng)絡(luò)虛擬化還將可用帶寬劃分為多個(gè)獨(dú)立的通道,每個(gè)通道都可以實(shí)時(shí)分配給服務(wù)器和設(shè)備。優(yōu)勢(shì)包括提高可靠性、網(wǎng)絡(luò)速度、安全性和更好地監(jiān)控?cái)?shù)據(jù)使用情況。對(duì)于擁有大量用戶且隨時(shí)需要訪問的公司來說,網(wǎng)絡(luò)虛擬化可能是一個(gè)不錯(cuò)的選擇。
- 桌面虛擬化:這種常見的虛擬化類型將桌面環(huán)境與物理設(shè)備分開,并將桌面存儲(chǔ)在遠(yuǎn)程服務(wù)器上,允許用戶從任何設(shè)備上的任何位置訪問他們的桌面。除了易于訪問之外,虛擬桌面的優(yōu)勢(shì)還包括更好的數(shù)據(jù)安全性、節(jié)省軟件許可和更新成本以及易于管理。
容器與虛擬機(jī)
與虛擬機(jī)一樣, Kubernetes等容器技術(shù) 在單一平臺(tái)上運(yùn)行隔離應(yīng)用程序的意義上是相似的。虛擬機(jī)虛擬化硬件層以創(chuàng)建“計(jì)算機(jī)”,而容器僅將單個(gè)應(yīng)用程序及其依賴項(xiàng)打包。虛擬機(jī)通常由管理程序管理,而容器系統(tǒng)提供來自底層主機(jī)的共享操作系統(tǒng)服務(wù),并使用虛擬內(nèi)存硬件隔離應(yīng)用程序。
容器的一個(gè)主要好處是與虛擬機(jī)相比,它們的開銷更少。容器僅包括二進(jìn)制文件、庫(kù)和其他必需的依賴項(xiàng)以及應(yīng)用程序。位于同一主機(jī)上的容器共享相同的操作系統(tǒng)內(nèi)核,使容器比虛擬機(jī)小得多。因此,容器啟動(dòng)速度更快,服務(wù)器資源最大化,應(yīng)用交付更容易。容器已成為 Web 應(yīng)用程序、 DevOps 測(cè)試、微服務(wù)和最大化每臺(tái)服務(wù)器可以部署的應(yīng)用程序數(shù)量等用例的流行。
與容器相比,虛擬機(jī)更大且啟動(dòng)速度更慢。它們?cè)谶壿嬌媳舜烁綦x,具有自己的操作系統(tǒng)內(nèi)核,并提供完全獨(dú)立的操作系統(tǒng)的好處。虛擬機(jī)最適合同時(shí)運(yùn)行多個(gè)應(yīng)用程序、單一應(yīng)用程序、應(yīng)用程序之間的隔離以及在舊操作系統(tǒng)上運(yùn)行的遺留應(yīng)用程序。容器和虛擬機(jī)也可以一起使用。
設(shè)置虛擬機(jī)
虛擬機(jī)的設(shè)置很簡(jiǎn)單,并且有許多在線指南可以引導(dǎo)用戶完成整個(gè)過程。VMware 提供了一份這樣有用的虛擬機(jī)設(shè)置指南。