您閱讀本文如果覺得符合大人您的口味,請關注一下本君,點個關注和評論,說一下您的觀點。創作不易,還請多多支持!
7.1 虛擬機和虛擬化
虛擬機( )指通過軟件模擬的具有完整硬件系統功能的、運行在一個完全隔離環境中的完整計算機系統。
虛擬系統通過生成現有操作系統的全新虛擬鏡像,它具有真實系統完全一樣的功能,進入虛擬系統后,所有操作都是在這個全新的獨立的虛擬系統里面進行,可以獨立安裝運行軟件,保存數據,擁有自己的獨立桌面,不會對真正的系統產生任何影響 ,而且具有能夠在現有系統與虛擬鏡像之間靈活切換的一類操作系統。
虛擬機技術是虛擬化技術的一種,所謂虛擬化技術就是將事物從一種形式轉變成另一種形式,最常用的虛擬化技術有操作系統中內存的虛擬化,實際運行時用戶需要的內存空間可能遠遠大于物理機器的內存大小,利用內存的虛擬化技術,用戶可以將一部分硬盤虛擬化為內存,而這對用戶是透明的。
這里說白了,虛擬機是完整模擬整個硬件平臺的。
虛擬化,是指通過虛擬化技術將一臺計算機虛擬為多臺邏輯計算機。在一臺計算機上同時運行多個邏輯計算機,每個邏輯計算機可運行不同的操作系統,并且應用程序都可以在相互獨立的空間內運行而互不影響,從而顯著提高計算機的工作效率。
虛擬化是一種資源管理技術,是將計算機的各種實體資源,如服務器、網絡、內存及存儲等,予以抽象、轉換后呈現出來,打破實體結構間的不可切割的障礙,使用戶可以比原本的組態更好的方式來應用這些資源。這些資源的新虛擬部份是不受現有資源的架設方式,地域或物理組態所限制。一般所指的虛擬化資源包括計算能力和資料存儲。
在實際的生產環境中對虛擬化技術的理解正確的選項是,虛擬化技術主要用來解決高性能的物理硬件產能過剩和老的舊的硬件產能過低的重組重用,透明化底層物理硬件,從而最,大化的利用物理硬件。虛擬化使用軟件的方法重新定義劃分資源,可以實現資源的動態分配、靈活調度、跨域共享,提高資源利用率,使資源能夠真正成為社會基礎設施,服務于各行各業中靈活多變的應用需求。
虛擬機出現的比較早,其實虛擬機可以理解為現在虛擬化技術的一個細分。如果說虛擬機是虛擬一個完整的硬件平臺來用,那么虛擬化可以虛擬出我們需要的任意硬件。甚至在某些情況對虛擬化技術的理解正確的選項是,用多臺計算機提供的虛擬化組件來組成一個完整的硬件平臺也是有可能的。
流行的虛擬機軟件有、 Box、 PC和開放源代碼的Bochs,當然還有很多虛擬化產品,都虛擬或仿真了Intel x86硬件環境,可以讓我們在運行這些軟件的系統平臺上運行多種其它的“客戶”操作系統。
這里有幾個概念要說明:
例如在一臺安裝了Win 10的計算機上安裝了,那么,HOST指的是安裝Win 10的這臺計算機,其Host′s OS為Win 10。VM上運行的是Linux,那么Linux即為Guest OS。
除了這些以外,還有其他硬件的模擬環境,比如就很好的模擬了街機硬件、epsxe可以模擬索尼的游戲主機、還有安卓手機app在開發過程中所使用的安卓模擬器,也都屬于虛擬機的性質。
當然我們上邊所說的都是單純的桌面級虛擬機。還有大型的虛擬化解決方案類的產品,比如說劍橋大學開發的Xen、Linux下的全功能虛擬化架構的KVM、微軟的Hyper-V、提供應用、云計算和業務的基礎的 等等。當然有興趣自己百度。不過在以上這么多種類和級別的虛擬化方案中。默認就提供安裝Mac OS的貌似真沒有,無論用什么,都得修改或者破解以下才能安裝Mac OS。
當然除了虛擬計算機硬件(虛擬機)以外,虛擬化技術還提供了虛擬網絡,目前最典型的應用就是VXLAN,即 LAN。雖然看起來很向之前說到的VLAN,但是兩者有很大的不同。
VLAN技術的弊端逐漸顯現出來,具體表現為如下3個方面:
虛擬化技術的發展促使大數據、云計算技術公司采用單個物理設備虛擬多臺虛擬機的方式來進行組網,隨著應用模塊的增加,對于支持VLAN數目的要求也在提升,802.1Q標準中的最多支持4094個VLAN的能力已經無法滿足當下需求。
公有云提供商的業務要求將實體網絡租借給多個不同的用戶,這些用戶對于網絡的要求有所不同,而不同用戶租借的網絡有很大的可能會出現IP地址、MAC地址的重疊,傳統的VLAN僅僅解決了同一鏈路層網絡廣播域隔離的問題,而并沒有涉及到網絡地址重疊的問題,因此需要一種新的技術來保證在多個租戶網絡中存在地址重疊的情況下依舊能有效通信的技術。
兩臺以上主機的通信連接才足以滿足應用需求,而虛擬化技術使得單臺主機可以虛擬化出多臺虛擬機同時運行,而每臺虛擬機都會有其唯,一的MAC地址。這樣,為了保證集群中所有虛機可以正常通信,交換機必須保存每臺虛機的MAC地址,這樣就導致了交換機中的MAC表異常龐大,從而影響交換機的轉發性能。
相比VLAN技術,VXLAN技術具有以下的優勢:
24位長度的VNI字段值可以支持更多數量的虛擬網絡,解決了VLAN數目上限為4094的局限性的問題。
VXLAN技術通過隧道技術在物理的三層網絡中虛擬二層網絡,處于VXLAN網絡的終端無法察覺到VXLAN的通信過程,這樣也就使得邏輯網絡拓撲和物理網絡拓撲實現了一定程度的解耦,網絡拓撲的配置對于物理設備的配置的依賴程度有所降低,配置更靈活更方便。
VLAN技術僅僅解決了二層網絡廣播域分割的問題,而VXLAN技術還具有多租戶支持的特性,通過VXLAN分割,各個租戶可以獨立組網、通信,地址分配方面和多個租戶之間地址沖突的問題也得到了解決。
為了保證VXLAN機制通信過程的正確性,標準中規定,涉及到VXLAN通信的IP報文一律不允許分片,這就要求物理網絡的鏈路層實現中必須提供足夠大的MTU值,保證VXLAN報文的順利傳輸,這一點可以理解為當前VXLAN技術的局限性。
現在我們可以簡單給虛擬化分個類了:
當然,虛擬化技術還提供了其他的一些,比如數據庫虛擬化、服務虛擬化、存儲虛擬化等等。