SRE
SRE 全稱是 Site Reliability Engineering,即網站穩定性工程師。最早是由 Google 提出,并且在其工程實踐中發揚光大。這個團隊設立目的是幫助 Google 生產環境服務運行更穩定、健壯、可靠。不同于中小型規模公司,Google服務于十幾億用戶服務,短暫服務不可用會帶來致命后果。因此 Google 走在了時代最前面,SRE 產生了。
Google的官方對于SRE的介紹:
Keep the site up
– Whatever it takes
– Site unavailable? Our problem, whatever the reason
Work at a Large Scale
– Many services
– Lots of data
– Many machines
– But not so many people (machines:admins > 4000:1)
Balance competing demands
– Improve availability and reachability
– Enhance functionality
– Improve efficiency
– Take on new services (post-launch)
可以看到SRE的 關鍵詞是“高擴展性”和“高可用性”。SRE 職能可以概括為以下:
為應用、中間件、基礎設施等提供選型、設計、開發、容量規劃、調優、故障處理
為業務系統提供基于可用性、可擴展性考慮決策,參與業務系統設計和實施
定位、處理、管理故障,優化導致故障發生相關部件
提高各部件資源利用率
DevopsVS SRE
DevOps 和 SRE 都會關心應用生命周期,特別是生命周期里面中變更和故障。但是 DevOps 工作內容是主要為開發鏈路服務,一個 DevOps 團隊 通常會提供一串工具鏈包括:開發工具、版本管理工具、CI 持續交付工具、CD 持續發布工具、報警工具、故障處理。而 SRE 團隊則關注更為關注變更、故障、性能、容量相關問題,會涉及具體業務,產出工具鏈會有:容量測量工具、Logging 日志工具、Tracing 調用鏈路跟蹤工具、Metrics 性能度量工具、監控報警工具等。
最后總結三點:
1.SRE 和Devops都需要較強的運維技能和開發技能。
2.SRE 的首要工作任務是保證 SLA更偏向于運維;而DevOps是開發+運維,更強調開發。
3.SRE 工程師在復雜系統中,需要進行擴展設計、高并發設計、高可用設計以及具備定位排查復雜問題的能力。
我的每一篇文章都希望幫助讀者解決實際工作中遇到的問題!如果文章幫到了您,勞煩點贊、收藏、轉發!您的鼓勵是我不斷更新文章最大的動力!