Web-Scale IT 我之見!

Gartner 曾在發(fā)表過的一篇文章中表示,到2017年,全球50%的企業(yè)將使用Web-Scale IT 架構(gòu)。下面我們來看看 Andre Leibovici 對 Web-Scale IT 的看法:

Web-scale IT 不僅僅是一個流行詞,更是一種設(shè)計數(shù)據(jù)中心和軟件架構(gòu)的方法,它體現(xiàn)了一種多維概念,包含可擴(kuò)展性、一致性、容忍度和版本控制等。

Web-scale 描述了現(xiàn)代架構(gòu)的趨勢,即增長(遠(yuǎn))大于線性速率。Web-scale 系統(tǒng)能夠快速有效地進(jìn)行處理,并避免在關(guān)鍵時刻需要重新架構(gòu)的瓶頸問題。

Web-scale 架構(gòu)和屬性并不是一個新鮮的詞條,它們已經(jīng)在一些大型的網(wǎng)絡(luò)公司中系統(tǒng)地使用了,比如谷歌、Facebook 和亞馬遜。然而對比以往最大的區(qū)別就在于,這種可擴(kuò)展到海量計算規(guī)模的架構(gòu),以往只出現(xiàn)在大型互聯(lián)網(wǎng)公司而當(dāng)下已通過專門的虛擬化定制方法走入主流企業(yè)。

在一個內(nèi)部討論中,Nutanix CEO Dheeraj Pandey 總結(jié)了關(guān)于 Web-scale 架構(gòu)的重要概念。而本文對其中一些思想進(jìn)行了引用,并擴(kuò)展到其他不同領(lǐng)域。

同時,這里需要注意的是,高擴(kuò)展性的分布式系統(tǒng)對筆者來說也是一個全新的領(lǐng)域,而筆者也會分享自己的學(xué)習(xí)收獲。

首先要記住的是:Web-scale 不只適用于 SDS(軟件定義存儲);它也是大型分布式系統(tǒng)的架構(gòu)模型。這里有一個視頻講述了什么是 Web-Scale IT

通過軟件途徑,讓大量運(yùn)行著標(biāo)準(zhǔn) x86 硬件的主機(jī)可以同時做一件事情。這是 Web-scale 第一次與 SDDC(軟件定義數(shù)據(jù)中心)交互,在沒有計算機(jī)硬件做支撐的情況下。許多服務(wù)已經(jīng)采用這種辦法,包括 SDN(軟件定義網(wǎng)絡(luò))、虛擬服務(wù)和 SDS(軟件定義存儲)。

對于管理服務(wù)的無單點(diǎn)故障和瓶頸問題,在架構(gòu)上應(yīng)有所考慮。故障的容忍度是架構(gòu)穩(wěn)定、可擴(kuò)展分布式系統(tǒng)的關(guān)鍵。發(fā)生故障時的運(yùn)行能力也是可用性的關(guān)鍵。像 vector clocks、two-phase commit、consensus algorithms、leader elections、eventual consistency、multiple replicas、dynamic flow control、rate limiting、exponential back-offs、optimistic replication、automatic failover、hinted-handoffs、data scrubbing 等技術(shù)是構(gòu)成分布式系統(tǒng)處理故障能力的要素。

Web-scale 系統(tǒng)應(yīng)該提供一個靈活構(gòu)建系統(tǒng)的服務(wù),并具備并行構(gòu)建的能力(http://en.m.wikipedia.org/wiki/Embarrassingly_parallel)。并行方法能夠進(jìn)行無干擾地接近傳統(tǒng)的顛覆性任務(wù),例如滾動或叉式升級、不間斷集群和所有工作流全部在線。

Web-scale 系統(tǒng)應(yīng)該能夠被擴(kuò)展,并且繼續(xù)像一個單元那樣正常運(yùn)行。而不是依靠運(yùn)行單元的多部署,這些單元不能自行擴(kuò)展。

Web-scale 允許獨(dú)立架構(gòu),它需要容忍故障,并提供性能、可用性保障和服務(wù)級協(xié)議。

Web-scale 系統(tǒng)應(yīng)該為內(nèi)部和數(shù)據(jù)中心通信提供用于完全控制和基于 HTTP 服務(wù)自動化的編程接口。這些 APIs需要為異步請求響應(yīng)支持延時和容錯協(xié)議。

Web-scale 系統(tǒng)應(yīng)該提供自定義(和版本化)的對象。在 SDS 用例,具有編碼能力的自定義磁盤高效地格式化和序列化結(jié)構(gòu)數(shù)據(jù),且是可擴(kuò)展格式,比如 protobuf、Avro 等。這樣,可以不用經(jīng)常地更新磁盤數(shù)據(jù)。考慮到規(guī)模,Web-scale 不能假定只有一次數(shù)據(jù)更新。

Web-scale 系統(tǒng)應(yīng)具有自描述(和版本識別)服務(wù),這樣分布式系統(tǒng)的不同部分可以在不同版本下進(jìn)行通信,不用期待所有的部分一次升級。

分析軟件為了減少人機(jī)交互。在大型網(wǎng)絡(luò)公司中,Web-scale 基礎(chǔ)設(shè)施與每臺機(jī)器管理的 SRE 是1:10000的比例。一般的公司是1:500的比例。這個巨大的差距只能由分析和自動化來填補(bǔ)。

嚴(yán)格且最終一致的一致性模型,對 CAP 原理有清楚的理解(一致性、可用性和分區(qū)容錯性)(http://en.m.wikipedia.org/wiki/CAP_theorem)。筆者發(fā)現(xiàn) Julian Browne 寫的一篇文章是學(xué)習(xí)更多 CAP 原理的好資料。

enter image description here

此外,另一個好的例子是 vCenter 服務(wù)器。vCenter 應(yīng)該從頭設(shè)計成為一個分布式管理平臺,它能夠利用完全無共享結(jié)構(gòu),提供零故障操作環(huán)境。眾所周知,vCenter 服務(wù)器是 vSphere 集群的關(guān)鍵性部件。當(dāng)其不可用時,可能嚴(yán)重影響運(yùn)作。微軟 Hyper-V 和 SCVMM 也是這樣的。

當(dāng)管理程序是獨(dú)立單元,不需要管理服務(wù)器即可運(yùn)行時,就不會有缺乏管理的問題。

如果 vCenter 用 web-scale 原理設(shè)計,它不是集群虛擬設(shè)備,就是在管理程序核心進(jìn)行架構(gòu)。添加到集群的節(jié)點(diǎn)越多,處理方式就越靈活。并且當(dāng)有一個節(jié)點(diǎn)不可用,其他節(jié)點(diǎn)能夠成為管理端點(diǎn)。

Nutanix 選擇從頭架構(gòu)數(shù)據(jù)和控制層,使其成為一個具有上述性能和指導(dǎo)方針的 Web-scale 分布式系統(tǒng)。這些指導(dǎo)方針不僅保證彈性、可擴(kuò)展性、一致性和容錯性,而且確保它是一個引導(dǎo)將來數(shù)據(jù)中心創(chuàng)新的平臺。

原文:understanding-web-scale-properties,作者 Andre Leibovici 是 VMware 架構(gòu)師,兼職作家和博主。 本文系 OneAPM 工程師編譯整理。

Cloud Insight 集監(jiān)控、管理、計算、協(xié)作、可視化于一身,幫助所有 IT 公司,減少在系統(tǒng)監(jiān)控上的人力和時間成本投入,讓運(yùn)維工作更加高效、簡單。本文由 OneAPM 工程師翻譯整理,想閱讀更多技術(shù)文章,請訪問 OneAPM 官方技術(shù)博客

本文轉(zhuǎn)自 OneAPM 官方博客

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 新年伊始,在總結(jié)過去一年 IT 行業(yè)變化和發(fā)展的同時,不少企業(yè)更關(guān)注未來一年甚至幾年的行業(yè)趨勢。Gartner 于...
    OneAPM閱讀 611評論 1 3
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,872評論 25 709
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,533評論 19 139
  • 可擴(kuò)展Web架構(gòu)與分布式系統(tǒng) - 全棧開發(fā)者 http://www.admin10000.com/documen...
    葡萄喃喃囈語閱讀 966評論 0 6
  • 有時候你會在一個固定的時間點(diǎn)上徘徊,那是因為你不想去忘記;有時候你會故意的猶豫不前,那是因為你自己沒有足夠的...
    下劃線先生閱讀 413評論 0 0

友情鏈接更多精彩內(nèi)容