Saib xyuas cov tshuab faib - Google kev paub (kev txhais lus ntawm ib tshooj los ntawm Google SRE phau ntawv)

Saib xyuas cov tshuab faib - Google kev paub (kev txhais lus ntawm ib tshooj los ntawm Google SRE phau ntawv)

SRE (Site Reliability Engineering) yog ib txoj hauv kev los xyuas kom muaj cov haujlwm hauv lub vev xaib. Nws raug suav hais tias yog lub hauv paus rau DevOps thiab tham txog yuav ua li cas kom ua tiav kev ua tiav ntawm kev siv DevOps cov kev coj ua. Kev txhais lus hauv kab lus no Tshooj 6 Kev Saib Xyuas Cov Txheej Txheem Tshaj Tawm phau ntawv Site Reliability Engineering los ntawm Google. Kuv tau npaj qhov kev txhais lus no rau kuv tus kheej thiab tso siab rau kuv tus kheej kev paub txog kev nkag siab txog kev saib xyuas cov txheej txheem. Hauv telegram channel @monitorim_nws и blog ntawm Medium Kuv kuj tau luam tawm ib qhov txuas mus rau kev txhais lus ntawm Tshooj 4 ntawm tib phau ntawv hais txog cov hom phiaj ntawm kev pab cuam.

Kev txhais los ntawm miv. Txaus siab rau kev nyeem ntawv!

Google's SRE teams muaj cov hauv paus ntsiab lus thiab cov kev coj ua zoo tshaj plaws los tsim kom muaj kev soj ntsuam zoo thiab kev ceeb toom. Tshooj lus no qhia txog cov teeb meem dab tsi uas tus neeg tuaj xyuas nplooj ntawv web yuav ntsib thiab yuav daws cov teeb meem uas ua rau cov nplooj ntawv web nyuaj rau kev tso tawm.

Cov ntsiab lus

Tsis muaj ib lo lus siv los tham txog cov ncauj lus ntsig txog kev saib xyuas. Txawm hais tias hauv Google, cov ntsiab lus hauv qab no tsis yog siv ntau, tab sis peb yuav sau cov lus txhais feem ntau.

Saib xyuas

Kev sau, ua, sib sau ua ke thiab tso saib cov ntaub ntawv ntau npaum li cas hauv lub sijhawm tiag tiag txog lub kaw lus: tus naj npawb ntawm kev thov thiab hom kev thov, tus lej ntawm qhov tsis raug thiab hom kev ua yuam kev, thov sijhawm ua haujlwm thiab lub sijhawm ua haujlwm ntawm server.

Kev saib xyuas lub thawv dawb

Kev soj ntsuam raws li kev ntsuas pom los ntawm cov khoom siv sab hauv, suav nrog cov cav, Java Virtual Machine profiling metrics, lossis HTTP handler metrics uas tsim cov txheeb cais sab hauv.

Kev saib xyuas lub thawv dub

Kev ntsuam xyuas daim ntawv thov tus cwj pwm los ntawm tus neeg siv qhov kev xav.

Dashboard

Ib qho interface (feem ntau yog lub vev xaib) uas muab cov ntsiab lus ntawm cov ntsuas kev noj qab haus huv tseem ceeb ntawm cov kev pabcuam. Lub dashboard tej zaum yuav muaj cov ntxaij lim dej, muaj peev xwm xaiv cov cim qhia, thiab lwm yam. Lub interface yog tsim los txheeb xyuas cov ntsuas qhov tseem ceeb tshaj plaws rau cov neeg siv. Lub dashboard tseem tuaj yeem tso saib cov ntaub ntawv rau cov neeg ua haujlwm txhawb nqa: ib kab ntawm kev thov, ib daim ntawv teev cov kev ua yuam kev siab, thiab ib tus kws ua haujlwm tau muab rau thaj tsam ntawm lub luag haujlwm.

Alert (kev ceeb toom)

Cov ntawv ceeb toom npaj kom tau txais los ntawm ib tus neeg los ntawm email lossis lwm txoj kev, uas tuaj yeem tshwm sim los ntawm kev ua yuam kev lossis nce hauv cov ntawv thov. Cov ntawv ceeb toom raug cais raws li: daim pib, email ceeb toom thiab cov lus ceeb toom tam sim.

Keeb kwm

Ib qho software tsis xws luag lossis tib neeg yuam kev uas, ib zaug kho, yuav tsum tsis txhob tshwm sim dua. Qhov teeb meem tuaj yeem muaj ntau qhov laj thawj tseem ceeb: cov txheej txheem tsis txaus automation, software tsis xws luag, tsis txaus elaboration ntawm daim ntawv thov logic. Txhua yam ntawm no tej zaum yuav yog lub hauv paus, thiab txhua tus ntawm lawv yuav tsum raug tshem tawm.

Node thiab tshuab (node ​​​​thiab tshuab)

Cov ntsiab lus sib pauv tau xa mus rau ib qho piv txwv ntawm daim ntawv thov khiav ntawm lub cev server, lub tshuab virtual, lossis lub thawv. Ib lub tshuab tuaj yeem tuav ntau qhov kev pabcuam. Cov kev pabcuam tuaj yeem yog:

  • txuas rau ib leeg: piv txwv li, ib lub caching server thiab lub web server;
  • Cov kev pabcuam tsis cuam tshuam rau ntawm ib qho khoom kho vajtse: piv txwv li, lub chaw khaws ntaub ntawv code thiab tus wizard rau kev teeb tsa, xws li Menyuam dev los yog lub taub hau.

laub

Txhua qhov kev hloov pauv hauv software configuration.

Vim li cas thiaj xav tau kev saib xyuas?

Muaj ntau qhov laj thawj vim li cas cov ntawv thov yuav tsum tau saib xyuas:

Kev soj ntsuam ntawm cov qauv mus sij hawm ntev

Lub database loj npaum li cas thiab loj npaum li cas? Cov neeg siv niaj hnub hloov li cas?

Kev sib piv kev ua haujlwm

Puas yog kev thov sai dua ntawm Acme Bucket of Bytes 2.72 piv rau Ajax DB 3.14? Yuav ua li cas zoo dua yog thov cached tom qab cov tsos ntawm ib tug ntxiv node? Puas yog qhov chaw khiav qeeb dua piv rau lub lim tiam dhau los?

Alerting (kev ceeb toom)

Ib yam dab tsi tawg thiab ib tug neeg yuav tsum kho nws. Lossis qee yam yuav tawg sai sai thiab ib tus neeg yuav tsum tau kuaj xyuas sai sai.

Tsim dashboards

Dashboards yuav tsum teb cov lus nug yooj yim thiab suav nrog qee yam los ntawm "4 golden signals" - qeeb (latency), tsheb khiav (tsheb), yuam kev (yuam kev) thiab load loj (saturation).

Ua qhov kev ntsuam xyuas rov qab (debugging)

Qhov kev thov ua haujlwm qeeb tau nce, tab sis dab tsi ntxiv tshwm sim nyob ib puag ncig tib lub sijhawm?
Kev soj ntsuam cov tshuab muaj txiaj ntsig zoo los ntawm cov ntaub ntawv rau kev lag luam kev txawj ntse thiab pab txhawb kev tsom xam ntawm qhov xwm txheej kev nyab xeeb. Vim tias phau ntawv no tsom mus rau engineering thaj chaw uas SREs muaj kev txawj ntse, peb yuav tsis tham txog kev saib xyuas cov txheej txheem ntawm no.

Kev saib xyuas thiab ceeb toom cia lub kaw lus qhia rau koj thaum nws tau tawg lossis tab tom yuav tawg. Thaum lub kaw lus tsis tuaj yeem kho nws tus kheej, peb xav kom tib neeg txheeb xyuas qhov kev ceeb toom, txiav txim siab seb qhov teeb meem puas tseem ua haujlwm, daws nws, thiab txiav txim siab qhov laj thawj. Yog tias koj tsis tshawb xyuas cov khoom siv hauv lub cev, koj yuav tsis tau txais kev ceeb toom tsuas yog vim "ib yam dab tsi zoo li txawv me ntsis."

Kev them nyiaj rau ib tus neeg nrog kev ceeb toom yog qhov siv nyiaj ntau ntawm tus neeg ua haujlwm lub sijhawm. Yog tias tus neeg ua haujlwm ua haujlwm, qhov kev ceeb toom cuam tshuam cov txheej txheem ua haujlwm. Yog tias tus neeg ua haujlwm nyob hauv tsev, qhov kev ceeb toom cuam tshuam lub sijhawm tus kheej thiab tej zaum yuav pw tsaug zog. Thaum ceeb toom tshwm sim ntau dhau lawm, cov neeg ua haujlwm hla dhau lawv, tso lawv tawm, lossis tsis quav ntsej cov lus ceeb toom tuaj. Qee lub sij hawm lawv tsis quav ntsej qhov kev ceeb toom tiag tiag, uas yog npog los ntawm cov xwm txheej nrov nrov. Kev cuam tshuam kev pabcuam tuaj yeem ua rau lub sijhawm ntev vim muaj suab nrov tiv thaiv qhov teeb meem los ntawm kev kuaj mob sai thiab kho. Cov kev ceeb toom ua haujlwm tau zoo muaj lub teeb liab-rau-suab nrov piv.

Teeb tsa qhov kev cia siab tsim nyog rau kev saib xyuas

Teeb tsa kev saib xyuas rau ib daim ntawv thov complex yog ib txoj haujlwm engineering hauv nws tus kheej. Txawm hais tias muaj cov txheej txheem tseem ceeb ntawm kev sau, tso saib, thiab cov cuab yeej ceeb toom, Google SRE pab pawg ntawm 10-12 cov tswv cuab feem ntau suav nrog ib lossis ob tus neeg uas nws lub hom phiaj tseem ceeb yog tsim thiab tswj xyuas cov kab ke. Tus lej no tau poob qis dhau sijhawm thaum peb sib sau ua ke thiab ua haujlwm hauv nruab nrab ntawm kev saib xyuas, tab sis txhua pab pawg SRE feem ntau muaj tsawg kawg yog ib tus neeg mob siab rau saib xyuas. Peb yuav tsum hais tias thaum saib xyuas cov kab ke dashboards yog qhov txaus nyiam heev los saib, SRE pawg ua tib zoo zam cov xwm txheej uas xav kom ib tus neeg saib lub vijtsam los saib xyuas cov teeb meem.

Zuag qhia tag nrho, Google tau hloov mus rau qhov yooj yim thiab ceev xyuas cov txheej txheem nrog kev pom zoo tom qab-qhov tseeb cov cuab yeej tsom xam. Peb tsis txhob "magic" systems uas sim twv seb qhov pib los yog cia li ntes lub hauv paus. Sensors uas ntes cov ntsiab lus tsis xav tau hauv qhov kawg-tus neeg siv thov yog qhov piv txwv nkaus xwb; Tsuav cov sensors nyob twj ywm yooj yim, lawv tuaj yeem tshawb xyuas qhov ua rau muaj qhov tsis txaus ntseeg loj. Lwm hom kev siv cov ntaub ntawv saib xyuas, xws li kev npaj muaj peev xwm lossis kev kwv yees tsheb, yog qhov nyuaj dua. Kev soj ntsuam nyob rau lub sijhawm ntev heev (hli lossis xyoo) ntawm tus qauv qis (teev lossis hnub) yuav qhia txog qhov sib txawv mus ntev.

Pab pawg Google SRE tau muaj kev sib xyaw ua tiav nrog cov kev cia siab ntawm cov hierarchies. Peb tsis tshua siv cov cai xws li "yog tias kuv pom tias cov ntaub ntawv qeeb, kuv tau txais kev ceeb toom tias cov ntaub ntawv qeeb, txwv tsis pub kuv tau txais kev ceeb toom tias lub xaib qeeb." Cov kev cai raws li kev cia siab feem ntau yog xa mus rau qhov tsis hloov pauv ntawm peb lub cev, xws li lub kaw lus rau kev lim cov neeg siv tsheb mus rau cov ntaub ntawv chaw. Piv txwv li, "yog tias kev khiav tsheb khiav mus rau qhov chaw khaws ntaub ntawv raug teeb tsa, tsis txhob ceeb toom kuv txog kev qeeb hauv kev ua cov neeg siv kev thov" yog ib txoj cai dav dav rau kev ceeb toom los ntawm cov ntaub ntawv chaw. Ob peb pab pawg ntawm Google txhawb nqa txoj kev vam khom siab vim tias peb cov kev tsim kho vaj tse muaj qhov tsis tu ncua ntawm kev rov ua haujlwm tsis tu ncua.

Qee lub tswv yim uas tau piav qhia hauv tshooj no tseem muaj feem cuam tshuam: ib txwm muaj lub sijhawm txav nrawm dua los ntawm cov tsos mob mus rau hauv paus ua rau, tshwj xeeb tshaj yog nyob rau hauv tas li hloov tshuab. Yog li ntawd, thaum tshooj no qhia txog qee lub hom phiaj rau kev saib xyuas cov txheej txheem thiab yuav ua li cas kom ua tiav cov hom phiaj, nws yog ib qho tseem ceeb uas cov kev soj ntsuam xyuas tau yooj yim thiab nkag siab rau txhua tus hauv pab pawg.

Ib yam li ntawd, txhawm rau kom cov suab nrov qis thiab cov teeb liab siab, txoj hauv kev los saib xyuas cov cuab yeej ceeb toom yuav tsum yooj yim heev thiab txhim khu kev qha. Cov cai uas tsim cov lus ceeb toom rau tib neeg yuav tsum yooj yim to taub thiab nthuav tawm qhov teeb meem meej.

Cov tsos mob tawm tsam ua rau

Koj qhov kev saib xyuas yuav tsum teb ob lo lus nug: "dab tsi tawg" thiab "vim li cas nws tawg."
"Dab tsi tawg" tham txog cov tsos mob, thiab "vim li cas nws tawg" tham txog qhov ua rau. Cov lus hauv qab no qhia cov piv txwv ntawm kev sib txuas zoo li no.

Mob
Vim li cas

Tau txais HTTP yuam kev 500 lossis 404
Database servers tsis lees txais kev sib txuas

Slow server teb
Kev siv CPU siab lossis puas Ethernet cable

Cov neeg siv hauv Antarctica tsis tau txais miv GIFs
Koj CDN ntxub cov kws tshawb fawb thiab miv, yog li qee qhov chaw nyob IP tau raug teev npe dub

Cov ntsiab lus ntiag tug tau dhau los ua los ntawm txhua qhov chaw
Qhov kev nthuav tawm ntawm qhov kev tso tawm tshiab software ua rau lub firewall tsis nco qab tag nrho ACLs thiab cia sawv daws nkag mus

"Dab tsi" thiab "vim li cas" yog qee lub tsev tseem ceeb tshaj plaws rau kev tsim kom muaj kev saib xyuas zoo nrog cov teeb liab siab tshaj plaws thiab suab nrov tsawg.

Black-box vs White-box

Peb muab kev saib xyuas lub thawv dawb nrog rau kev saib xyuas lub thawv dub rau kev ntsuas qhov tseem ceeb. Txoj hauv kev yooj yim tshaj plaws los sib piv Black-box rau White-box yog tias Black-box yog cov tsos mob-tsim thiab muaj kev cuam tshuam ntau dua li kev saib xyuas: "lub kaw lus tsis ua haujlwm tam sim no." Lub thawv dawb nyob ntawm qhov muaj peev xwm txheeb xyuas sab hauv ntawm cov tshuab: cov ntawv teev xwm txheej lossis cov web servers. Yog li, White-box tso cai rau koj los txheeb xyuas cov teeb meem uas yuav tshwm sim, qhov tsis raug uas tshwm sim los ntawm kev xa rov qab ntawm qhov kev thov, thiab lwm yam.

Nco ntsoov tias nyob rau hauv ib tug multilayer system, ib tug tsos mob nyob rau hauv ib tug engineer cheeb tsam ntawm lub luag hauj lwm yog ib tug tsos mob nyob rau hauv lwm tus engineer cheeb tsam ntawm lub luag hauj lwm. Piv txwv li, database kev ua tau zoo tau txo qis. Kev nyeem ntawv qeeb qeeb yog cov tsos mob ntawm cov ntaub ntawv SRE uas kuaj pom lawv. Txawm li cas los xij, rau pem hauv ntej-kawg SRE soj ntsuam lub vev xaib qeeb, qhov ua rau ntawm tib cov ntaub ntawv qeeb nyeem ntawv yog cov ntaub ntawv qeeb. Yog li ntawd, kev saib xyuas lub thawv dawb yog qee zaum pom cov tsos mob thiab qee zaum ua rau pom, nyob ntawm seb nws dav npaum li cas.

Thaum sau telemetry rau kev debugging, White-box xyuas yog xav tau. Yog tias cov web servers qeeb los teb cov lus nug database, koj yuav tsum paub sai npaum li cas lub vev xaib server sib txuas lus nrog cov ntaub ntawv thiab teb sai npaum li cas. Txwv tsis pub, koj yuav tsis tuaj yeem sib txawv ntawm cov neeg rau zaub mov qeeb qeeb thiab teeb meem network ntawm lub vev xaib server thiab database.

Kev saib xyuas lub npov dub muaj qhov txiaj ntsig tseem ceeb thaum xa cov ntawv ceeb toom: koj ua rau qhov kev ceeb toom rau tus neeg txais thaum qhov teeb meem twb ua rau cov tsos mob tiag tiag. Ntawm qhov tod tes, kev saib xyuas tsis muaj txiaj ntsig rau qhov teeb meem Black-box uas tseem tsis tau tshwm sim tab sis yuav tshwm sim.

Plaub lub cim golden

Plaub lub cim ntsuas kub yog latency, tsheb khiav, yuam kev, thiab saturation. Yog tias koj tsuas tuaj yeem ntsuas plaub tus neeg siv qhov ntsuas ntsuas, tsom rau plaub qhov ntawd.

Ncua

Lub sijhawm yuav tsum tau ua raws li qhov kev thov. Nws yog ib qho tseem ceeb kom paub qhov txawv ntawm qhov latency ntawm kev thov ua tiav thiab tsis ua tiav. Piv txwv li, qhov yuam kev HTTP 500 tshwm sim los ntawm kev poob ntawm kev sib txuas rau cov ntaub ntawv lossis lwm qhov backend tuaj yeem kuaj tau sai heev, txawm li cas los xij, qhov yuam kev HTTP 500 yuav qhia tau tias qhov kev thov ua tsis tiav. Kev txiav txim siab qhov cuam tshuam ntawm 500 qhov yuam kev ntawm tag nrho latency yuav ua rau cov lus xaus tsis raug. Ntawm qhov tod tes, qhov yuam kev qeeb yog qhov yuam kev nrawm! Yog li ntawd, nws yog ib qho tseem ceeb los saib xyuas qhov yuam kev latency es tsis yog lim tawm qhov yuam kev.

tsheb

Tus naj npawb ntawm kev thov rau koj qhov system yog ntsuas nyob rau hauv high-level system metrics. Rau qhov kev pabcuam hauv lub vev xaib, qhov kev ntsuas no feem ntau sawv cev rau tus lej HTTP thov ib ob, muab faib los ntawm qhov kev thov (piv txwv li, cov ntsiab lus zoo li qub lossis dynamic). Rau lub suab streaming system, qhov kev ntsuas no yuav tsom mus rau lub network I / O ceev lossis tus naj npawb ntawm cov ntu ib txhij. Rau qhov tseem ceeb-tus nqi khaws cia, qhov kev ntsuas no tuaj yeem yog kev lag luam lossis kev tshawb nrhiav ib pliag.

Tsis raug

Qhov no yog tus nqi ntawm qhov kev thov ua tsis tiav uas qhia meej (xws li HTTP 500), implicit (xws li HTTP 200 tab sis ua ke nrog cov ntsiab lus tsis raug) lossis txoj cai (xws li "Yog tias koj ntes tau cov lus teb hauv ib thib ob, ib qho thib ob yog qhov yuam kev"). Yog tias HTTP cov lej teb tsis txaus los qhia tag nrho cov xwm txheej tsis ua haujlwm, cov txheej txheem theem nrab (sab hauv) yuav tsum tau kuaj xyuas qhov ua tsis tiav. Kev soj ntsuam tag nrho cov kev thov yuam kev no yuav tsis qhia, qhov kawg-rau-kawg kev xeem yuav pab xyuas kom paub tias koj tab tom ua cov ntsiab lus tsis raug.

Saturation

Cov metric qhia tias siv koj cov kev pabcuam hnyav npaum li cas. Qhov no yog ib qho kev ntsuam xyuas kev ntsuas uas txheeb xyuas cov peev txheej uas txwv tsis pub tshaj (piv txwv li, ntawm lub cim xeeb-txheej txheem, qhia txog kev nco, ntawm I / O-txhim kho qhov system, qhia cov naj npawb ntawm I / Os). Nco ntsoov tias ntau lub tshuab ua kom tsis zoo ua ntej lawv ncav cuag 100% kev siv, yog li kev siv lub hom phiaj tseem ceeb.

Hauv cov txheej txheem nyuaj, saturation tuaj yeem ua tiav los ntawm kev ntsuas qib siab dua: koj qhov kev pabcuam puas tuaj yeem tswj xyuas ob lub tsheb thauj mus los, tsuas yog 10% kev tsheb ntau dua, lossis ua haujlwm tsawg dua li tam sim no? Rau cov kev pabcuam yooj yim uas tsis muaj qhov tsis sib xws uas hloov qhov nyuaj ntawm qhov kev thov (piv txwv li, "Muab kuv tsis muaj dab tsi" lossis "Kuv xav tau ib qho tshwj xeeb monotonic integer"), uas tsis tshua muaj kev hloov pauv, qhov ntsuas qhov ntsuas qhov zoo li qub yuav tsim nyog. Txawm li cas los xij, raws li tau tham hauv kab lus dhau los, cov kev pabcuam feem ntau yuav tsum siv cov cim qhia tsis ncaj, xws li kev siv CPU lossis network bandwidth, uas muaj kev paub txog sab saud. Kev nce latency feem ntau yog qhov taw qhia ntawm saturation. Kev ntsuas 99 feem pua ​​​​lub sij hawm teb nyob rau hauv ib lub qhov rais me me (piv txwv li, ib feeb) tuaj yeem muab lub teeb liab ntxov heev ntawm saturation.

Thaum kawg, saturation kuj tseem cuam tshuam nrog kev kwv yees txog qhov yuav luag saturation, piv txwv li: "Nws zoo li koj cov ntaub ntawv yuav sau koj lub hard drive hauv 4 teev."

Yog tias koj ntsuas tag nrho plaub lub cim kub thiab thaum muaj teeb meem nrog ib qho kev ntsuas (lossis, nyob rau hauv cov ntaub ntawv ntawm saturation, ib qho teeb meem nyob ze), koj ceeb toom rau ib tug neeg, koj qhov kev pab yuav ntau dua los yog tsawg dua los ntawm kev saib xyuas.

Kev txhawj xeeb txog "tail" (los yog ntsuas thiab kev ua tau zoo)

Thaum tsim ib qho kev soj ntsuam xyuas los ntawm kos, muaj kev ntxias los tsim ib qho system raws li qhov nruab nrab qhov tseem ceeb: nruab nrab latency, nruab nrab CPU siv cov nodes, los yog qhov nruab nrab database fullness. Qhov txaus ntshai ntawm ob qho piv txwv kawg yog qhov pom tseeb: cov txheej txheem thiab cov ntaub ntawv pov tseg tau muab pov tseg rau hauv txoj kev uas tsis tuaj yeem xav txog. Tib yam siv rau ncua. Yog tias koj khiav lub vev xaib nrog qhov nruab nrab latency ntawm 100ms nrog 1000 thov ib ob, 1% ntawm kev thov yuav siv sijhawm 5 vib nas this. Yog tias cov neeg siv nyob ntawm ntau qhov kev pabcuam hauv lub vev xaib, 99 feem pua ​​​​ntawm ib qho backend tuaj yeem yooj yim dhau los ua lub sijhawm teb nruab nrab ntawm frontend.

Txoj kev yooj yim tshaj plaws rau kev sib txawv ntawm qhov nruab nrab qeeb thiab qhov qeeb qeeb ntawm kev thov yog los sau cov kev ntsuas ntawm cov lus thov qhia hauv kev txheeb cais (ib qho cuab yeej zoo los tso saib yog histograms) es tsis yog qhov tseeb latencies: pes tsawg thov cov kev pabcuam tau txais los ntawm 0 ms thiab 10 ms, nruab nrab ntawm 10 ms thiab 30 ms, nruab nrab ntawm 30 ms thiab 100 ms, ntawm 100 ms thiab 300 ms, thiab lwm yam. Expanding histogram ciam teb kwv yees li exponentially (los ntawm ib qho kwv yees li ntawm 3) feem ntau yog ib txoj hauv kev yooj yim kom pom qhov kev faib tawm. ntawm kev thov.

Xaiv cov theem tsim nyog ntawm kev nthuav dav rau kev ntsuas

Cov ntsiab lus sib txawv ntawm qhov system yuav tsum tau ntsuas ntawm ntau theem ntawm kev nthuav dav. Piv txwv li:

  • Saib xyuas kev siv CPU nyob rau ib lub sijhawm yuav tsis qhia cov kab mob mus ntev uas ua rau muaj latencies siab.
  • Ntawm qhov tod tes, rau qhov kev pabcuam hauv lub vev xaib tsis pub dhau 9 teev ntawm lub sijhawm poob hauv ib xyoos (99,9% txhua xyoo uptime), kuaj xyuas HTTP 200 cov lus teb ntau dua ib zaug lossis ob zaug hauv ib feeb yog qhov yuav tsum tsis tu ncua.
  • Ib yam li ntawd, tshawb xyuas qhov chaw hard drive rau 99,9% muaj ntau dua ib zaug txhua 1-2 feeb yog qhov tsis tsim nyog.

Ua tib zoo saib seb koj tsim qhov granularity ntawm koj qhov ntsuas. Sau CPU load ib zaug ib ob tuaj yeem muab cov ntaub ntawv nthuav dav, tab sis qhov kev ntsuas tsis tu ncua tuaj yeem kim heev los sau, khaws cia, thiab tshuaj xyuas. Yog tias koj lub hom phiaj kev saib xyuas xav tau kev ua haujlwm siab thiab tsis xav tau kev ua haujlwm siab, koj tuaj yeem txo cov nqi no los ntawm kev teeb tsa cov kev ntsuas ntsuas ntawm tus neeg rau zaub mov thiab tom qab ntawd teeb tsa cov txheej txheem sab nraud los sau thiab sau cov ntsuas ntsuas. Koj puas tuaj yeem:

  1. Ntsuas CPU load txhua thib ob.
  2. Txo cov ntsiab lus mus rau 5%.
  3. Aggregate metrics txhua feeb.

Cov tswv yim no yuav tso cai rau koj los sau cov ntaub ntawv ntawm cov granularity siab yam tsis muaj kev tsom xam siab thiab khaws nyiaj siv ua haujlwm.

Raws li qhov yooj yim li ua tau, tab sis tsis yooj yim dua

Qhov sib tshooj ntawm cov kev cai sib txawv nyob rau sab saum toj ntawm ib leeg tuaj yeem ua rau muaj kev soj ntsuam nruj heev. Piv txwv li, koj lub kaw lus yuav muaj cov nram qab no nyuaj:

  • Kev ceeb toom raws li qhov sib txawv rau kev thov ua latency, nyob rau hauv ntau feem pua, rau txhua hom kev ntsuas sib txawv.
  • Sau cov lej ntxiv txhawm rau txheeb xyuas thiab txheeb xyuas qhov ua tau tshwm sim.
  • Tsim cov dashboards cuam tshuam rau txhua qhov ua rau muaj teeb meem.

Cov peev txheej ntawm qhov muaj feem cuam tshuam tsis tau xaus. Zoo li txhua lub tshuab software, kev saib xyuas tuaj yeem ua nyuaj heev uas nws ua tsis yooj yim thiab nyuaj rau hloov thiab tswj.

Yog li ntawd, tsim koj lub kaw lus saib xyuas kom yooj yim kom ntau li ntau tau. Thaum xaiv qhov yuav taug qab, nco ntsoov cov hauv qab no:

  • Cov kev cai uas feem ntau ntes tau qhov xwm txheej tiag tiag yuav tsum yog qhov yooj yim, kwv yees tau thiab ntseeg tau li sai tau.
  • Kev teeb tsa rau kev sau cov ntaub ntawv, sib sau ua ke, thiab ceeb toom uas tau ua tsis tu ncua (piv txwv li, tsawg dua peb lub hlis twg rau qee pawg SRE) yuav tsum raug tshem tawm.
  • Metrics uas tau sau tab sis tsis pom nyob rau hauv ib qho kev saib ua ntej dashboard los yog siv los ntawm ib qho kev ceeb toom yog cov neeg sib tw rau kev tshem tawm.

Nyob rau hauv Google, cov kev ntsuas yooj yim sau thiab sib sau ua ke, ua ke nrog kev ceeb toom thiab dashboards, ua haujlwm tau zoo raws li ib tus neeg sawv cev ib leeg (Google qhov kev saib xyuas tau ua tiav rau hauv ntau lub subsystems, tab sis tib neeg feem ntau paub txog txhua yam ntawm cov subsystems). Tej zaum nws yuav ntxias kom ua ke nrog kev saib xyuas nrog lwm cov tswv yim rau kev tshuaj xyuas cov txheej txheem nyuaj: cov ncauj lus kom ntxaws profile, txheej txheem debugging, taug qab cov ntsiab lus hais txog kev zam lossis tsis ua tiav, kuaj kev thauj khoom, sau thiab txheeb xyuas, lossis tshuaj xyuas tsheb. Txawm hais tias feem ntau ntawm cov khoom no muaj qhov sib xws nrog kev saib xyuas yooj yim, kev sib xyaw ua ke yuav ua rau muaj txiaj ntsig ntau dhau thiab tsim kom muaj qhov nyuaj thiab tsis yooj yim. Raws li nrog ntau lwm yam ntawm kev txhim kho software, kev txhawb nqa sib txawv nrog cov ntsiab lus meej, yooj yim, xoob ntawm kev sib koom ua ke yog lub tswv yim zoo tshaj plaws (piv txwv li, siv lub vev xaib API los khaws cov ntaub ntawv sib sau ua ke hauv ib hom ntawv uas tuaj yeem ua raws li lub sijhawm ntev. ).

Tying the Principles together

Cov hauv paus ntsiab lus uas tau tham hauv tshooj no tuaj yeem ua ke rau hauv kev saib xyuas thiab ceeb toom lub tswv yim uas tau pom zoo thiab ua raws li Google SRE pawg. Ua raws li kev saib xyuas lub tswv yim no yog qhov xav tau, yog qhov pib zoo rau kev tsim lossis hloov kho koj cov txheej txheem kev ceeb toom, thiab tuaj yeem pab koj nug cov lus nug zoo ntawm koj txoj haujlwm ua haujlwm, tsis hais seb koj lub koom haum loj npaum li cas lossis qhov nyuaj ntawm cov kev pabcuam lossis cov txheej txheem.

Thaum tsim cov cai tswj xyuas thiab ceeb toom, nug cov lus nug hauv qab no tuaj yeem pab koj kom tsis txhob muaj qhov tsis zoo thiab ceeb toom tsis tsim nyog:

  • Puas yog txoj cai no ntes tau lwm yam kev tsis pom zoo ntawm lub kaw lus uas ceev, hu rau kev nqis tes ua, thiab tsis muaj kev cuam tshuam rau tus neeg siv?
  • Kuv puas tuaj yeem tsis quav ntsej cov lus ceeb toom no paub tias nws yog benign? Thaum twg thiab vim li cas kuv thiaj tsis quav ntsej qhov lus ceeb toom no thiab kuv yuav ua li cas thiaj zam tau qhov xwm txheej no?
  • Puas yog qhov kev ceeb toom no txhais tau tias cov neeg siv raug cuam tshuam? Puas muaj cov xwm txheej uas cov neeg siv tsis muaj kev cuam tshuam tsis zoo, xws li los ntawm kev lim tsheb lossis thaum siv cov tshuab ntsuas uas ceeb toom yuav tsum tau lim?
  • Kuv puas tuaj yeem ua raws li qhov kev ceeb toom no? Cov kev ntsuas no puas ceev lossis lawv tuaj yeem tos txog thaum sawv ntxov? Ib qho kev txiav txim puas tuaj yeem ua tau zoo? Qhov kev txiav txim no puas yog kev daws teeb meem ntev lossis kev ua haujlwm luv luv?
  • Qee tus neeg tau txais ntau qhov kev ceeb toom rau qhov teeb meem no, yog li puas muaj txoj hauv kev los txo tus lej ceeb toom?

Cov lus nug no qhia txog lub hauv paus ntsiab lus ntawm kev ceeb toom thiab ceeb toom:

  • Txhua zaus muaj kev ceeb toom tuaj, kuv yuav tsum tau teb tam sim ntawd. Kuv tuaj yeem hnov ​​​​mob nrawm ntau zaus hauv ib hnub ua ntej kuv nkees.
  • Txhua qhov kev ceeb toom yuav tsum muaj feem cuam tshuam.
  • Txhua qhov lus teb rau kev ceeb toom yuav tsum muaj kev cuam tshuam tib neeg. Yog tias qhov kev ceeb toom tuaj yeem ua tiav, nws yuav tsum tsis txhob tuaj txog.
  • Kev ceeb toom yuav tsum yog hais txog qhov teeb meem tshiab lossis qhov xwm txheej uas tsis muaj nyob ua ntej.

Txoj hauv kev no ua rau pom qhov txawv txav: yog tias qhov kev ceeb toom txaus siab rau plaub yam xwm txheej dhau los, nws tsis muaj teeb meem seb qhov kev ceeb toom raug xa los ntawm White-box lossis Black-Box saib xyuas. Txoj hauv kev no tseem txhawb nqa qee qhov sib txawv: nws yog qhov zoo dua los siv ntau zog rau kev txheeb xyuas cov tsos mob ntau dua li qhov ua rau; thaum nws los txog rau qhov ua rau, koj tsuas yog yuav tsum txhawj xeeb txog qhov ua tsis tau.

Kev soj ntsuam mus sij hawm ntev

Nyob rau niaj hnub no cov khoom tsim tau ib puag ncig, kev saib xyuas cov txheej txheem saib xyuas cov txheej txheem ntau lawm nrog kev hloov software architecture, cov yam ntxwv ua haujlwm, thiab cov hom phiaj ua haujlwm. Kev ceeb toom uas tam sim no nyuaj rau automate yuav dhau los ua qhov chaw, tej zaum tseem tsim nyog hais. Ntawm no, ib tug neeg yuav tsum nrhiav thiab tshem tawm cov hauv paus ntsiab lus ntawm qhov teeb meem; yog tias qhov kev daws teeb meem no tsis tuaj yeem ua tau, cov lus teb rau kev ceeb toom yuav tsum muaj kev ua haujlwm tag nrho.

Nws yog ib qho tseem ceeb uas saib xyuas kev txiav txim siab nrog lub hom phiaj ntev hauv siab. Txhua qhov kev ceeb toom uas ua haujlwm niaj hnub no cuam tshuam ib tus neeg los ntawm kev txhim kho cov kab ke tag kis, yog li feem ntau muaj kev txo qis hauv kev muaj lossis kev ua tau zoo ntawm cov txheej txheem tsim khoom rau lub sijhawm xav tau los txhim kho kev saib xyuas hauv lub sijhawm ntev. Cia peb saib ob qho piv txwv los piav txog qhov tshwm sim no.

Bigtable SRE: A Tale of Over-Alert

Google cov txheej txheem sab hauv feem ntau yog muab thiab ntsuas tawm tsam qib kev pabcuam (SLO). Ntau xyoo dhau los, Bigtable qhov kev pabcuam SLO tau ua raws li qhov kev ua haujlwm nruab nrab ntawm cov khoom siv hluavtaws simulating tus neeg siv khoom nyob. Vim yog cov teeb meem hauv Bigtable thiab qis qis ntawm pawg cia khoom, qhov nruab nrab kev ua tau zoo tau tsav los ntawm "loj" tus Tsov tus tw: qhov phem tshaj 5% ntawm cov lus nug feem ntau qeeb qeeb dua li lwm tus.

Cov ntawv ceeb toom email raug xa mus raws li qhov pib ntawm SLO tau dhau los, thiab cov lus ceeb toom xa mus thaum SLO tau dhau lawm. Ob hom kev ceeb toom tau raug xa mus ntau zaus, siv lub sijhawm tsim khoom tsis txaus ntseeg: pab pawg tau siv sijhawm ntau los txheeb xyuas cov lus ceeb toom kom pom qee qhov cuam tshuam tiag tiag. Peb feem ntau tsis nco txog qhov teeb meem uas cuam tshuam rau cov neeg siv vim tias tsuas yog qee qhov kev ceeb toom rau qhov teeb meem tshwj xeeb. Ntau qhov kev ceeb toom tsis tau nrawm vim muaj teeb meem nkag siab hauv cov txheej txheem thiab tau ua tiav raws li tus qauv, lossis tsis tau ua tiav txhua.

Txhawm rau kho qhov teeb meem, pab pawg tau siv peb txoj hauv kev: Thaum ua haujlwm hnyav los txhim kho Bigtable qhov kev ua tau zoo, peb tau teem caij ib ntus peb lub hom phiaj SLO yog 75 feem pua ​​​​rau cov lus nug teb latency. Peb kuj tau kaw email ceeb toom vim tias muaj ntau ntawm lawv uas nws tsis tuaj yeem siv sijhawm kuaj xyuas lawv.

Lub tswv yim no tau tso cai rau peb chav ua pa los pib kho cov teeb meem mus sij hawm ntev hauv Bigtable thiab qis qis ntawm pawg cia khoom, tsis tas li kho cov teeb meem kev sib tw. Cov engineers tuaj yeem ua haujlwm ua tiav yam tsis tau foob pob nrog kev ceeb toom txhua lub sijhawm. Thaum kawg, kev ncua kev ceeb toom ib ntus tso cai rau peb txhim kho peb cov kev pabcuam zoo.

Gmail: Predictable, Algorithmic Tib Neeg Teb

Thaum nws pib, Gmail tau tsim los ntawm kev hloov kho Workqueue txheej txheem kev tswj hwm uas tau tsim los txhawm rau ua cov txheej txheem chunks ntawm kev tshawb nrhiav. Workqueue tau yoog rau cov txheej txheem ua neej nyob ntev thiab tom qab ntawd tau thov rau Gmail, tab sis qee qhov kab mob hauv opaque lub sijhawm teem caij ua pov thawj nyuaj heev los kho.

Thaum lub sijhawm, kev saib xyuas Gmail tau teeb tsa kom ceeb toom yuav tshwm sim thaum ib tus neeg ua haujlwm raug tshem tawm siv Workqueue. Txoj hauv kev no tsis yog qhov zoo tagnrho, vim tias txawm tias lub sijhawm ntawd, Gmail tau ua ntau txhiab txoj haujlwm, txhua qhov tau muab rau ib feem ntawm ib feem ntawm peb cov neeg siv. Peb tau txhawj xeeb heev txog kev muab Gmail cov neeg siv nrog kev paub zoo ntawm cov neeg siv, tab sis tuav ntau qhov kev ceeb toom tsis ncav cuag.

Txhawm rau daws qhov teeb meem no, Gmail SRE tau tsim ib lub cuab yeej los pab daws qhov teeb meem ntawm lub sijhawm kom zoo tshaj plaws kom txo tau qhov cuam tshuam rau cov neeg siv. Pab neeg no muaj qee qhov kev sib tham txog seb puas yuav ua kom yooj yim rau tag nrho lub voj voog los ntawm kev tshawb pom qhov teeb meem los ntawm kev kho kom txog thaum pom cov kev daws teeb meem ntev, tab sis qee qhov kev txhawj xeeb tias qhov kev daws teeb meem no yuav ncua kev kho qhov teeb meem.

Qhov kev ntxhov siab no tau tshwm sim hauv pab pawg thiab feem ntau cuam tshuam txog qhov tsis muaj kev ntseeg siab hauv kev qhuab qhia tus kheej: thaum qee cov tswv cuab hauv pab pawg xav tso sijhawm rau kev kho kom raug, lwm tus txhawj xeeb tias qhov kev kho zaum kawg yuav tsis nco qab thiab kho ib ntus yuav siv mus ib txhis. Qhov teeb meem no tsim nyog tau txais kev saib xyuas vim tias nws yooj yim dhau los kho cov teeb meem ib ntus es tsis txhob ua qhov xwm txheej mus tas li. Cov thawj coj thiab cov neeg ua haujlwm ua haujlwm ua lub luag haujlwm tseem ceeb hauv kev siv cov kev kho mus sij hawm ntev, txhawb nqa thiab saib xyuas qhov tseem ceeb ntawm kev kho lub sijhawm ntev txawm tias tom qab pib "mob" txo qis.

Kev ceeb toom tsis tu ncua, rov ua dua thiab cov lus teb algorithmic yuav tsum yog tus chij liab. Koj pab neeg tsis kam ua cov ntawv ceeb toom no txhais tau tias pab pawg tsis muaj kev ntseeg siab tias lawv tuaj yeem ntseeg cov algorithms. Qhov no yog ib qho teeb meem loj uas yuav tsum tau daws.

Lub sij hawm ntev

Ib lub ntsiab lus txuas nrog Bigtable thiab Gmail piv txwv: kev sib tw ntawm qhov muaj nyob rau lub sijhawm luv thiab ntev. Feem ntau, kev siv zog muaj zog tuaj yeem pab kom lub cev tsis muaj zog ua kom muaj kev txaus siab, tab sis txoj hauv kev no feem ntau yog luv luv, fraught nrog pab pawg burnout thiab kev vam khom rau ib tug me me ntawm cov tswv cuab ntawm tib pab neeg heroic.

Kev tswj hwm, kev txo qis hauv lub sijhawm luv luv yog feem ntau mob, tab sis lub tswv yim tseem ceeb rau kev ruaj ntseg ntawm lub cev mus ntev. Nws yog ib qho tseem ceeb tsis txhob saib txhua qhov kev ceeb toom nyob rau hauv kev sib cais, tab sis yuav tsum txiav txim siab seb tag nrho cov theem ntawm kev ceeb toom ua rau muaj kev noj qab haus huv, siv tau zoo nrog pab pawg siv tau thiab muaj txiaj ntsig zoo. Peb txheeb xyuas cov ntaub ntawv ceeb toom zaus (feem ntau yog qhia raws li qhov xwm txheej ntawm kev ua haujlwm, qhov twg qhov xwm txheej yuav muaj ntau yam xwm txheej) hauv peb lub hlis twg cov lus ceeb toom rau kev tswj hwm, tso cai rau cov neeg txiav txim siab kom muaj kev saib xyuas tsis tu ncua ntawm kev ceeb toom load thiab tag nrho pab neeg noj qab haus huv.

xaus

Txoj hauv kev rau kev saib xyuas kev noj qab haus huv thiab kev ceeb toom yog qhov yooj yim thiab meej. Nws tsom ntsoov rau cov tsos mob ntawm qhov teeb meem uas ua rau muaj kev ceeb toom, thiab kev saib xyuas qhov ua rau ua haujlwm pab daws teeb meem. Kev soj ntsuam cov tsos mob yooj yim dua qhov siab dua koj nyob hauv pawg koj tswj, txawm hais tias kev saib xyuas kev thauj khoom thiab kev ua haujlwm ntawm cov ntaub ntawv yuav tsum tau ua ncaj qha rau ntawm cov ntaub ntawv nws tus kheej. Cov ntawv ceeb toom email muaj txiaj ntsig tsawg heev thiab nyiam yooj yim ua suab nrov; Hloov chaw, koj yuav tsum siv lub dashboard uas saib xyuas txhua qhov teeb meem tam sim no uas ua rau muaj kev ceeb toom email. Lub dashboard kuj tseem tuaj yeem ua ke nrog lub rooj sib tham los txheeb xyuas keeb kwm kev sib raug zoo.

Nyob rau hauv lub sij hawm ntev, nws yog ib qho tsim nyog kom ua tiav qhov kev sib hloov ntawm kev ceeb toom txog cov tsos mob thiab cov teeb meem tiag tiag, hloov cov hom phiaj los xyuas kom meej tias kev soj ntsuam txhawb kev kuaj mob sai.

Ua tsaug rau koj nyeem cov lus txhais kom txog thaum kawg. Subscribe rau kuv tus telegram channel txog kev saib xyuas @monitorim_nws и blog ntawm Medium.

Tau qhov twg los: www.hab.com

Ntxiv ib saib