<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Netflix猿猴軍團(Simian Army) | IDCF

          共 2208字,需瀏覽 5分鐘

           ·

          2020-10-20 10:03


          Source: Netflix Technology Blog, Jul 19, 2011
          作者:Yury lzrailevsky, 云系統(tǒng)基礎(chǔ)設(shè)施總監(jiān);Ariel Tseitlin, 云解決方案總監(jiān)
          譯者:林偉丹
          云是關(guān)于冗余和容錯的。由于沒有任何一個組件能夠保證100%的正常運行時間(即使是最昂貴的硬件,最終也會出現(xiàn)故障),我們必須設(shè)計一個云架構(gòu),在這種架構(gòu)中,單個組件可以出現(xiàn)故障而不會影響整個系統(tǒng)的可用性。
          實際上,我們必須做到,比我們最薄弱的那個環(huán)節(jié)更強大。我們可以使用一些技術(shù),比如依賴性故障時的優(yōu)雅降級,以及節(jié)點、機架、數(shù)據(jù)中心、可用區(qū)乃至區(qū)域的冗余部署。然而,僅僅設(shè)計一個容錯架構(gòu)是不夠的。我們必須不斷地測試自己是否有能力在這些“難得一遇”的故障中生存下來。
          想象一下輪胎癟了。即使你的后備箱里有備胎,你知道它是否充氣了嗎?你有弄它的工具嗎?最重要的是,你還記得怎么做才是正確的嗎?有一種方法,可以確保你能半夜在下雨的高速公路上處理爆胎的問題,那就是:每個星期天下午,在你的輪胎上捅一個洞,然后進行更換輪胎的練習。在現(xiàn)實世界中,這既昂貴又耗時,但在云上是(幾乎)免費的,還能自動化實現(xiàn)。
          這就是我們在構(gòu)建“混沌猴子(Chaos Monkey)”時的理念。它是一個工具,可以隨機禁用我們的生產(chǎn)實例,以確保我們能夠在這種常見的故障類型中生存,而不會對客戶造成任何影響。這個名字源于這樣一個想法:在數(shù)據(jù)中心(或云區(qū)域)釋放一只帶武器的野猴子,會隨機擊落實例(instance)和啃穿電纜,而在此期間,我們持續(xù)、不間斷地為客戶提供著服務(wù)。
          通過在工作日中運行的混沌猴子,在一個仔細監(jiān)控的環(huán)境中,工程師也隨時待命解決任何問題,我們?nèi)匀豢梢晕£P(guān)乎系統(tǒng)弱點的教訓,并建立自動恢復機制來進行處理。因此,當下一次在星期天凌晨3點出現(xiàn)實例故障時,我們甚至都不會注意到它。
          受到混沌猴子成功運行的啟發(fā),我們已經(jīng)開始創(chuàng)造新的猿猴,它們可以引發(fā)各種故障或檢測異常情況,并測試我們的生存能力。這是一個虛擬的“猿猴軍隊(Simian Army)”,保持我們的云的安全、可靠和高可用性。
          • 延遲猴子(Latency Monkey)在我們的RESTful客戶端-服務(wù)器通信層中,引入人工延遲來模擬服務(wù)降級,并衡量上游服務(wù)是否適當?shù)仨憫?yīng)。此外,通過制造非常大的延遲,我們可以模擬一個節(jié)點甚至整個服務(wù)的停機時間(并測試我們在這種情況下的生存能力),而不必從物理上關(guān)閉這些實例。這在測試新服務(wù)的容錯性時尤其有用,方法是模擬其依賴項的故障,而不會導致這些依賴項對系統(tǒng)的其余部分不可用。
          • 一致性猴子(Conformity Monkey)發(fā)現(xiàn)不符合最佳實踐的實例,并關(guān)閉它們。例如,我們知道,如果我們發(fā)現(xiàn)有實例不屬于自動擴容組,那么就可能會有麻煩的事情發(fā)生。我們關(guān)閉它們,是為了讓服務(wù)所有者有機會重新啟動它們。
          • 醫(yī)生猴子(Doctor Monkey)通過運行在每個實例上的健康檢查,并監(jiān)視外部的其他健康跡象(例如CPU負載),來檢測不健康的實例。一旦檢測到不健康的實例,它們將被從服務(wù)中移除,并在給服務(wù)所有者一些時間來查找問題根因之后,最終將被終止掉。
          • 看門猴子(Janitor Monkey)確保我們云環(huán)境的運行沒有混亂和浪費。它搜索未被使用的資源,并清掉它們。
          • 安全猴子(Securiy Monkey)是一致性猴子的延伸。它會發(fā)現(xiàn)安全違規(guī)項或漏洞(如配置不當?shù)腁WS安全組),并終止有問題的實例。它還確保我們所有的SSL和DRM認證都是有效的,并且不會過期。
          • 10-18 猴子(10-18 Monkey,本地化-國際化的縮寫,或110n-i18n)使用不同的語言和字符集,檢測服務(wù)于多個地理區(qū)域客戶實例中的配置和運行時問題。
          • 混沌大猩猩(Chaos Gorilla)類似于混沌猴子,但模擬了整個Amazon可用區(qū)(availability zone)的中斷。我們想驗證我們的服務(wù)是否能自動重新均衡到功能可用區(qū),而不會導致用戶可見的影響或手動干預。
          我們身邊的Netflix猿猴軍團不斷壯大,隨著它們持續(xù)地測試我們對各種故障的應(yīng)變能力,對于處理生產(chǎn)環(huán)境中不可避免的故障、以及盡量減少或消除這些故障對用戶的影響,我們對自己的能力感覺更加自信。
          云模型對我們(以及這個行業(yè)的其他人)來說,都是全新的;容錯的工作正在進行中,我們有辦法充分實現(xiàn)它的好處。猿猴軍團的一部分已經(jīng)構(gòu)建好,但還有許多地方有希望優(yōu)化,等待有才華的工程師加入這項工作并使之成為現(xiàn)實。?
          新猿猴的創(chuàng)意,來得比我們能跟上的速度更快。如果你有想法,我們很樂意聽到!猿猴軍團是我們推出的眾多舉措之一,旨在提高我們服務(wù)的可靠性,并為客戶提供持續(xù)不斷的娛樂。
          金九銀十,IDCF【冬哥有話說】10月特別邀請到3位來自銀行的嘉賓,分享民生銀行、中信銀行、工商銀行的DevOps探索與實踐。
          10月22日(周四)晚8點,【冬哥有話說之金九銀十】邀請到中信銀行軟件開發(fā)中心工程效率域CTO李紅濤老師分享《中信銀行DevOps探索與實踐》,識別下圖二維碼回復“金九銀十”即可獲取直播地址~

          瀏覽 123
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  人人做人人爱青青草视频 | 色呦哟无码精品一区二区三区 | 大香蕉亚洲在线 | 91精品成人电影 | 欧美另类极品 |