虛擬化介紹
什么是虛擬化:
虛擬化是一種資源管理技術, 是將計算機的各種物理資源, 如服務器、網絡、內存及存儲等,予以抽象、轉換后呈現出來,打破物理設備結構間的不可切割的障礙,使用戶可以比原本的架構更好的方式來應用這些資源。這些資源的虛擬部分是不受現有資源的架構方式、地域或物理設備所限制。
虛擬化創建了一層隔離層,把硬件和上層應用分離開來,允許在一個硬件資源上運行多個邏輯應用。
虛擬化有:服務器虛擬化、應用程序虛擬化、展現層虛擬化、桌面虛擬化。
常見的虛擬化:
- 內存虛擬化
- 磁盤虛擬化
- 網絡虛擬化
VMware實現的是x86服務器的虛擬化,更確切地說,包含以下三個方面
- 計算能力:CPU/Memory的虛擬化
- 存儲:VMFS文件系統
- 網絡:虛擬交換機
服務器虛擬化的方式:
服務器虛擬化有兩種常見的類型
-
寄居架構(Hosted Architecture)
作為應用安裝在OS之上
基於現有操作系統
兼容性好
性能較差
功能單一
-
裸金屬架構(Bare Metal Architecture)
直接安裝在硬件之上,本身就是OS
基於裸機(Bare Metal)
硬件兼容性要求高
性能好
有許多高級功能。
為什么要使用虛擬機:
物理架構存在的問題:
- 難以復制和移動
- 受制於一定的硬件組件
- 生命周期短
- 物理服務器的資源利用率低
服務器虛擬化
- 將一台物理服務器虛擬成多台虛擬服務器。虛擬服務器由一系列的文件組成
虛擬機與物理機相比
-
最大化利用物理機的資源,節省能耗
-
更方便地獲取計算資源
-
硬件無關。虛機都是文件,方便遷移、保護
-
生命周期更長,不會隨着硬件變化而變化
-
根據需求的變化,非常容易更改資源的分配
-
更多高級功能
在線的數據、虛擬機遷移
高可用
自動資源調配
雲計算
-
減少整體擁有成本,包括管理、維護等
vSphere基本架構:
虛擬化環境中的資源共享:
物理機的資源被多個虛擬機共享:CPU、內存、網絡、存儲等。
CPU虛擬化:
-
LCPU
邏輯運算單元
可供使用的物理資源
超線程對LCPU的影響
-
vCPU
虛擬化的CPU
-
vmkernel
負責CPU資源調度
分時
內存虛擬化:
由vmkernel控制
- vmkernel控制物理內存
- 每個虛擬機擁有獨立的連續可尋址的虛擬內存空間
- 采用多種技術優化內存的使用
- 物理內存不足時可以使用磁盤存儲作為交換空間
網絡虛擬化:
-
通過虛擬網絡交換機實現
連接虛擬機、vmkernel與外部物理網絡,工作在第二層
-
虛擬網卡
虛擬機中運行的網卡
虛擬機對外進行網絡通訊
-
vmkernel口-vmkernel對外進行網絡通訊
-
物理網卡-上連物理網絡,工作在第一次
存儲虛擬化:
通過虛擬磁盤vmdk文件的封裝實現
- 多個ESXi主機訪問共享存儲
- 虛機的虛擬磁盤以vmdk文件格式存放在存儲中
- 每個虛擬機由一組文件組成
- 每個虛擬機有各自的目錄
- 虛擬機的文件系統對ESXi主機不可見
vSphere與雲計算:
-
虛擬化是雲計算的基礎
虛擬機在虛擬基礎架構上運行
動態的計算資源池作為雲計算的基礎
-
支持各種雲計算平台
VMware vRealize
OpenStack
-
支持多種雲環境
私有雲
公有雲
混合雲
ESXi基本結構
ESXi介紹:
VMware ESXi是最核心的組件
VMware ESXi是我們常說的ESXi主機,虛擬化層
組件的作用:ESXi用於協調物理計算機的資源,同時通過ESXi管理其上的虛擬機,如部署、遷移等操作。同時還可以通過ESXi對物理計算機上的網絡存儲資源僅從管理,ESXi通過配置虛擬交換機上的vSwitch管理配置網絡資源,通過VMfs和nfs管理虛擬存儲資源。
核心Hypervisor - VMkernel
- 基於裸機的虛擬化
- 虛擬CPU/內存
- VMFS存儲支持
- 虛擬交換機支持
ESXi的安裝方式
- 可以安裝在本地硬盤,存儲網絡盤, USB/SD卡,或者內存中
VMware ESX的發展過程:
-
2006年,服務器有了第一款虛擬化產品—GSX,此時VMware的安裝方式時現在物理機上安裝操作系統,再將VMware作為應用程序安裝在主機上,VMware通過宿主操作系統進行資源和操作系統的管理。這種將虛擬化程序安裝在宿主機上的架構稱為寄居式虛擬化。寄居式虛擬化最大的問題式過度的依賴於宿主操作系統。
-
2009年,VMware推出 ESX,VMware 直接將ESX安裝在物理計算機上,這種安裝方式稱為裸機安裝。但是ESX並不能完全的摒棄宿主操作系統,他的解決方法是將虛擬化程序和操作系統整合到一起。也就是說,他將虛擬化的程序寫入到linux的操作系統中。此時,ESX通過linux系統的Servers Console來運行,而資源和虛擬機的管理工作則通過合作代理伙伴和編寫腳本來執行。ESX有效的解決了對宿主操作系統過於依賴的問題。但是這種架構依然有他自己的缺陷,首先,由於虛擬化程序中包含linux的操作系統,linux的操作系統中非虛擬化部分的進程會占用主機上的部分資源,造成資源的浪費。其次,在進行資源和虛擬機的管理時,只能通過腳本和代理,非常的不方便。
-
2011年,VMware推出了ESXi,即為當前應用最廣泛的虛擬化產品。同樣,ESXi也是裸機安裝在物理計算機上的,他做的改進是將虛擬化層中繁雜的linux層剔除,只保留了VMkernel虛擬化內核對資源進行管理。這樣,便大大的額降低了虛擬化層的大小。同時,也減小了虛擬化層對物理化層的開銷。ESXi做的第二大改進便是將控制台從虛擬化程序中移除,變成一個獨立的組件,即Vsphere Client,使得管理工作更加的輕松便捷。
ESXi體系結構獨立於通用的操作系統運行,從而簡化了虛擬化管理程序管理並提高了安全性。
ESXi的優點:
- 精簡的體系結構
- 更小的安全占用空間
- 簡化的部署和配置
- 簡化的修補和更新模式
##ESXi基本架構:
ESXi主機的管理方式:
-
獨立的ESXi主機
直接訪問ESXi主機
單獨的管理界面,可管理項少
用戶管理與授權由ESXi主機控制
常用於初始配置或者故障診斷
-
通過vCenter服務器管理多台ESXi主機
通過vCenter服務器訪問ESXi主機
統一的管理界面,高級功能管理
可整合第三方管理插件
用戶管理與授權由vCenter服務器控制
用於日常管理
-
圖形界面
vSphere Client
vSphere Web Client
通過API使用第三方軟件
-
命令行
vCLI
vMA
PowerCLI
*DCUI
*SSH/ESXi Shell**
-
API接口
vCenter服務器–數據中心的單一控制點
vCenter介紹:
vCenter Server:
定義:VMware vCenter Server是充當ESXi主機及其虛擬化中心管理點的服務。供管理員集中的統一的管理企業的虛擬化環境。
- 主要的作用是:提供集中的管理接口,供管理員可以管理整套的虛擬化環境。
- 也可以為虛擬化提供更高級的功能。如,虛擬機遷移,分布式的服務,快速部署虛擬機
- vCenter的配置信息和清單信息主要保存在數據庫中,這就是數據庫服務器和數據庫存儲。
- 同時vCenter管理主機時,有部分服務需要在各個主機上,比如,分布式虛擬交換機需要一定的分布式服務,同時在管理虛擬化的環境時,需要有相應的權限管理以及ACL用戶訪問控制。同時,為了便於管理,需要統一的身份驗證,vCenter提供了一些接口,供第三方程序進行連接。
虛擬化平台的管理服務器
- 提供配置、管理、訪問控制、監控等基本數據中心服務
- 可管理最多1000台ESXi主機、10000台開機的虛擬機
vCenter服務器及邏輯組件架構:
-
每個vCenter可以管理1千台ESXi服務器以及1萬台開機的虛擬機
-
許多跨越ESXi主機的服務必須要vCenter支持
HA, FT, vMotion, DRS, Storage vMotion, Storage DRS, dVS 等等
vCenter服務器的主要邏輯組件包括:
- vCenter服務器 – 管理組件
- 數據庫服務器 – 存放配置與性能數據
- SSO組件 – 與LDAP或者AD服務器通訊,提供用戶認證
- 清單服務 Inventory Service
- 用戶管理界面 – vSphere Client或者使用瀏覽器+Flash連接Web Client
vCenter其他組件:
-
管理接口
vSphere API – 應用程序接口 -
vCenter Lookup Service
包含關於 vSphere 基礎架構的拓撲信息,使 vSphere 組件能夠安全地互相連接 -
其它分布式服務
包括vMotion、DRS和vSphere HA,這些服務隨vCenter Server一起安裝
vCenter管理角色:
- 安裝完vCente后,便帶有的管理功能,包括資源管理,模板管理,虛擬機分布,虛擬機管理,安全任務事件,和日志主機管理等
- 可擴展的組件,比如雲平台管理,站點恢復管理,APP接口和更新管理等。
- 在安裝vCente時,可以自由選擇是否安裝可擴展的插件。注意,可擴展模塊是包括一個服務器組件和一個客戶端組件。
VMware虛擬機及虛擬機管理介紹
什么是虛擬機:
什么是虛擬機:
虛擬機是一個邏輯的計算機,可以在其上運行受支持的客戶端操作系統和應用程序的虛擬硬件集;
從本質上來說,或者是從存儲的角度來看,是一組離散的文件。
虛擬機文件包括
- .vmx – 虛擬機配置文件(文本)
- .nvram – 虛擬機BIOS文件(二進制)
- .vmdk – 虛擬磁盤描述文件(僅描述信息,非常小)
- -flat.vmdk – 虛擬磁盤數據文件(實際數據)
- -rdm.vmdk – 裸設備映射虛擬磁盤文件
- .vswp/vmx-***.vswp – vmkernel swap文件,也稱為虛擬機交換文件
- .vmtx –模板的配置文件(文本)
- .vmsd/.vmsn/-delta.vmdk – 虛擬機快照文件及磁盤delta數據文件
- .log – 虛擬機日志文件
- .vmss – 掛起狀態文件
虛擬機的模板:
- 通過虛擬機的模板快速的部署虛擬機
- 模板是虛擬機的主副本,用於創建和部署新的虛擬機。
- 模板通常包括一個客戶操作系統,一組應用程序和一個特定的虛擬機配置的映像。
管理模板:
- 在制作模板時,我們可以選擇將虛擬機轉化為模板,也可以選擇克隆為模板。
- 若是轉換為模板,則是選擇為該虛擬機添加模板標記,並轉化為模板,效率很快,此時虛擬機必須處於關閉狀態才可以進行。
- 若選擇克隆為模板,則是先客隆虛擬機,再制作模板,所以,耗時很長,但是克隆為模板時,虛擬機的電源是可以開啟的,也可以是關閉的。
- 在選擇用模板部署虛擬機時,可以選擇通過模板部署虛擬機,也可以選擇轉換為虛擬機,來修改模板。同時,在部署虛擬機的過程中,我們可以選擇使用規范或者自定義的向導完成部署后的自定義工作。比如,刷新SID,加入域等,以減少部署虛擬機后的后序工作。
- 克隆虛擬機:克隆是虛擬機的一個精確副本,被克隆的虛擬機的電源是可以開啟的,也可以是關閉的。
##遷移類型:
- 遷移主機
- 遷移存儲
- 同時遷移主機與存儲
虛擬機遷移的方式:
-
冷遷移
虛擬機電源處於關閉或者掛起狀態
可以遷移主機、存儲、或者兩者同時遷移
-
熱遷移:虛擬機電源處於開機狀態
遷移主機 – vMotion
遷移數據存儲 – Storage vMotion
同時遷移主機和存儲 – Cross-Host vMotion,或者稱為無共享存儲的vMotion
vSpher vMotion:
虛擬機開機時,將虛擬機從一個主機在線遷移到另一個主機
- 虛擬機數據應當位於可以被兩台主機同時訪問的共享存儲上
- 兩台主機的CPU必須兼容
- 主機與虛擬機需要滿足vMotion的條件
用於
- 減少由於主機維護、升級等引起的虛擬機計划內宕機時間
- 可以用於控制主機資源的負載均衡
Storage vMotion:
虛擬機開機時,將虛擬機從一個存儲在線遷移到另一個存儲
- 不可以跨越虛擬數據中心
- 不遷移主機、無宕機時間
應用場景
- 減少由於存儲維護引起的計划內宕機時間
- 存儲資源的負載均衡
- 在線地更改虛擬磁盤格式及文件名
遷移類型的對比:
虛擬機快照:
- 通過快照保留虛擬機的狀態,以便可以反復的回到同一狀態。
- 快照提供了一種臨時的容錯解決方案
- 快照的工作原理:當為虛擬機拍攝快照時,回生成快照的狀態文件,保留拍攝快照時虛擬機運行的狀態信息,同時,將元虛擬機的磁盤變為只讀磁盤,並且新建一塊新的增量虛擬磁盤,拍攝快照后的變更數據,寫入增量虛擬磁盤中;恢復快照時,將增量虛擬磁盤刪除,清除所有變更后的快照信息。並再次新建增量磁盤,如果想在刪除快照,則上塊增量虛擬磁盤中的數據寫入到只讀磁盤中,並刪除增量虛擬磁盤,這樣就保留了快照后的信息,刪除了快照節點,可以在開啟,關閉和掛起時拍攝快照。拍攝快照也可以選擇是否捕獲虛擬機內存狀態,設置狀態和虛擬的磁盤狀態
- 但是,虛擬機快照只是一種臨時的容錯方案,不能替代備份方案,如果虛擬機的數據損壞,快照無法完成修復。所以,依然需要規划虛擬機的數據保護。同時,為了比避免增量磁盤過大,需要對虛擬機的快照做及時的刪除。
虛擬機快照是虛擬機某一時間點的狀態
- 虛擬機磁盤狀態
- 虛擬機BIOS及配置狀態
- 虛擬機內存狀態
可以通過快照記錄虛擬機狀態
- 用於測試、備份數據源、快速恢復等用途
VMware可用性及可擴展性的介紹
VMware各級容災方案:
- 在站點級別:有set recovery manager,實現站點的數據備份。
- 在數據級別,有VMware Data Recovery以及其他第三方的備份解決方案
- 在存儲級別:通過Storage vMotion可以保存儲的可用性
- 在服務器級別:有VMware vSphere和vMotion 和DRS動態資源分布等保證主機級的可用性。
- 在組件級別:有網卡綁定、存儲多路徑等功能保障網絡、存儲的可用性。
- VMware為我們提供了針對故障的保護,實現零停機的計划運維,同時,針對計划外的停機和災難也提供了相應的保護機制
VMware在虛擬化級別為我們提供的解決方案—HA(High Availability)
- HA的作用:高可用性,停機時間最少,可用於支持的客戶操作系統,可用於支持所有的EXSXI硬件,用於為需要這種保護級別的虛擬機提供高可用行
- HA的適用故障
- 主機故障
- 客戶OS故障
- 應用程序故障
HA如何實現高可用?
當服務器發生故障時,HA自動的到其他的虛擬機上進行虛擬機的重啟,保障其虛擬機的可用性以及業務的連續性
HA的優勢:
HA是一套經濟有效的適用於所有應用的高可用的解決方案
因為HA不需要獨占stand-by硬件,也沒有集群軟件的成本和復雜性,只需要在集群中啟用HA的功能即可。
HA的缺陷:
HA可以為組織提供自信的運行其關鍵業務能力的應用程序的能力,但是是通過重啟虛擬機來實現的,有些虛擬機的重新啟動的速度很慢,這時業務的連續性就比較低,甚至有些虛擬機需要開機后,在手動的進行某些配置才可以提供服務。僅僅時自動重啟,並不能滿足高可用性。
Fault Tolerance(FT)
FT容錯系統的設計目標是:出現計划外的中斷時,某個備份的虛擬機可以立即去完成任務,確保不出現服務的中斷。
FT體提供了比HA更高的業務連續性
實現了應用程序的零停機和零數據丟失。
虛擬化的可擴展性—DRS
DRS—Distributed Resource Scheduler,動態負載均衡
DRS實現了動態負載均衡連續的智能優化保證了所有的應用需要的資源。
DRS可以實現跨資源池的動態調整計算資源,可基於預定義的規則,智能的分配資源。
注意:規划DRS時,是圍繞着業務進行組織和規划的,而不是硬件
DRS如何實現動態的擴展?【當有新主機的加入時】
當有新主機的加入時,DRS自動的將資源池擴展,經過計算后,自動的將虛擬機遷移到新的主機上,這樣,變更利於添加更多的資源,避免業務繁忙時,出現過載的現象。