神龙架构没那么难理解—图解世界领先的阿里云神龙架构(一)缘起
1 概述
1.1 神龍架構的特點
阿里云官方文檔對于神龍架構的描述如下:
保留了普通云服務器的資源彈性,并因嵌套虛擬化技術讓彈性裸金屬服務器保留了物理機的體驗。
1.2 理解上的難點
同時擁有云服務器的資源彈性和保留了物理機體驗的特點容易讓用戶在需要深入了解神龍架構時產生一個疑問:神龍架構到底是虛的還是實的,如果虛實融合又怎么來理解什么是虛實融合?通過什么手段做到的?
1.3 本文重點說明的問題
結合以上神龍架構的特點和理解上的難點,本文詳細的對于神龍架構進行研究分析,說明神龍架構是如何做到同時擁有云服務器的資源彈性和保留了物理機體驗的目標的。
2 為什么需要發明神龍架構
2.1 以搬磚為例說明虛擬化技術的特點
把物理機變成虛擬機的這個技術,就是“虛擬化”。比如我家里裝修有100塊磚需要搬運,鄰居家也在裝修同樣有100塊磚需要搬運,我們各請了50個搬運工,當工人到達時發現鄰居家的主人在睡覺,因此他家的50個工人只能等他睡醒再搬磚,我家請的50個工人則可以直接幫我開始搬磚,情況如下圖所示:
正好兩家的工人來自于同一個公司于是包工頭過來看了一下,發現鄰居家的工人在空閑狀態覺得效率很低。于是決定既然鄰居家的工人目前空閑于是一起來幫我家搬磚。和我商量費用并不增加,工人增加50個,我自然非常開心,覺得多給了我家50個工人。于是鄰居家的工人也過來開始幫我家搬磚如下圖所示,我們稱這個100個工人為計算節點:
包工頭心里在想一個事情,他馬上需要去其他工地,現在100個工人都在幫我家搬磚,因此進度很快,但是鄰居萬一睡醒了也要開始搬磚怎么辦,于是他抽了一個工人甲出來看著鄰居家動靜,一旦鄰居家醒了需要開始搬磚,則把暫時幫我家搬磚的工人還給他并且工人數量至少50個。
于是甲離開了搬磚行動,專門看著鄰居家主人防止他突然醒過來,幫我家搬磚的工人數目前為99個。這個負責關心鄰居家主人睡覺情況并負責后續把工人還給他的甲,我們稱他為管理節點。
鄰居家主人睡醒了,甲于是立即從我家將50個工人安排到鄰居家開始搬磚,同時和我商量,因為之前我家搬磚的勞動力多了一倍,因此1000塊磚被搬了只剩50塊了,而鄰居家的磚還是1000塊,因此除了鄰居雇傭的50個工人外能否我家只留5個工人,我自己雇傭的45個工人也幫鄰居家搬磚,我欣然同意,因此兩家搬磚的工人數再一次改變如圖所示:
這個整個過程即為彈性計算的本質,前提即是虛擬化,如果缺少了虛擬化技術,代表我和鄰居家雇傭的工人來自于兩個公司,沒有人來統籌決定每家搬磚的工人數,因此即使鄰居在睡覺,他雇傭的工人空閑著也無法過來幫我搬磚,能夠做到搬磚的工人靈活調配的前提就是將兩家人家雇傭的工人進行統籌考慮再進行分配。對于用戶的好處在于,我和鄰居家都有1000塊磚要搬,但是搬磚的時間不同,我在搬磚的時候他在睡覺而他睡醒需要搬磚的時候我家的磚已經快搬完了,同樣100個工人的勞動力在不同的時間段里被我們用到了極致。
2.2 虛擬化技術的瓶頸
從以上搬磚的例子中可以發現,因為工人甲負責協調我和鄰居家搬磚的工人安排因此他本身不再負責搬磚,也就是100個勞動力中抽調了1個工人的勞動力來做管理工作,實際搬磚的勞動力為99個。按照原來雇傭的勞動力,我家雇傭了50個工人,鄰居家雇傭了50個工人,總的勞動力為100人,因此實際搬磚的勞動力少了1個,但因為我和鄰居家搬磚時間的錯開并且以我們的感受都享受到了遠大于50個工人的勞動力(實際我家99個,鄰居醒來后他家為94個)因此滿足我們的需求,也就并不太在意100個工人中有1個來作為協調我們兩家工人數的管理人員。隱患在于如果我家磚搬完了,鄰居家的搬磚工人上升到99個,他發現需要再快一點,要求100個工人搬磚,這時候我和鄰居將同時發現勞動力因為有人去做管理工作而少了一個,我們兩家總共花了100個工人的錢,卻總共只能享受到99個工人的勞動力。
事實上這1個管理人員確實是整個體系中無法解決的瓶頸,代表只要采用虛擬化和彈性計算,就代表100個勞動力必須選擇1個管理人員,實際上只能有99個勞動力進行搬磚。反映到云計算上就是只要物理服務器采用虛擬化技術,就必須配置管理節點,因此單臺物理服務器所提供的計算力在原來的基礎上需要打折扣,造成物理服務器基礎上采用虛擬化技術后生成的云服務器的計算性能必然比物理服務器要差。雖然用戶因為云服務器集群的彈性計算功能未必能感受到。
這個瓶頸原來在云服務提供商中都存在,似乎成為了必然,因為覺得沒有辦法解決因需要管理節點而造成的總計算力損失因此也沒有云服務商去討論深究這個問題。而阿里云神龍架構即破天荒的在這個瓶頸問題上開始動刀子,想做到的目標就是既然100個工人搬磚,就要全部搬磚,但同時也需要有手段來管理和控制我家和鄰居家不同時間搬磚的工人數。
原文鏈接
本文為阿里云原創內容,未經允許不得轉載。
總結
以上是生活随笔為你收集整理的神龙架构没那么难理解—图解世界领先的阿里云神龙架构(一)缘起的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里云人脸识别公测使用说明
- 下一篇: 支付宝这些程序员要逆天,滑板、画漫画、写