日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

SRE体系及稳定性建设

發(fā)布時(shí)間:2023/12/29 编程问答 63 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SRE体系及稳定性建设 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

SRE體系及穩(wěn)定性建設(shè)

  • SRE
    • SRE概念
    • SRE的工作職責(zé)
  • 大型互聯(lián)網(wǎng)的5個(gè)生命周期中SRE的職責(zé)
    • 代碼編寫
    • 資源規(guī)劃
    • 系統(tǒng)上線
    • 運(yùn)行保障
    • 系統(tǒng)下線
  • 穩(wěn)定性建設(shè)
    • SLA
    • MTTR
    • 故障管理(三段式)
      • 故障前
      • 故障中
      • 故障后

SRE

SRE概念

SRE在國(guó)內(nèi)現(xiàn)在也叫應(yīng)用運(yùn)維,是面向用戶穩(wěn)定性的,也就是說對(duì)用戶的服務(wù)質(zhì)量負(fù)責(zé),這也給了SRE更高的要求,要有全局視角,要對(duì)系統(tǒng)的全生命周期進(jìn)行管理,把質(zhì)量和成本工作做到前面,需要一系列的流程.制度.規(guī)范和一系列的工具提高管理、質(zhì)量、自動(dòng)化效率。

SRE以用戶穩(wěn)定性為目標(biāo),業(yè)務(wù)對(duì)資源的規(guī)劃管理周轉(zhuǎn)效率、持續(xù)集成上線效率、質(zhì)量管理效率等。

SRE的工作職責(zé)

  • 1、保障線上服務(wù)的穩(wěn)定性
  • 2、建設(shè)工具/平臺(tái)/基礎(chǔ)設(shè)施 提升效率
  • 3、用技術(shù)手段來控制、優(yōu)化服務(wù)的運(yùn)行成本

大型互聯(lián)網(wǎng)的5個(gè)生命周期中SRE的職責(zé)

代碼編寫

SRE的主要工作是搭建和維護(hù)代碼管理系統(tǒng),為CI/CD做好準(zhǔn)備,目前最常用的就是GitLab了。

資源規(guī)劃

  • 1、方案評(píng)估
    根據(jù)需求規(guī)劃系統(tǒng)的基礎(chǔ)資源,包括機(jī)型(或容器規(guī)格)、機(jī)房、資源數(shù)量、存儲(chǔ)、4/7層接入方案、域名證書以及是否用CDN等。
  • 2、資源申請(qǐng)
    將評(píng)估后的資源各自走審批流程。
  • 3、資源管理
    對(duì)業(yè)務(wù)使用的海量主機(jī)、容器、域名、證書、LB、CDN、存儲(chǔ)、網(wǎng)絡(luò)、專線等資源進(jìn)行管理,體量上來后一定要建設(shè)CMDB用系統(tǒng)管,各類信息做到可快速檢索,一般大廠存儲(chǔ)、CDN、網(wǎng)絡(luò)、專線都有專門團(tuán)隊(duì)負(fù)責(zé),SRE只要管好自己業(yè)務(wù)的使用即可,強(qiáng)調(diào)一點(diǎn),資源一定要制定一套科學(xué)的命名規(guī)則。
  • 4、權(quán)限管理
    大型系統(tǒng)人多、環(huán)境復(fù)雜,SRE需要對(duì)權(quán)限做詳細(xì)的規(guī)劃,制定SRE、開發(fā)序列對(duì)應(yīng)每種資源新手和老工程師的權(quán)限規(guī)則,理想情況開發(fā)只要管好代碼即可,任何prod環(huán)境操作都只能由SRE處理,開發(fā)是不允許有root權(quán)限的,開發(fā)和測(cè)試環(huán)境視情況處理,所有操作做好審計(jì)方案。
  • 5、資源操作
    因?yàn)槊嫦虻氖谴笮突ヂ?lián)網(wǎng)系統(tǒng),要保障對(duì)海量資源進(jìn)行高效批量的操作,就需要借助一些技術(shù)工具了,比如主機(jī)操作類似ansilbe、saltstack,為了安全管理也要結(jié)合安全跳板機(jī)的使用,容器、LB、證書簽發(fā)等也都有對(duì)應(yīng)的技術(shù)方案,這些是需要SRE來Ops的。

系統(tǒng)上線

  • 1、環(huán)境規(guī)劃
    一個(gè)成體系的系統(tǒng)一般會(huì)有4套環(huán)境:開發(fā)環(huán)境(dev)、測(cè)試環(huán)境(stag)、預(yù)發(fā)布環(huán)境(prew)、生產(chǎn)環(huán)境(prod),環(huán)境之間相互獨(dú)立,視情況做網(wǎng)絡(luò)隔離,我在新浪碰到了幾次開發(fā)同學(xué)把測(cè)試環(huán)境的數(shù)據(jù)發(fā)布到了生產(chǎn)環(huán)境,造成很差的用戶體驗(yàn),所以規(guī)劃的時(shí)候,低安全等級(jí)的網(wǎng)絡(luò)到高安全等級(jí)加墻還是有必要的,SRE提前把環(huán)境規(guī)劃好、上線流程制定好,會(huì)減少很多變更類故障。
  • 2、環(huán)境搭建
    主機(jī)環(huán)境配置,看似有了公有云、容器后,只要把鏡像做好,這塊工作要簡(jiǎn)單很多,但其實(shí)也不然,首先相對(duì)云主機(jī)而言,物理機(jī)的性能高成本低,量能跑起來的前提下用物理機(jī)最劃算,所以公有云一般作為彈性資源;二是經(jīng)過論證,不是所有的服務(wù)都適合上容器,所以現(xiàn)實(shí)情況還是會(huì)有大量的物理機(jī)運(yùn)維,各種裝包、配置、內(nèi)核和系統(tǒng)調(diào)優(yōu)、維修、過保機(jī)器替換等,反而是在原來的基礎(chǔ)之上增加了打容器鏡像的工作,這就是實(shí)際情況,環(huán)境搭建、系統(tǒng)調(diào)優(yōu)、軟件包升級(jí)的工作量還是很大,而且這塊工作經(jīng)常會(huì)出現(xiàn)各種奇葩的事情,特別是搭建GPU機(jī)器學(xué)習(xí)的環(huán)境,不是這個(gè)庫(kù)不對(duì)那個(gè)依賴版本不對(duì)的,一搞就是半天,不過從趨勢(shì)上看這塊工作我覺得會(huì)越來越標(biāo)準(zhǔn)化。
    接入層配置,包含從域名、證書、解析、負(fù)載均衡4/7層、后端這一套配置流程,其中4/7層選擇、調(diào)度策略、連接數(shù)是否夠用等等都是需要根據(jù)具體業(yè)務(wù)情況制定技術(shù)方案。
  • 3、CI/CD
    協(xié)同開發(fā)制定CI/CD的技術(shù)方案,為Dev提供部署系統(tǒng)(大廠有專門團(tuán)隊(duì)研發(fā)),制定上線審批流程,按理生產(chǎn)環(huán)境的上線應(yīng)由SRE操作,但因?yàn)殚_發(fā)和SRE的數(shù)量差距大,成長(zhǎng)期的系統(tǒng)迭代又快,由誰(shuí)上線就視情況處理了,我們這處理方式是牽涉到代碼變更的上線由開發(fā)操作,其余的遷移擴(kuò)縮容等由SRE處理。

運(yùn)行保障

SRE是質(zhì)量擔(dān)當(dāng),面向的就是用戶穩(wěn)定性,所以系統(tǒng)運(yùn)行保障是SRE工作最重的階段,也是占用精力、工作量最大的部分,質(zhì)量越好,意味著故障越少,下面就從故障全生命周期的角度對(duì)這塊的工作做個(gè)梳理。

  • 1、故障前——目標(biāo):減少問題流入“故障中”
    ①變更管控
    ②容器管理
    ③災(zāi)備建設(shè)
    ④業(yè)務(wù)巡檢
    ⑤活動(dòng)重保
    ⑥故障演練
    ⑦日志管理
    ⑧技術(shù)調(diào)優(yōu)
    ⑨服務(wù)管制
  • 2、故障中——目標(biāo):快速發(fā)現(xiàn)故障,止損
    ①監(jiān)控告警
    ②故障定位
    ③預(yù)案執(zhí)行
  • 3、故障后——目標(biāo):消滅同類故障
    ①故障復(fù)盤

系統(tǒng)下線

資源釋放

系統(tǒng)下線階段的主要工作就是資源釋放,不僅僅要釋放服務(wù)器,關(guān)聯(lián)的域名、LB、ACL等等資源要全部釋放,干干凈凈的來、干干凈凈的去。

穩(wěn)定性建設(shè)

SLA

業(yè)內(nèi)喜歡用SLA (服務(wù)等級(jí)協(xié)議,全稱:service level agreement)來衡量系統(tǒng)的穩(wěn)定性,對(duì)互聯(lián)網(wǎng)公司來說就是網(wǎng)站服務(wù)可用性的一個(gè)保證。9越多代表全年服務(wù)可用時(shí)間越長(zhǎng)服務(wù)越可靠,停機(jī)時(shí)間越短。就以一個(gè)標(biāo)準(zhǔn)99.99%為例,停機(jī)時(shí)間52.6分鐘,平均到每周也就是只能有差不多1分鐘的停機(jī)時(shí)間,也就是說網(wǎng)絡(luò)抖動(dòng)這個(gè)時(shí)間可能就沒了。保證一個(gè)系統(tǒng)四個(gè)9或者更高的五個(gè)9,需要一套全體共識(shí)嚴(yán)格標(biāo)準(zhǔn)的規(guī)章制度,沒有規(guī)矩不成方圓。創(chuàng)建的規(guī)范有如下幾種:

  • 1、研發(fā)規(guī)范、自身穩(wěn)定;
  • 2、事務(wù)中不能包含遠(yuǎn)程調(diào)用;
  • 3、超時(shí)時(shí)間和重試次數(shù)要合理;
  • 4、表數(shù)據(jù)操作必須double check,合理利用索引,避免出現(xiàn)慢查詢、分庫(kù)分表不走分表鍵;
  • 5、沒有有效的資源隔離, 避免不同業(yè)務(wù)共用一個(gè)線程池或連接池;
  • 6、合理的系統(tǒng)拓?fù)?#xff0c;禁止不合理服務(wù)依賴,能依賴就依賴,否則同步盡量改成異步弱依賴;
  • 7、精簡(jiǎn)的代碼邏輯;
  • 8、核心路徑流程必須進(jìn)行資源隔離,確保任何突發(fā)情況主流程不能受影響。

MTTR

MTTR即平均恢復(fù)時(shí)間,里面包括了MTTI(平均識(shí)別時(shí)間)、MTTK(平均定位時(shí)間)、MTTF(平均恢復(fù)時(shí)間)、MTTV(平均驗(yàn)證時(shí)間)。我們提供工具賦能、制定完備預(yù)案實(shí)現(xiàn)一鍵應(yīng)急、平時(shí)自動(dòng)校驗(yàn)等來縮短整體MTTR的時(shí)間。

故障管理(三段式)

  • 故障前:故障預(yù)防、災(zāi)備預(yù)案
  • 故障中:故障發(fā)現(xiàn)、故障定位、故障恢復(fù)
  • 故障后:故障復(fù)盤、故障改進(jìn)

故障前

監(jiān)控體系的建設(shè)(構(gòu)建立體化的監(jiān)控:全鏈路監(jiān)控)

  • 基礎(chǔ)準(zhǔn)備:監(jiān)控大盤-基礎(chǔ)監(jiān)控
  • 基礎(chǔ)準(zhǔn)備:監(jiān)控大盤-SLA
  • 基礎(chǔ)準(zhǔn)備:監(jiān)控大盤-日志
  • 基礎(chǔ)準(zhǔn)備:監(jiān)控大盤-客戶端監(jiān)控
  • 基礎(chǔ)準(zhǔn)備:監(jiān)控大盤-客戶端監(jiān)控
  • 基礎(chǔ)準(zhǔn)備:架構(gòu)設(shè)計(jì)、 梳理
  • 基礎(chǔ)準(zhǔn)備:容量評(píng)估
  • 基礎(chǔ)準(zhǔn)備:災(zāi)備預(yù)案/災(zāi)備演練
  • 基礎(chǔ)準(zhǔn)備:災(zāi)備預(yù)案/故障演練

故障中

  • 故障管理—監(jiān)控告警
  • 故障管理-日志分析
  • 故障管理-鏈路跟蹤
  • 故障管理-預(yù)案執(zhí)行
  • 故障管理-恢復(fù)結(jié)果確認(rèn)

故障后

  • 故障復(fù)盤:關(guān)鍵時(shí)間線回顧
  • 故障復(fù)盤:黃金三問
  • 故障復(fù)盤:故障報(bào)告

總結(jié)

以上是生活随笔為你收集整理的SRE体系及稳定性建设的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。