為什么使用云原生

速度

云原生架構(gòu)使用敏捷開發(fā)和DevOps夜牡,不但可以讓企業(yè)快速的開發(fā)產(chǎn)品,自動化部署產(chǎn)品堰怨,同時還能持續(xù)的更新產(chǎn)品芥玉,讓產(chǎn)品跟得上需求,甚至是引導需求备图,讓企業(yè)立于不敗之地灿巧。在傳統(tǒng)企業(yè)中,為應用提供環(huán)境和部署新版本花費的時間通常以天揽涮、周或月來計算抠藕。在使用了docker和k8s之后,部署時間可以縮短到幾分鐘甚至幾秒鐘蒋困。

安全與魯棒性

云原生架構(gòu)依托于容器編排工具(K8S)與微服務的組合盾似,應用就擁有了自動恢復能力、容錯能力雪标、故障隔離能力零院,讓應用時刻處于可用的狀態(tài)。

自動恢復

憑借可視化村刨、故障隔離和容錯能力告抄,我們擁有確定故障所需的工具,從故障中恢復嵌牺,并在進行錯誤檢 測和故障恢復的過程中為客戶提供合理的服務水平打洼。一些故障很容易識別:它們在每次發(fā)生時呈現(xiàn)出 相同的易于檢測的模式蜓洪。以服務健康檢查為例焦人,結(jié)果只有兩個:健康或不健康,up或down昔园。很多時 候枯饿,每次遇到這樣的故障時酝锅,我們都會采取相同的行動。在健康檢查失敗的情況下奢方,我們通常只需重 新啟動或重新部署相關(guān)服務搔扁。云原生應用程序架構(gòu)不要當應用在這些情況下無需手動干預。相反蟋字,他 們會自動檢測和恢復稿蹲。換句話說,他們給電腦裝上了尋呼機而不是人

容錯

僅僅將系統(tǒng)拆解為可以獨立部署的微服務還是不夠的;還需要防止出現(xiàn)錯誤的組件將錯誤傳遞它所依賴的組件上而造成級聯(lián)故障鹊奖。Mike Nygard 在他的《Release It! - Pragmatic Programmers》一書中描述了一些容錯模型苛聘,最受歡迎的是斷路器。軟件斷路器的工作原理就類似于電子斷路器(保險絲):斷開它所保護的組件與故障系統(tǒng)之間的回路以防止級聯(lián)故障。它還可以提供 一個優(yōu)雅的回退行為设哗,比如回路斷開的時候提供一組默認的產(chǎn)品推薦唱捣。我們將在“容錯”一節(jié)詳細討論該模型。

故障隔離

為了限制與故障帶來的風險网梢,我們需要限制可能受到故障影響的組件或功能的范圍震缭。如果每次亞馬遜 的推薦引擎掛掉后人們就不能再在亞馬遜上買產(chǎn)品,那將是災難性的战虏。單體架構(gòu)通常就是這種類型的 故障模式拣宰。云原生應用程序架構(gòu)通常使用微服務。通過將系統(tǒng)拆解為微服務烦感,我們可以將任何一個微 服務的故障范圍限制在這個微服務上巡社,但還需要結(jié)合容錯才能實現(xiàn)這一點。

可視化:

提供必要的工具手趣,以便可以在發(fā)生故障時看到它晌该。 我們需要觀測一切的能力, 建立一個“哪些是正陈淘”的概況气笙,檢測與標準情況的偏差(包括絕對值和變化率),并確定哪些組件導 致了這些偏差怯晕。功能豐富的指標、監(jiān)控缸棵、警報舟茶、數(shù)據(jù)可視化框架和工具是所有云原生應用程序體系結(jié)構(gòu)的核心。

彈性擴展

隨著需求的增加堵第,我們必須擴大服務能力吧凉。過去我們通過垂直擴展來處理更多的需求:購買了更強悍 的服務器。我們最終實現(xiàn)了自己的目標踏志,但是步伐太慢阀捅,并且產(chǎn)生了更多的花費。這導致了基于高峰 使用預測的容量規(guī)劃针余。我們會問”這項服務需要多大的計算能力?”然后購買足夠的硬件來滿足這個要求饲鄙。很多時候我們依然會判斷錯誤,會在如黑色星期五這類事件中打破我們的可用容量規(guī)劃圆雁。但是忍级, 更多的時候,我們將會遇到數(shù)以百計的服務器伪朽,它們的CPU都是空閑的轴咱,這會讓資源使用率指標很難 看。
創(chuàng)新型的公司通過以下兩個開創(chuàng)性的舉措來解決這個問題:

  • 它們不再繼續(xù)購買更大型的服務器,取而代之的是用大量的更便宜機器來水平擴展應用實例朴肺。這些機器更容易獲得窖剑,并且能夠快速部署。
  • 通過將大型服務器虛擬化成幾個較小的服務器戈稿,并向其部署多個隔離的工作負載來改善現(xiàn)有大型服務器的資源利用率西土。

隨著公有云基礎(chǔ)設施的出現(xiàn),這兩個舉措融合了起來器瘪。虛擬化工作被委托給云提 供商翠储,消費者只需要關(guān)注在大量的云服務器實例很想擴展它們的應用程序?qū)嵗W罱鹛郏鳛閼贸绦?部署的單元援所,發(fā)生了另一個轉(zhuǎn)變,從虛擬機轉(zhuǎn)移到了容器欣除。
由于公司不再需要大量啟動資金來部署軟件住拭,所以向云的轉(zhuǎn)變打開了更多創(chuàng)新之門。正在進行的維護 還需要較少的資本投入历帚,并且通過API進行配置不僅可以提高初始部署的速度滔岳,還可以最大限度地提 高我們應對需求變化的速度。
不幸的是挽牢,所有這些好處都帶有成本谱煤。相較于垂直擴展的應用,支持水平擴展的應用程序的架構(gòu)必須 不同禽拔。云的彈性要求應用程序的狀態(tài)短暫性刘离。我們不僅可以快速創(chuàng)建新的應用實例;我們也必須能夠 快速、安全地處置它們睹栖。這種需求是狀態(tài)管理的問題:一次性與持久性如何互相影響? 在大多數(shù)垂直 架構(gòu)中采用的諸如聚類會話和共享文件系統(tǒng)的傳統(tǒng)方法并不能很好地支持水平擴展硫惕。
云原生應用程序架構(gòu)的另一個標志是將狀態(tài)外部化到內(nèi)存數(shù)據(jù)網(wǎng)格,緩存和持久對象存儲野来,同時保持 應用程序?qū)嵗旧砘旧鲜菬o狀態(tài)的恼除。無狀態(tài)應用程序可以快速創(chuàng)建和銷毀,以及附加到外部狀態(tài)管 理器和脫離外部狀態(tài)管理器曼氛,增強我們響應需求變化的能力豁辉。當然這也需要外部狀態(tài)管理器自己來擴 展。大多數(shù)云基礎(chǔ)設施提供商已經(jīng)認識到這一必要性搪锣,并提供了這類服務的健康管理秋忙。

屏蔽底層差異

因為使用了容器化技術(shù),應用運行于容器之中构舟,應用就不需要考慮底層硬件的差異灰追,只要是能運行容器鏡像的硬件都可以運行程序堵幽,大大簡化了開發(fā)工作量。同時對運維人員也非常友好弹澎,不需要再為環(huán)境問題而苦惱朴下。

云原生架構(gòu) = 微服務 + 容器化 + DevOps + 持續(xù)交付

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市苦蒿,隨后出現(xiàn)的幾起案子殴胧,更是在濱河造成了極大的恐慌,老刑警劉巖佩迟,帶你破解...
    沈念sama閱讀 212,816評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件团滥,死亡現(xiàn)場離奇詭異,居然都是意外死亡报强,警方通過查閱死者的電腦和手機灸姊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來秉溉,“玉大人力惯,你說我怎么就攤上這事≌偎唬” “怎么了父晶?”我有些...
    開封第一講書人閱讀 158,300評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長弄跌。 經(jīng)常有香客問我甲喝,道長,這世上最難降的妖魔是什么铛只? 我笑而不...
    開封第一講書人閱讀 56,780評論 1 285
  • 正文 為了忘掉前任俺猿,我火速辦了婚禮,結(jié)果婚禮上格仲,老公的妹妹穿的比我還像新娘。我一直安慰自己诵冒,他們只是感情好凯肋,可當我...
    茶點故事閱讀 65,890評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著汽馋,像睡著了一般侮东。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上豹芯,一...
    開封第一講書人閱讀 50,084評論 1 291
  • 那天悄雅,我揣著相機與錄音,去河邊找鬼铁蹈。 笑死宽闲,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播容诬,決...
    沈念sama閱讀 39,151評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼娩梨,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了览徒?” 一聲冷哼從身側(cè)響起狈定,我...
    開封第一講書人閱讀 37,912評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎习蓬,沒想到半個月后纽什,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,355評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡躲叼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,666評論 2 327
  • 正文 我和宋清朗相戀三年芦缰,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片押赊。...
    茶點故事閱讀 38,809評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡饺藤,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出流礁,到底是詐尸還是另有隱情涕俗,我是刑警寧澤,帶...
    沈念sama閱讀 34,504評論 4 334
  • 正文 年R本政府宣布神帅,位于F島的核電站再姑,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏找御。R本人自食惡果不足惜元镀,卻給世界環(huán)境...
    茶點故事閱讀 40,150評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望霎桅。 院中可真熱鬧栖疑,春花似錦、人聲如沸滔驶。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽揭糕。三九已至萝快,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間著角,已是汗流浹背揪漩。 一陣腳步聲響...
    開封第一講書人閱讀 32,121評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留吏口,地道東北人奄容。 一個月前我還...
    沈念sama閱讀 46,628評論 2 362
  • 正文 我出身青樓冰更,卻偏偏與公主長得像,于是被迫代替她去往敵國和親嫩海。 傳聞我的和親對象是個殘疾皇子冬殃,可洞房花燭夜當晚...
    茶點故事閱讀 43,724評論 2 351

推薦閱讀更多精彩內(nèi)容