天天看點

虛拟化、雲計算與超融合的簡單總結

一、概述

  近期研究了一下超融合的内容,簡單做了下學習總結。

  虛拟化是一種基本思想,是雲計算、超融合的基礎,在資訊系統的各層都有不同的應用,舉例來說:

  存儲虛拟化,存儲陣列就是将若幹集中部署的磁盤先彙總,再劃分成不同的邏輯磁盤配置設定給不同的伺服器使用。

  網絡虛拟化,網絡我們一般分為接入層和彙聚層,使用網絡虛拟化後,對于單個主控端到交換機的部分可以認為是彙聚層,對于主控端中虛拟出的OS,可以在内部虛拟出一個接入層的網絡結構,便于對各虛拟OS進行網絡管理(比如做一些交換層面的資料流控)。

  硬體層虛拟化,主流雲技術就是将主控端的硬體資源先彙總成一個邏輯整體,而後配置設定給不同的虛拟OS使用。

  系統層虛拟化,常用的虛拟機就是這種技術,比如在作業系統内安裝一個VM,VM内再運作多個虛拟的OS。

  總的來說,雲計算、超融合就是對存儲、網絡、硬體資源的彙總(抽象)和重配置設定,在實施細節上又有很大的不同由此産生了不同的特性。

虛拟化、雲計算與超融合的簡單總結

二、實體伺服器

  實體伺服器我們比較熟悉了,主要包含CPU、記憶體、硬碟、網絡,一個常見的實體伺服器架構如下圖:

  對于使用者來說,他可以不用關注中間複雜的實體結構,隻需要關注OS本身,比如我們在每一台伺服器上都部署一個centos系統。

虛拟化、雲計算與超融合的簡單總結

  可以看到一個硬體伺服器對應一個OS系統,這是最傳統的方式。

三、TYPE2(OS虛拟化)

  在前面實體伺服器的基礎上,我們每一台伺服器都有一個centos系統,三台伺服器就有3個OS,由于linux多使用者的特性我們可以将這3個OS提供給9個使用者同時使用,但是使用者的操作很可能會互相産生幹擾,比如某個使用者執行了關機指令則其他使用者就無法使用該OS了。

  為解決這個問題,最簡單的辦法就是在一個OS内部虛拟出若幹個獨立的OS,這樣使用者之間就不受幹擾,如下圖所示,在centos系統中運作了一個VM程式,而後用VM程式分别虛拟出3個OS系統(可以是windows或linux),這樣我們就得到了9個獨立運作的OS,每個使用者可以分到一個,而且他們的操作互相之間不受幹擾。

虛拟化、雲計算與超融合的簡單總結

  實作此功能的VM軟體稱為Hypervisor,在OS基礎上再虛拟出OS的做法稱為“Hypervisor TYPE2”。

四、TYPE1(硬體虛拟化)

  前面的TYPE2虛拟化簡單實用,但是問題也很顯著,因為他是在OS的基礎上虛拟OS,是以執行效率必然是打了折扣,是以又有了TYPE1(技術實作有先後,但這兩個概念是一起提出來的,并将硬體虛拟化命名為TYPE1,并不是說硬體虛拟化先有而後有的OS虛拟化)。

下圖所示的TYPE1與TYPE2比較,架構上來說看起來差不多,實際上差别很大,相對來說TYPE1是現在主流的雲伺服器架構,阿裡雲的ECS就是這樣的産品。TYPE2則是我們本地常用的一種虛拟化方式,TYPE2再往前一步就是容器化了。

虛拟化、雲計算與超融合的簡單總結

  雲計算實踐中,TYPE1和TYPE2都會使用,主要看你掏多少錢。所謂私有雲、公有雲、混合雲的主流方案就是在TYPE1、TYPE2的基礎上打包面向使用者的界面,也即是所謂的Iaas。

  Hypervisor是一個總稱,具體到應用産品有VMware、Hyper-V、Xen、KVM等,雲服務商一般會選擇一個一到兩個廠商的産品,或自己研發來建構面向客戶的雲服務,但除了伺服器本身的資源虛拟化,雲廠商還要打包存儲、網絡、使用者界面等,是以也沒那麼容易。

  本地場景中,我們可以使用VMWare公司的技術,在伺服器上安裝VMWare vSphere來實作硬體虛拟化(TYPE1)。也可以在windows上安裝VMWare workstation實作OS虛拟化(TYPE2)。

五、超融合

1、TYPE1的存儲問題

  與前面的TYPE1、TYPE2一樣,超融合也是基于Hypervisor的一種虛拟技術不過它提出的核心概念是将運算資源與存儲資源先打包整合再虛拟出需要的虛拟資源。要說清楚這個邏輯,要先說說TYPE1模式下存在的一個問題即“獨立存儲的部署問題”。

虛拟化、雲計算與超融合的簡單總結

  如上圖所示,一般的雲架構會在實體機的基礎上再獨立部署一套或多套存儲陣列。主要原因是主控端磁盤空間有限,假設主控端配置如下:

    CPU:最多28核

    記憶體:最多512G記憶體

    硬碟:最多6個插槽,每個1T,合計6T(因為要做RAID實際可用可能隻有4T)

  以上配置,假設我們虛拟出7台虛拟伺服器,可得到的最低配置是:

    CPU:4核

    記憶體:30G

    硬碟:0.85T

  相對來說4核30G是夠用的,但是0.85T的存儲空間是肯定不夠的對吧,850G比大部分的筆記本存儲空間都少。是以主控端搭配存儲陣列是必須的。另外伺服器加CPU加記憶體都很容易的,但是加硬碟真的很難,因為機身設計空間的限制(限定了U數)伺服器能插磁盤的空間很有限。

  存儲陣列的部署、運維和管理不是個簡單的事情(甚至有點麻煩),特别是部署好以後想要變動就麻煩了,而且這個東西特别貴,随随便便搞一下就要上百萬了,伺服器才多少錢呢。

2、超融合架構

  下圖是一個簡單示例,超融合的特點在于它将接入系統内的所有資源先通過Hypervisor進行虛拟化,然後将計算資源、記憶體資源、存儲資源整合成一個資源池,最後從資源池中為使用者配置設定資源。

虛拟化、雲計算與超融合的簡單總結

  超融合系統的實體層通過内部的交換機和線路連通,形成一個内部資料互通網絡,對外使用虛拟化技術可以虛拟出任何需要的網絡結構。

  超融合架構下資料采用分布式存儲,并使用SSD緩存機制,即在HDD(普通磁盤)的基礎上部署10%-20%的SSD來進行緩存加速。

  超融合主要解決的是存儲的問題,他依然存在TYPE1所存在的主控端問題,即虛拟出的OS,其CPU依然依賴于主控端,當主控端故障時(單個節點)虛拟OS需要遷移到新的主控端,中間依然存在RTO時間。

  超融合所有資源全部基于x86伺服器,即新增計算或存儲資源隻需要在系統中新增一個x86伺服器的節點即可,這樣的好處是系統的結構清晰簡單,不存在外挂的其他實體系統,系統的擴充和維護也比較簡單。

3、超融合缺點

  資源擴充依賴于x86伺服器,那麼無法單獨新增存儲資源,即想要新增存儲時要在系統中加入一個完整的x86伺服器,而不能單獨隻加存儲。

  主流廠商都建議使用其專用一體機(x86伺服器)和交換機,建設時需要重新購買硬體,除了成本外,新興超融合廠商的伺服器(交換機)不一定是專業的,而傳統伺服器(交換機)廠商的超融合方案又很貴。

  部分廠商的方案是一體機架式的,隻提供有限的伺服器插槽,初期的部署容易上手,但後期的擴充存在限制。

  超融合在底層硬體上是分布式部署,但上層軟體層面卻是集中管理的,那麼就存在上層軟體BUG導緻整個系統不可用的風險。

  超融合架構本身會占用一部分的計算資源來實作其服務,

繼續閱讀