自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

站點(diǎn)可靠性工程(SRE)的優(yōu)秀實(shí)踐

譯文
運(yùn)維 系統(tǒng)運(yùn)維
如果管理者計(jì)劃在組織內(nèi)部或項(xiàng)目中采用SRE文化,那么需要了解如何更好地培訓(xùn)其SRE團(tuán)隊(duì)并遵循優(yōu)秀實(shí)踐。

[[421323]]

【51CTO.com快譯】如果管理者計(jì)劃在組織內(nèi)部或項(xiàng)目中采用SRE文化,那么需要了解如何更好地培訓(xùn)其SRE團(tuán)隊(duì)并遵循優(yōu)秀實(shí)踐。

什么是站點(diǎn)可靠性工程(SRE)?

站點(diǎn)可靠性工程(SRE)這一概念起源于谷歌公司,SRE是一種IT運(yùn)營(yíng)方法,與DevOps密切相關(guān)。SRE團(tuán)隊(duì)使用該軟件來(lái)管理系統(tǒng)、解決問題和自動(dòng)化操作任務(wù)。

SRE團(tuán)隊(duì)承擔(dān)IT運(yùn)營(yíng)團(tuán)隊(duì)完成的人工任務(wù),并將其交給使用工具和自動(dòng)化解決問題和管理生產(chǎn)系統(tǒng)的工程師或運(yùn)營(yíng)團(tuán)隊(duì)。

在創(chuàng)建可擴(kuò)展且高度可靠的軟件系統(tǒng)時(shí),這是一種更具價(jià)值的實(shí)踐。SRE團(tuán)隊(duì)通過(guò)代碼幫助組織管理龐大的基礎(chǔ)設(shè)施,這對(duì)于管理大量機(jī)器的系統(tǒng)管理員來(lái)說(shuō)更具可擴(kuò)展性和可持續(xù)性。

為什么SRE很重要?如何構(gòu)建優(yōu)秀的SRE團(tuán)隊(duì)?

SRE就像是溝通軟件工程團(tuán)隊(duì)和IT運(yùn)營(yíng)團(tuán)隊(duì)之間的橋梁,填補(bǔ)了兩者之間的空白。幾乎在任何地方,SRE隨時(shí)隨地都在為生產(chǎn)系統(tǒng)中的故障做好準(zhǔn)備時(shí)發(fā)揮作用。它確保組織的系統(tǒng)具有可擴(kuò)展性、可靠性、可預(yù)測(cè)性和自動(dòng)化。

SRE還設(shè)置了服務(wù)水平指標(biāo)(SLI)、服務(wù)水平目標(biāo)(SLO)、服務(wù)水平協(xié)議(SLA) ,其中定義了性能的真實(shí)數(shù)字、團(tuán)隊(duì)滿足該協(xié)議必須達(dá)到的目標(biāo),以及系統(tǒng)對(duì)最終用戶的可靠性要求。SRE的主要目標(biāo)是提高性能和運(yùn)營(yíng)效率。

因此,SRE人員不僅僅是“編寫代碼的運(yùn)營(yíng)人員”,也應(yīng)該是開發(fā)團(tuán)隊(duì)的成員,并且擁有不同的技能,尤其是在部署、配置管理、監(jiān)控、指標(biāo)等方面。SRE團(tuán)隊(duì)需要負(fù)責(zé)這些領(lǐng)域,正如開發(fā)工程師必須知道如何從數(shù)據(jù)存儲(chǔ)中提取數(shù)據(jù)一樣。而SRE團(tuán)隊(duì)需要通力合作,交付易于更新、管理和監(jiān)控的產(chǎn)品。當(dāng)企業(yè)正在實(shí)現(xiàn)DevOps項(xiàng)目,但意識(shí)到他們對(duì)開發(fā)人員的要求太高,并且需要專家來(lái)處理運(yùn)營(yíng)團(tuán)隊(duì)過(guò)去處理的事情時(shí),就自然會(huì)產(chǎn)生對(duì)SRE人員的需求。

在了解SRE以及SRE團(tuán)隊(duì)如何與開發(fā)團(tuán)隊(duì)合作之前,需要了解SRE如何在DevOps模式中發(fā)揮作用。

SRE團(tuán)隊(duì)如何與DevOps團(tuán)隊(duì)協(xié)同工作?

從本質(zhì)上來(lái)說(shuō),SRE是DevOps模式的實(shí)現(xiàn)。正如持續(xù)集成和持續(xù)交付是DevOps原則在軟件發(fā)布中的應(yīng)用程序一樣,SRE是這些原則在軟件可靠性中的應(yīng)用。

定義DevOps的方法有很多種。盡管如此,傳統(tǒng)模式是將開發(fā)(“Dev”)團(tuán)隊(duì)和運(yùn)營(yíng)(“Ops”)團(tuán)隊(duì)分開,這導(dǎo)致編寫代碼的團(tuán)隊(duì)在客戶開始使用代碼時(shí)不負(fù)責(zé)代碼的工作方式,而會(huì)將這些代碼直接交給運(yùn)維團(tuán)隊(duì)安裝和支持。

根據(jù)谷歌公司的方法,組織可以使用SRE在其內(nèi)部更好地采用DevOps原則并衡量實(shí)施是否成功。

為了更好將這兩者結(jié)合起來(lái),需要考慮以下原則:

  • 減少組織孤島:SRE通過(guò)在開發(fā)人員和運(yùn)營(yíng)團(tuán)隊(duì)之間共享所有權(quán)來(lái)提供幫助。這是DevOps的主要原則之一。當(dāng)SRE團(tuán)隊(duì)專注于改進(jìn)問題檢測(cè)和應(yīng)用程序性能時(shí),運(yùn)營(yíng)人員可以專注于管理基礎(chǔ)設(shè)施,而開發(fā)人員可以專注于功能改進(jìn)。
  • 接受失敗:與DevOps團(tuán)隊(duì)一樣,SRE團(tuán)隊(duì)不會(huì)將故障和生產(chǎn)事件的責(zé)任推給IT團(tuán)隊(duì)。無(wú)責(zé)任事后分析是一種SRE優(yōu)秀實(shí)踐,可以確保所有事件都被作為一種學(xué)習(xí)機(jī)會(huì)。當(dāng)接受失敗正?;瘯r(shí),團(tuán)隊(duì)可以承擔(dān)更大的風(fēng)險(xiǎn),從而有可能帶來(lái)更大的創(chuàng)新,而不必?fù)?dān)心過(guò)多的挫折或阻礙。
  • 實(shí)施漸進(jìn)式變革:與DevOps團(tuán)隊(duì)一樣,SRE團(tuán)隊(duì)也鼓勵(lì)通過(guò)變革進(jìn)行持續(xù)改進(jìn)。SRE要求小而頻繁的更改。因此,任何負(fù)面影響的影響都會(huì)很小,并且可以輕松測(cè)試和實(shí)施低風(fēng)險(xiǎn)的增強(qiáng)功能。
  • 利用工具和自動(dòng)化:雖然DevOps團(tuán)隊(duì)鼓勵(lì)自動(dòng)化和技術(shù)采用,但SRE團(tuán)隊(duì)專注于在IT團(tuán)隊(duì)中采用一致的技術(shù)和信息訪問。這樣可以更輕松地管理和運(yùn)營(yíng),并減少因技術(shù)不兼容而產(chǎn)生問題的機(jī)會(huì)。這種標(biāo)準(zhǔn)化還有助于確保團(tuán)隊(duì)的成員可以更好地協(xié)作,因?yàn)楣ぞ呤墙y(tǒng)一的,并且不太可能需要一些成員不具備的專業(yè)技能。
  • 衡量一切:SRE將指標(biāo)與反饋循環(huán)相結(jié)合,以衡量運(yùn)營(yíng)并確定改進(jìn)機(jī)會(huì)。它還根據(jù)需要為風(fēng)險(xiǎn)和人工操作建立冗余性,使其通過(guò)衡量更具可預(yù)測(cè)性。通過(guò)應(yīng)用指標(biāo)數(shù)據(jù),團(tuán)隊(duì)可以設(shè)定適當(dāng)?shù)哪繕?biāo),同時(shí)保持合理的績(jī)效預(yù)期。

現(xiàn)在知道SRE很重要的原因,以下繼續(xù)討論在接受SRE文化時(shí)必須遵循的SRE優(yōu)秀實(shí)踐。

SRE的優(yōu)秀實(shí)踐

在實(shí)施SRE時(shí),組織可能需要一些時(shí)間來(lái)完善其策略并定制實(shí)踐以滿足運(yùn)營(yíng)需求。為了幫助加快這一過(guò)程,需要考慮以下SRE原則和優(yōu)秀實(shí)踐。

(1)錯(cuò)誤預(yù)算

簡(jiǎn)而言之,錯(cuò)誤預(yù)算是在用戶開始不滿意之前,組織的服務(wù)在一段時(shí)間內(nèi)可以累積的錯(cuò)誤量??梢詫⑵湟暈橛脩舻耐纯嗳萑潭龋m用于服務(wù)的可用性和延遲等特定維度。為了計(jì)算誤差預(yù)算,必須使用SLI方程:

SLI=[良好事件/有效事件]×100

在這個(gè)公式中的百分比表示為SLI,一旦組織為每個(gè)SLI定義了一個(gè)目標(biāo),這就是其服務(wù)水平目標(biāo)(SLO),而錯(cuò)誤預(yù)算就是剩余部分,最高可以達(dá)到100。

例如,假設(shè)組織正在衡量網(wǎng)站主頁(yè)的可用性??捎眯允峭ㄟ^(guò)響應(yīng)錯(cuò)誤的請(qǐng)求數(shù)除以主頁(yè)收到的所有有效請(qǐng)求數(shù)量來(lái)衡量的(以百分比)表示。如果決定該可用性的目標(biāo)是99.9%,則錯(cuò)誤預(yù)算為0.1%。組織最多可以出現(xiàn)0.1%的錯(cuò)誤(最好略低于0.1%),用戶會(huì)很樂意繼續(xù)使用該服務(wù)。

以下這個(gè)表格表明百分比如何轉(zhuǎn)換為出現(xiàn)錯(cuò)誤的時(shí)間:

乍一看,錯(cuò)誤預(yù)算似乎并不那么重要。它們只是IT團(tuán)隊(duì)和DevOps團(tuán)隊(duì)需要跟蹤以確保一切順利運(yùn)行的一個(gè)指標(biāo)。這種說(shuō)法是錯(cuò)誤的。錯(cuò)誤預(yù)算不僅僅是確保組織履行合同承諾的便捷方式。如果團(tuán)隊(duì)用盡了某一季度的錯(cuò)誤預(yù)算,則新的預(yù)算通常會(huì)被凍結(jié)。它們也是開發(fā)團(tuán)隊(duì)創(chuàng)新和冒險(xiǎn)的機(jī)會(huì)。

(2)像用戶一樣定義服務(wù)水平目標(biāo)(SLO)

服務(wù)水平目標(biāo)(SLO)用來(lái)衡量對(duì)最終用戶很重要的可用性和性能。SLO是所有SRE的基礎(chǔ),而沒有SLO,組織就無(wú)法制定錯(cuò)誤預(yù)算、確定開發(fā)工作的優(yōu)先級(jí)或進(jìn)行及時(shí)有效的事件管理。SLO應(yīng)該指定它們的衡量方式以及有效的條件。

①服務(wù)水平指標(biāo)(SLI):

對(duì)所提供服務(wù)水平的某些方面(例如吞吐量、延遲)進(jìn)行的定量度量。通過(guò)SLI:

  • 用戶可以直接測(cè)量和觀察。
  • 可以代表用戶的體驗(yàn),簡(jiǎn)單來(lái)說(shuō)就是了解用戶到底要衡量什么。

②服務(wù)水平目標(biāo)(SLO):

SLI測(cè)量的服務(wù)級(jí)別的目標(biāo)值或值范圍。通過(guò)SLO:

  • 從用戶的角度定義服務(wù)應(yīng)該如何執(zhí)行(通過(guò)SLI衡量)。簡(jiǎn)單來(lái)說(shuō),提供服務(wù)應(yīng)該有多好,以及需要改進(jìn)服務(wù)的閾值。
  • 是用戶可以考慮打開支持票證的時(shí)間點(diǎn)。
  • 受業(yè)務(wù)需求驅(qū)動(dòng),而不僅僅是當(dāng)前性能。

③服務(wù)水平協(xié)議(SLA):

如果服務(wù)未達(dá)到預(yù)期,則向客戶提供某種形式的補(bǔ)償?shù)纳虡I(yè)合同。簡(jiǎn)單來(lái)說(shuō),SLA 就是SLO+后果。

(3)監(jiān)控錯(cuò)誤和可用性

為了識(shí)別性能錯(cuò)誤并保持服務(wù)可用性,SRE團(tuán)隊(duì)需要了解他們的系統(tǒng)中發(fā)生了什么。需要監(jiān)控以驗(yàn)證應(yīng)用程序/系統(tǒng)是否按預(yù)期運(yùn)行,這意味著服務(wù)、滿足特定目標(biāo)以及了解更改時(shí)會(huì)發(fā)生什么。而且要在客戶之前知道這些。

(4)高效規(guī)劃能力

組織需要為業(yè)務(wù)的有機(jī)增長(zhǎng)(可能是產(chǎn)品采用率的增加)和無(wú)機(jī)增長(zhǎng)(由于功能發(fā)布、營(yíng)銷活動(dòng)等導(dǎo)致需求的突然增長(zhǎng))等進(jìn)行規(guī)劃。這些活動(dòng)將消耗更多資源(如黑色星期五導(dǎo)致的停機(jī))。為準(zhǔn)備這些活動(dòng),組織需要預(yù)測(cè)需求并規(guī)劃采購(gòu)時(shí)間。

容量規(guī)劃的重要方面包括定期負(fù)載測(cè)試和資源調(diào)配。定期負(fù)載測(cè)試可讓組織了解系統(tǒng)在日常用戶的平均壓力下如何運(yùn)行。此外,以任何形式增加容量都可能成本昂貴,因此組織了解在何處需要額外資源是關(guān)鍵。

(5)注重變革管理

在許多組織中,大多數(shù)停機(jī)都是由對(duì)活動(dòng)系統(tǒng)的更改引起的,無(wú)論是新的二進(jìn)制推送還是新的配置推送。每一個(gè)微小的變化都會(huì)影響業(yè)務(wù)。因此,需要分析每個(gè)變更所帶來(lái)的風(fēng)險(xiǎn),并且應(yīng)該受到監(jiān)督。組織需要通過(guò)查看大局來(lái)考慮長(zhǎng)期變化的影響,而不僅僅是它們?nèi)绾斡绊懏?dāng)今的系統(tǒng)。

為確保在變更期間不會(huì)發(fā)生任何意外,必須由執(zhí)行推出階段的工程師或最好是一個(gè)可證明可靠的監(jiān)控系統(tǒng)對(duì)其進(jìn)行監(jiān)控。如果檢測(cè)到意外行為,首先進(jìn)行回滾,然后進(jìn)行診斷,以最大限度地縮短平均恢復(fù)時(shí)間 (MTTR)。

(6)無(wú)責(zé)任的事后分析

無(wú)責(zé)任的事后分析有助于在組織中建立更可靠的系統(tǒng)。事后分析應(yīng)該是無(wú)可指責(zé)的,并且應(yīng)該關(guān)注流程和技術(shù),而不是人員的責(zé)任。

假設(shè)事件中涉及的人員根據(jù)他們當(dāng)時(shí)可用的信息做出最好的選擇。將事件歸咎于某人或某個(gè)團(tuán)隊(duì)會(huì)適得其反。因?yàn)檫@將會(huì)帶來(lái)人們不敢冒險(xiǎn)、不敢創(chuàng)新、不敢解決問題的氛圍和環(huán)境。

失敗總是會(huì)發(fā)生的,這是沒有辦法的事情。但是,通過(guò)良好的事件解決方案和回顧性實(shí)踐,經(jīng)歷失敗也可能是有益的。它揭示了需要關(guān)注的領(lǐng)域以提高彈性。只要人們從事件中吸取教訓(xùn),就會(huì)取得進(jìn)步。

(7)勞動(dòng)管理

SRE的主要關(guān)注點(diǎn)之一是自動(dòng)化。一些重復(fù)性勞動(dòng)對(duì)于開發(fā)人員來(lái)說(shuō)是一種時(shí)間的浪費(fèi),通過(guò)SRE創(chuàng)建框架、流程、內(nèi)部工具/構(gòu)建工具來(lái)消除這些重復(fù)性勞動(dòng),將會(huì)讓工程師專注于技術(shù)創(chuàng)新。

結(jié)論

本文試圖涵蓋建立成功的SRE團(tuán)隊(duì)所需的基本概念和實(shí)踐。如果管理者計(jì)劃在項(xiàng)目和組織內(nèi)部采用 SRE文化,需要培訓(xùn)團(tuán)隊(duì)、遵循優(yōu)秀實(shí)踐并信任該過(guò)程。雖然不可能達(dá)到 100% 的完美,但是會(huì)讓事情變得更加精簡(jiǎn)并盡可能接近完美。

原文標(biāo)題:Site Reliability Engineering (SRE) Best Practices,作者:Rayan Das

【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】

 

責(zé)任編輯:華軒 來(lái)源: 51CTO
相關(guān)推薦

2023-11-26 13:41:24

工具信號(hào)SRE

2021-04-02 08:00:00

工程師IT首席技術(shù)官

2022-09-08 11:48:08

技術(shù)債務(wù)工程師IT

2022-07-29 15:46:19

測(cè)試混沌工程

2022-02-25 07:00:00

IT站點(diǎn)可靠性工程師DevOps

2022-06-10 10:49:16

云原生監(jiān)控系統(tǒng)

2023-06-27 17:50:22

2019-07-17 21:40:28

系統(tǒng)管理員網(wǎng)站可靠性工程師

2022-05-24 13:47:11

云原生數(shù)據(jù)分辨率

2022-02-22 09:00:00

軟件開發(fā)CI/CD 管道工具

2023-05-15 08:00:00

2010-12-28 19:50:21

可靠性產(chǎn)品可靠性

2025-01-16 10:16:33

2019-11-29 09:29:12

互聯(lián)網(wǎng)SRE運(yùn)維

2017-12-18 16:50:26

Gobug編譯

2023-10-10 07:24:59

SRE日志OnCall

2022-01-12 09:01:24

分布式系統(tǒng)容錯(cuò)服務(wù)

2019-08-30 12:10:05

磁盤數(shù)據(jù)可靠性RAID

2010-12-28 19:55:20

軟件架構(gòu)可靠性

2020-12-06 14:51:23

物聯(lián)網(wǎng)可靠性IOT
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)