AWS Nitro:服務(wù)器硬件會淘汰,但EC2的老實(shí)例不能放棄

來源: 百家號
作者:云體驗(yàn)師
時間:2021-12-12
14706
為了不強(qiáng)迫用戶進(jìn)行遷移,亞馬遜云科技(以下簡稱AWS)讓Nitro進(jìn)行了許多騷操作,用新服務(wù)器繼續(xù)提供舊的實(shí)例類型,讓用戶能繼續(xù)用一直就在用的實(shí)例。

內(nèi)容提要:

2021年,距離第一個EC2實(shí)例上線已經(jīng)過了十五年了,漫長的發(fā)展歷程中,自然會有很多EC2實(shí)例都是基于老服務(wù)器來打造的,隨著時間的推移,老服務(wù)器總是要淘汰的,硬件變了實(shí)例也不得不變,但不是所有用戶都想遷移到新實(shí)例的。

為了不強(qiáng)迫用戶進(jìn)行遷移,亞馬遜云科技(以下簡稱AWS)讓Nitro進(jìn)行了許多騷操作,用新服務(wù)器繼續(xù)提供舊的實(shí)例類型,讓用戶能繼續(xù)用一直就在用的實(shí)例。AWS的這一做法讓用戶用的更放心,少給用戶找麻煩,又掃除了一個用戶上云的擔(dān)憂點(diǎn)。

正文:

很多人都經(jīng)歷過計劃報廢。

PC時代經(jīng)典的“安迪比爾定律”逼著你不斷買新電腦,裝新的微軟操作系統(tǒng)。智能手機(jī)時代,過保的iOS用戶深刻體會到了老系統(tǒng)有多香,新系統(tǒng)有多坑。

總之一句話,老的產(chǎn)品服務(wù)終將淘汰。

2021年,云計算也發(fā)展了十幾年了,云計算的更多問題也浮出水面,雖然說云服務(wù)的用戶不用管理服務(wù)器硬件了,但硬件總是要有人管的,硬件會老化,會出問題,很難想象一臺十幾年工齡的服務(wù)器還能矜矜業(yè)業(yè)正常工作。

于是問題就出現(xiàn)了,用戶難免會擔(dān)心,那些基于老服務(wù)器打造的實(shí)例能否繼續(xù)提供服務(wù)呢?因?yàn)橛行?yīng)用運(yùn)行的好好的,就不想做任何改動。

云廠商也在頭疼,運(yùn)行這些老硬件越來越麻煩,新員工看見這些快趕上自己年齡的硬件也頭疼,萬一壞了,想買個配件都搜不到了,多麻煩??!

在正式介紹前,介紹個有趣的人:

下圖中的這個男人是一位杰出工程師,他有一艘名為“Dirona”的船,船上住著他的妻子和一只貓,這艘船偶爾會停在AWS西雅圖總部的港口,他被成為“工程師中的海賊王”,他就是AWS副總裁,杰出工程師James Hamilton。

04F9E885-F0B6-43B7-9253-2A399EC906E6.jpeg

圖片來自AWS視頻博客

James Hamilton有一個博客,博客的內(nèi)容有兩大類,一類是關(guān)于船的事兒,一類是關(guān)于AWS產(chǎn)品技術(shù)的事兒,AWS官方知乎博文里說James Hamilton是少數(shù)獲許在博客上發(fā)表自己重大想法的人之一。

作為AWS的一位傳奇人物,James Hamilton總給人神龍見首不見尾的感覺,最近,這個許久不更新的博客介紹了關(guān)于Nitro的新動向,關(guān)于Nitro為什么以及如何支持舊實(shí)例的。

FB01DAE5-8F08-4E04-B577-698F53DFFC1A.jpeg

從EC2誕生到Nitro出現(xiàn)

2006年8月25日,AWS第一個EC2實(shí)例開啟了公測,最開始這個服務(wù)連個名字都沒有,后來起了個名字叫“m1.Small”,熟悉云主機(jī)的朋友都知道,這一命名方式被借鑒的很廣泛了。

首批用戶能以每小時10美分的價格使用相當(dāng)于1.7G主頻的至強(qiáng)處理器,1.75GB內(nèi)存以及160GB硬盤盒250Mb/s帶寬的主機(jī),筆者本人對于這個價格沒有太大的直觀感受。

技術(shù)實(shí)現(xiàn)上,因?yàn)楫?dāng)時比較流行的虛擬化方案就是Xen,所以,該主機(jī)使用了Xen虛擬化技術(shù)來提供實(shí)例服務(wù),后來的十多年里,由于用的人越來越多,EC2又發(fā)布了27個基于Xen技術(shù)的實(shí)例。

早期的實(shí)例用的都是用虛擬化或者仿真設(shè)備把硬件抽象成實(shí)例,當(dāng)時用的也很好,但是隨著存儲和網(wǎng)絡(luò)的不斷發(fā)展,就需要預(yù)留更多CPU核心來模擬這些設(shè)備,當(dāng)規(guī)模比較小的時候問題不大,當(dāng)規(guī)模大到一定程度,問題就變得非常明顯了,性能損耗的太多了。

2017年,AWS Nitro System發(fā)布,這是AWS虛擬化技術(shù)的領(lǐng)銜主演,Nitro可以把許多負(fù)載從CPU offload到專用設(shè)備上,提供高性能的網(wǎng)絡(luò)、存儲以及安全功能。

C5實(shí)例是第一個完全支持Nitro的EC2實(shí)例,隨后,AWS又陸續(xù)推出了45個采用Nitro的實(shí)例,這些實(shí)例的存儲和網(wǎng)絡(luò)性能大幅提升,安全性也大大提升。

博文中提到,AWS有120多萬個用戶仍在使用基于Xen技術(shù)的實(shí)例,AWS并沒有強(qiáng)行讓用戶進(jìn)行遷移,還是挺尊重用戶意愿的,用戶對于采用Xen技術(shù)的實(shí)例性能表現(xiàn)很滿意,也不愿意升級操作系統(tǒng)來支持各種新技術(shù)。

眾所周知,早期的AMI不支持NVMe,也無法與現(xiàn)在的Nitro系統(tǒng)兼容,眼看著運(yùn)維管理這些舊設(shè)備和舊系統(tǒng)越來越麻煩,EC2團(tuán)隊通過改造Nitro來支持Xen實(shí)例,老用戶看到這里是不是應(yīng)該鼓掌?

Nitro提供了解決之道,但這么做挑戰(zhàn)有很多:

半虛擬化(PV)設(shè)備——Xen實(shí)例通過半虛擬化設(shè)備來訪問網(wǎng)絡(luò)和存儲,然而,Nitro并不支持這些設(shè)備,Nitro需要在不影響當(dāng)前工作負(fù)載的情況下,添加對這些PV設(shè)備的支持。

Hypervisor接口——半虛擬化(PV)設(shè)備是依賴于Hypervisor接口的軟件結(jié)構(gòu),這些接口可通過超級調(diào)用(hypercalls),或者guset系統(tǒng)和hypervsior之間共享的內(nèi)存進(jìn)行訪問。所以,Nitro要想支持這些PV設(shè)備,就必須提供這些接口。

要想做到這點(diǎn),就必須讓Xen實(shí)例和Nitro Hypervisior之間的交互與Xen實(shí)例和Xen Hypervisior之間的交互行為保持完全一致,讓guest系統(tǒng)看不到兩者之間有任何區(qū)別。幸運(yùn)的是,Linux社區(qū)已經(jīng)完成了這方面的相關(guān)工作,使得Nitro能提供支持。

虛擬硬件環(huán)境—為了確保舊的AMI能正常工作,Nitro還必須得模仿舊硬件,而硬件仿真功能正是Nitro的關(guān)鍵功能之一。

與此同時,通過修改Nitro的Hypervisior來為實(shí)例提供一個與舊硬件完全相同的硬件環(huán)境。如果在Nitro上啟動舊實(shí)例,則CPU指令集、寄存器、網(wǎng)絡(luò)和I/O設(shè)備以及消息傳遞接口不會有任何差異。

硬件加速器–某些實(shí)例類型(如G2、G3、P2、P3和F1)使用了GPU或FPGA加速器。這些加速器沒有支持虛擬化,所以就很難進(jìn)行模擬。于是,Nitro不支持這些含有GPU和FPGA加速器的舊實(shí)例類型。

新老用戶都能享受到

從2022年開始,新的M1、M2、M3、C1、C3、R3、I2和T1實(shí)例的用戶將用上Nitro技術(shù),現(xiàn)有的實(shí)例也將遷移到Nitro支持的實(shí)例上,用戶不會看到兩者之間的區(qū)別,所有工作負(fù)載都將繼續(xù)像以前一樣運(yùn)行。

Xen on Nitro可以讓用戶繼續(xù)在老實(shí)例上運(yùn)行舊的工作負(fù)載,而不用在實(shí)例之間做遷移。對于AWS來說,本來直接淘汰這些實(shí)例會更容易,但AWS因?yàn)榕聻橛脩魩眍~外負(fù)擔(dān)選擇了一條更麻煩的道路。

亞馬遜云科技顧凡:創(chuàng)新的空間還大的很

亞馬遜云科技大中華區(qū)產(chǎn)品部總經(jīng)理顧凡在媒體溝通會上介紹稱,“從15年前首次推出Amazon EC2服務(wù)以來,亞馬遜云科技一直在快速地創(chuàng)新,如今提供超過475種不同的計算實(shí)例類型,遠(yuǎn)超過其它任何云服務(wù)提供商。”

顧凡也表示,云計算創(chuàng)新的空間還大得很,亞馬遜云科技還想進(jìn)一步幫助客戶在不同的負(fù)載下提供最佳性價比。為此,亞馬遜云科技必須更加深入地思考和重新定義計算實(shí)例,而這一切離不開芯片。

顧凡在演講中列舉了幾個自研芯片,第一個提到的就是Nitro產(chǎn)品線,如今Nitro已經(jīng)發(fā)展到了第四代,此外還提到了機(jī)器學(xué)習(xí)訓(xùn)練和推理芯片,以及關(guān)注度極高的Graviton。

立即登錄,閱讀全文
AWS
版權(quán)說明:
本文內(nèi)容來自于百家號,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個人觀點(diǎn),不代表快出海對觀點(diǎn)贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質(zhì)服務(wù)商推薦
更多
個人VIP