虛擬化是一個在從實際硬體中抽象出來的層中執行一個虛擬的計算機系統例項的程式。大多數情況下,它指代同時執行多個作業系統在一個計算機系統上。對於那些在虛擬機器上執行的應用程式們,可以看起來像它們執行在自己專用的機器上一樣,其中作業系統、庫,和其他程式對於客戶虛擬系統是唯一的,而未與它的宿主作業系統(在它之下)相連。
人們在計算中使用虛擬化的原因有很多。對於桌面使用者來說,最常見的用途是能夠執行適用於其他作業系統的應用程式,而無需切換計算機或者重新啟動到其他系統。對於伺服器管理員來說,虛擬化還提供了執行不同作業系統的能力,但也許更重要的是,它提供了一種將大型系統分割成許多較小部分的方法,使伺服器能被有不同需求的不同的使用者或應用程式更有效的使用。它還允許隔離,使虛擬機器內部執行的程式免受同一主機上另一個虛擬機器中發生的程式的影響。
What is a hypervisor(系統管理程式)?
系統管理程式是建立和執行虛擬機器的程式。系統管理程式傳統上分為兩類:型別一,或“裸機”系統管理程式,直接在系統的硬體上執行客戶虛擬機器,基本上充當作業系統。型別二,或“託管”系統管理程式表現得更像可以像普通程式一樣啟動和體制的傳統應用程式。在現代系統中,這種拆分不太普遍,尤其是對於KVM等系統。KVM,基於核心的虛擬機器的縮寫,是Linux核心的一部分,可以直接執行虛擬機器,儘管你仍可以將執行KVM虛擬機器的系統用作一個普通計算機。
What is a virtual machine?
虛擬機器是在另一個系統上執行的計算機系統的模擬等效項。虛擬機器可以訪問任意數量的資源:計算資源,透過硬體輔助但是對宿主機CPU和記憶體的有限訪問;用於儲存的一個或多個物理或虛擬磁碟裝置;一個虛擬或真正的網路介面;其他裝置如影片卡,USB裝置,或與虛擬機器共享的其他硬體。如果虛擬機器儲存在虛擬磁碟上,者通常稱為磁碟映像。磁碟映像可能包含要啟動的虛擬機器的檔案,或者,它可以包含任何其他特定的儲存需求。
容器和虛擬機器的區別是什麼?
您可能聽說過Linux容器,這些容器在概念上與虛擬機器類似,但功能略有不同。雖然容器和虛擬機器都允許在隔離的環境中執行應用程式,允許您將它們堆疊到同一臺計算機上,就像它們是單獨的計算機一樣,但容器不是完整的獨立的計算機。容器實際上只是一個孤立的程式,它與主機作業系統共享相同的Linux核心,以及執行容器內執行的程式所需的庫和其他檔案,通常使用網路介面,使得容器可以像虛擬機器一樣向世界公開。通常,容器設計為執行單個程式,而不是模擬完整的多用途伺服器。
Where can I learn more?
想要了解如何開始虛擬化?我們有足夠的資源為您服務。請務必檢視我們的虛擬化 tag set,或檢視這些出色的文章之一。
Using Vagrant and Ansible to deploy virtual machines for web development by Betsy Gamrat.
Vagrant in 5 minutes, a lightning talk by Daniel Farrell.
Why tools like Docker, Vagrant, and Ansible are hotter than ever by Greg DeKoenigsberg.
原文地址:https://opensource.com/resources/virtualiz...
本作品採用《CC 協議》,轉載必須註明作者和本文連結