
SRE (Site Reliability Engineering) on ââlĂ€henemine veebiprojektide kĂ€ttesaadavuse tagamiseks. Seda peetakse DevOpsi raamistikuks ja see rÀÀgib sellest, kuidas saavutada edu DevOpsi praktikate rakendamisel. TĂ”lge selles artiklis raamatud Google'ilt. Selle tĂ”lke koostasin ise ja tuginesin oma kogemustele seireprotsesside mĂ”istmisel. Telegrammi kanalis Đž Avaldasin ka sama raamatu 6. peatĂŒki tĂ”lke teenusetaseme eesmĂ€rkide kohta.
Kassi tÔlge. Nautige lugemist!
Teenust on vÔimatu juhtida, kui puudub arusaam, millised nÀitajad tegelikult olulised ning kuidas neid mÔÔta ja hinnata. Sel eesmÀrgil mÀÀratleme ja pakume oma kasutajatele teatud teenusetaseme, olenemata sellest, kas nad kasutavad mÔnda meie sisemist API-d vÔi avalikku toodet.
Kasutame oma intuitsiooni, kogemusi ja arusaama kasutajate soovist mÔista teenusetaseme indikaatoreid (SLI), teenusetaseme eesmÀrke (SLO) ja teenusetaseme lepinguid (SLA). Need dimensioonid kirjeldavad peamisi mÔÔdikuid, mida soovime jÀlgida ja millele me reageerime, kui ei suuda pakkuda oodatud teenuse kvaliteeti. LÔppkokkuvÔttes aitab Ôigete mÔÔdikute valimine suunata Ôigeid toiminguid, kui midagi lÀheb valesti, ja annab ka SRE meeskonnale kindlustunde teenuse tervise suhtes.
Selles peatĂŒkis kirjeldatakse lĂ€henemisviisi, mida me kasutame meetermÔÔdustiku modelleerimise, mÔÔdikute valiku ja mÔÔdikuanalĂŒĂŒsi probleemidega vĂ”itlemiseks. Suurem osa selgitustest on ilma nĂ€ideteta, seega kasutame pĂ”hipunktide illustreerimiseks selle rakendusnĂ€ites kirjeldatud Shakespeare'i teenust (otsige Shakespeare'i teoseid).
Teenusetaseme terminoloogia
Paljud lugejad on SLA mĂ”istega tĂ”enĂ€oliselt tuttavad, kuid mĂ”isted SLI ja SLO vÀÀrivad hoolikat defineerimist, sest ĂŒldiselt on termin SLA ĂŒlekoormatud ja sellel on olenevalt kontekstist mitu tĂ€hendust. Selguse huvides tahame need vÀÀrtused eraldada.
nÀitajad
SLI on teenusetaseme indikaator â hoolikalt mÀÀratletud kvantitatiivne mÔÔdik osutatava teenuse taseme ĂŒhe aspekti kohta.
Enamiku teenuste puhul loetakse vĂ”tme SLI-ks pĂ€ringu latentsust â kui kaua kulub pĂ€ringule vastuse tagastamiseks. Teised levinud SLI-d hĂ”lmavad veamÀÀra, mida sageli vĂ€ljendatakse murdosa kĂ”igist saadud pĂ€ringutest, ja sĂŒsteemi lĂ€bilaskevĂ”imet, mida tavaliselt mÔÔdetakse pĂ€ringutes sekundis. MÔÔtmised on sageli koondatud: algandmed kogutakse esmalt ja seejĂ€rel teisendatakse muutuse mÀÀraks, keskmiseks vĂ”i protsentiiliks.
Ideaalis mÔÔdab SLI otse huvipakkuvat teenusetaset, kuid mÔnikord on mÔÔtmiseks saadaval ainult seotud mÔÔdik, kuna algset on raske hankida vÔi tÔlgendada. NÀiteks kliendipoolne latentsusaeg on sageli sobivam mÔÔdik, kuid mÔnikord saab latentsust mÔÔta ainult serveris.
Teine SRE-de jaoks oluline SLI tĂŒĂŒp on saadavus vĂ”i ajavahemik, mille jooksul teenust saab kasutada. Sageli mÀÀratletakse edukate taotluste mÀÀrana, mida mĂ”nikord nimetatakse ka tootluseks. (Eluiga â tĂ”enĂ€osus, et andmeid sĂ€ilitatakse pikema aja jooksul â on samuti oluline andmesalvestussĂŒsteemide puhul.) Kuigi 100% saadavus pole vĂ”imalik, on sageli saavutatav 100% lĂ€hedane saadavus; saadavuse vÀÀrtused on vĂ€ljendatud jĂ€rgmiselt. "ĂŒheksade" arv » saadavuse protsent. NĂ€iteks vĂ”ib 99% ja 99,999% saadavuse mĂ€rgistada kui "2 ĂŒheksat" ja "5 ĂŒheksat". Google Compute Engine'i praegune teatatud saadavuseesmĂ€rk on "kolm ja pool ĂŒheksat" ehk 99,95%.
EesmÀrgid
SLO on teenusetaseme eesmĂ€rk: teenusetaseme sihtvÀÀrtus vĂ”i vÀÀrtuste vahemik, mida SLI mÔÔdab. SLO normaalvÀÀrtus on âSLI †sihtmĂ€rkâ vĂ”i âAlumine piir †SLI â€ ĂŒlemine piirâ. NĂ€iteks vĂ”ime otsustada, et tagastame Shakespeare'i otsingutulemused kiiresti, mÀÀrates SLO-ks keskmiseks otsingupĂ€ringu latentsusajaks alla 100 millisekundi.
Ăige SLO valimine on keeruline protsess. Esiteks ei saa te alati valida konkreetset vÀÀrtust. Teie teenusesse sissetulevate vĂ€liste HTTP-pĂ€ringute puhul mÀÀrab pĂ€ringu sekundis (QPS) mÔÔdiku peamiselt teie kasutajate soov teie teenust kĂŒlastada ja te ei saa selle jaoks SLO-d mÀÀrata.
Teisest kĂŒljest vĂ”ite öelda, et soovite, et iga pĂ€ringu keskmine latentsusaeg oleks alla 100 millisekundi. Sellise eesmĂ€rgi seadmine vĂ”ib sundida teid kirjutama oma kasutajaliidese madala latentsusajaga vĂ”i ostma seadmeid, mis sellist latentsust pakuvad. (100 millisekundit on ilmselgelt suvaline arv, kuid parem on veelgi vĂ€iksemad latentsusarvud. On tĂ”endeid, mis viitavad sellele, et kiired kiirused on paremad kui aeglased ja et teatud vÀÀrtustest suurem latentsus kasutajate pĂ€ringute töötlemisel sunnib inimesi tegelikult eemale hoidma teie teenusest.)
See on jĂ€llegi mitmetĂ€henduslikum, kui esmapilgul vĂ”ib tunduda: te ei tohiks QPS-i arvutusest tĂ€ielikult vĂ€lja jĂ€tta. Fakt on see, et QPS ja latentsus on ĂŒksteisega tugevalt seotud: kĂ”rgem QPS viib sageli kĂ”rgema latentsusaega ja teenuste jĂ”udlus vĂ€heneb tavaliselt jĂ€rsult, kui nad jĂ”uavad teatud koormuslĂ€veni.
SLO valimine ja avaldamine seab kasutaja ootused teenuse toimimise suhtes. See strateegia vĂ”ib vĂ€hendada alusetuid kaebusi teenuse omaniku vastu, nĂ€iteks aeglast jĂ”udlust. Ilma selgesĂ”nalise SLOta loovad kasutajad sageli oma ootused soovitud jĂ”udluse kohta, millel ei pruugi olla midagi pistmist teenust kavandavate ja haldavate inimeste arvamustega. Selline olukord vĂ”ib tekitada teenuselt ĂŒlespuhutud ootusi, kui kasutajad usuvad ekslikult, et teenus on kĂ€ttesaadavam kui see tegelikult on, ning tekitada umbusaldust, kui kasutajad usuvad, et sĂŒsteem on vĂ€hem töökindel kui see tegelikult on.
Kokkulepped
Teenusetaseme leping on otsene vĂ”i kaudne leping teie kasutajatega, mis hĂ”lmab selles sisalduvate SLO-de tĂ€itmise (vĂ”i mittetĂ€itmise) tagajĂ€rgi. TagajĂ€rjed on kĂ”ige kergemini Ă€ratuntavad, kui need on rahalised â allahindlus vĂ”i trahv â, kuid need vĂ”ivad esineda ka muul kujul. Lihtne viis SLO-de ja SLA-de erinevusest rÀÀkida on kĂŒsida: "Mis juhtub, kui SLO-d ei ole tĂ€idetud?" Kui selgeid tagajĂ€rgi pole, vaatate peaaegu kindlasti SLO-d.
SRE ei ole tavaliselt SLA-de loomisega seotud, kuna SLA-d on tihedalt seotud Àri- ja tooteotsustega. SRE on aga seotud ebaÔnnestunud SLO-de tagajÀrgede leevendamisega. Need vÔivad aidata ka SLI-d mÀÀrata: Ilmselgelt peab lepingus olema objektiivne viis SLO mÔÔtmiseks, vastasel juhul tekib lahkarvamus.
Google'i otsing on nĂ€ide olulisest teenusest, millel pole avalikku teeninduslepingut: me tahame, et kĂ”ik kasutaksid otsingut vĂ”imalikult tĂ”husalt, kuid me pole sĂ”lminud maailmaga lepingut. Otsingu puudumisel on siiski tagajĂ€rjed â kĂ€ttesaamatus toob kaasa meie maine languse ja reklaamitulu vĂ€henemise. Paljudel teistel Google'i teenustel, nagu Google for Work, on kasutajatega selgesĂ”nalised teenusetaseme lepingud. Olenemata sellest, kas konkreetsel teenusel on SLA, on oluline mÀÀratleda SLI ja SLO ning kasutada neid teenuse haldamiseks.
Nii palju teooriat â nĂŒĂŒd kogeda.
NĂ€itajad praktikas
Arvestades, et oleme jĂ”udnud jĂ€reldusele, et teenusetaseme mÔÔtmiseks on oluline valida sobivad mÔÔdikud, kuidas te nĂŒĂŒd teate, millised mÔÔdikud on teenuse vĂ”i sĂŒsteemi jaoks olulised?
Mis teile ja teie kasutajatele korda lÀheb?
Te ei pea kasutama kĂ”iki mÔÔdikuid SLI-na, mida saate jĂ€lgida seiresĂŒsteemis; MĂ”istmine, mida kasutajad sĂŒsteemilt soovivad, aitab teil valida mitu mÔÔdikut. Kui valite liiga palju indikaatoreid, on raske olulistele nĂ€itajatele keskenduda, samas kui vĂ€ikese arvu valimine vĂ”ib jĂ€tta teie sĂŒsteemi suured osad jĂ€relevalveta. Tavaliselt kasutame sĂŒsteemi tervise hindamiseks ja mĂ”istmiseks mitut pĂ”hinĂ€itajat.
Teenused vĂ”ib ĂŒldiselt jagada mitmeks osaks, mis on nende jaoks asjakohased:
- Kohandatud esiotsasĂŒsteemid, nĂ€iteks Shakespeare'i teenuse otsinguliidesed meie nĂ€ites. Need peavad olema kĂ€ttesaadavad, neil ei tohi olla viivitusi ja neil peab olema piisav ribalaius. Sellest lĂ€htuvalt vĂ”ib esitada kĂŒsimusi: kas saame pĂ€ringule vastata? Kui kaua kulus taotlusele vastamiseks? Kui palju taotlusi saab töödelda?
- SĂ€ilitussĂŒsteemid. Nad hindavad madalat reageerimise latentsust, kĂ€ttesaadavust ja vastupidavust. Seotud kĂŒsimused: kui kaua kulub andmete lugemiseks vĂ”i kirjutamiseks? Kas soovi korral saame andmetele juurde pÀÀseda? Kas andmed on saadaval siis, kui neid vajame? Nende probleemide ĂŒksikasjalikuks aruteluks vaadake 26. peatĂŒkki Andmete terviklikkus: see, mida loete, on see, mida kirjutate.
- Suured andmesĂŒsteemid, nagu andmetöötluskonveierid, sĂ”ltuvad lĂ€bilaskevĂ”imest ja pĂ€ringu töötlemise latentsusest. Seotud kĂŒsimused: kui palju andmeid töödeldakse? Kui kaua kulub andmete liikumiseks pĂ€ringu saamisest vastuse andmiseni? (MĂ”nel sĂŒsteemi osal vĂ”ib teatud etappidel esineda viivitusi.)
NĂ€itajate kogumine
Paljud teenusetaseme nĂ€itajad kogutakse kĂ”ige loomulikumalt serveri poolel, kasutades jĂ€lgimissĂŒsteemi nagu Borgmon (vt allpool). ) vĂ”i Prometheus vĂ”i lihtsalt logide perioodiline analĂŒĂŒsimine, HTTP-vastuste tuvastamine olekuga 500. MĂ”ned sĂŒsteemid peaksid siiski olema varustatud kliendipoolsete mÔÔdikute kogumisega, kuna kliendipoolse jĂ€lgimise puudumine vĂ”ib kaasa tuua mitmete probleemide puudumise. kasutajaid, kuid see ei mĂ”juta serveripoolseid mÔÔdikuid. NĂ€iteks meie Shakespeare'i otsingu testrakenduse taustavastuse latentsusele keskendumine vĂ”ib JavaScripti probleemide tĂ”ttu pĂ”hjustada kasutaja poolel latentsusaega: sel juhul on parem mÔÔdik, kui mÔÔta, kui kaua brauseril lehe töötlemiseks kulub.
Liitmine
Lihtsuse ja kasutusmugavuse huvides koondame sageli töötlemata mÔÔtmised. Seda tuleb teha hoolikalt.
MĂ”ned mÔÔdikud tunduvad lihtsad, nĂ€iteks pĂ€ringud sekundis, kuid isegi see nĂ€iliselt lihtne mÔÔtmine koondab kaudselt andmeid aja jooksul. Kas mÔÔtmistulemus vĂ”etakse vastu konkreetselt ĂŒks kord sekundis vĂ”i keskmistatakse taotluste arv minutis? Viimane valik vĂ”ib varjata palju suurema hetkepĂ€ringute arvu, mis kestavad vaid mĂ”ne sekundi. MĂ”elge sĂŒsteemile, mis teenindab 200 taotlust sekundis paarisarvudega ja 0 ĂŒlejÀÀnud aja. Konstant keskmise vÀÀrtusena 100 pĂ€ringut sekundis ja kaks korda suurem hetkekoormus ei ole sama asi. Samamoodi vĂ”ib pĂ€ringu latentsusaegade keskmistamine tunduda atraktiivne, kuid see peidab endas olulist detaili: on vĂ”imalik, et enamik pĂ€ringuid on kiired, kuid palju on aeglaseid pĂ€ringuid.
Enamikku nĂ€itajaid on parem vaadelda pigem jaotuste kui keskmistena. NĂ€iteks SLI latentsusaja puhul töödeldakse mĂ”nda taotlust kiiresti, samas kui mĂ”nel kulub alati kauem aega, mĂ”nikord palju kauem. Lihtne keskmine vĂ”ib neid pikki viivitusi varjata. Joonisel on nĂ€ide: kuigi tĂŒĂŒpilise pĂ€ringu teenindamiseks kulub umbes 50 ms, on 5% pĂ€ringutest 20 korda aeglasemad! Ainult keskmisel latentsusajal pĂ”hinev jĂ€lgimine ja hoiatamine ei nĂ€ita muutusi kĂ€itumises pĂ€eva jooksul, kuigi tegelikult on mĂ€rgatavaid muutusi mĂ”ne pĂ€ringu töötlemise ajas (ĂŒlemine rida).

50, 85, 95 ja 99 protsentiili sĂŒsteemi latentsusaeg. Y-telg on logaritmilises vormingus.
Indikaatorite protsentiilide kasutamine vĂ”imaldab nĂ€ha jaotuse kuju ja selle omadusi: kĂ”rge protsentiili tase, nĂ€iteks 99 vĂ”i 99,9, nĂ€itab halvimat vÀÀrtust, samas kui 50 protsentiil (tuntud ka kui mediaan) nĂ€itab kĂ”ige sagedasemat jaotuse olekut. mÔÔdik. Mida suurem on reageerimisaja hajumine, seda rohkem mĂ”jutavad pikaajalised pĂ€ringud kasutajakogemust. Efekt tugevneb suure koormuse korral ja jĂ€rjekordade korral. Kasutajakogemuse uuringud on nĂ€idanud, et inimesed eelistavad ĂŒldiselt aeglasemat ja suure reageerimisaja dispersiooniga sĂŒsteemi, mistĂ”ttu mĂ”ned SRE meeskonnad keskenduvad ainult kĂ”rgetele protsentiiliskooridele, lĂ€htudes sellest, et kui mÔÔdiku kĂ€itumine 99,9 protsentiili juures on hea, ei teki enamikul kasutajatel probleeme. .
MĂ€rkus statistiliste vigade kohta
Ăldiselt eelistame töötada protsentiilidega, mitte vÀÀrtuste komplekti keskmise (aritmeetilise keskmise) abil. See vĂ”imaldab arvestada hajutatumaid vÀÀrtusi, millel on sageli keskmisest oluliselt erinevad (ja huvitavamad) omadused. ArvutussĂŒsteemide kunstliku olemuse tĂ”ttu on meetrilised vÀÀrtused sageli moonutatud, nĂ€iteks ĂŒkski pĂ€ring ei saa vastust vĂ€hem kui 0 ms jooksul ja 1000 ms ajalĂ”pp tĂ€hendab, et suuremate vÀÀrtustega ei saa olla edukaid vastuseid kui ajalĂ”pp. Selle tulemusena ei saa me nĂ”ustuda sellega, et keskmine ja mediaan vĂ”ivad olla samad vĂ”i ĂŒksteisele lĂ€hedased!
Ilma eelneva testimiseta ja kui teatud standardsed eeldused ja ligikaudsed hinnangud ei kehti, oleme ettevaatlikud, et mitte jÀreldada, et meie andmed on tavapÀraselt jaotunud. Kui levitamine ei vasta ootustele, vÔib probleemi lahendav automatiseerimisprotsess (nÀiteks kui see nÀeb kÔrvalekaldeid, taaskÀivitab serveri suure pÀringu töötlemise latentsusajaga) seda teha liiga sageli vÔi mitte piisavalt sageli (mÔlemad ei ole vÀga hea).
Indikaatorite standardimine
Soovitame SLI ĂŒldomadused standardida, et te ei peaks nende ĂŒle iga kord spekuleerima. Ăksiku SLI spetsifikatsioonist vĂ”ib vĂ€lja jĂ€tta kĂ”ik funktsioonid, mis vastavad standardmustritele, nĂ€iteks:
- Koondamisintervallid: "keskmiselt ĂŒle 1 minuti"
- Koondamisalad: âKĂ”ik ĂŒlesanded klastrisâ
- MÔÔtmiste sagedus: "Iga 10 sekundi jÀrel"
- Mis pÀringud on kaasatud: "HTTP GET from black box monitooring jobs"
- Kuidas andmeid saadakse: "TÀnu meie serveris mÔÔdetud monitooringule"
- AndmejuurdepÀÀsu latentsusaeg: "Aeg viimase baidini"
JĂ”upingutuste sÀÀstmiseks looge iga ĂŒhise mÔÔdiku jaoks korduvkasutatavate SLI mallide komplekt; need aitavad ka kĂ”igil paremini mĂ”ista, mida teatud SLI tĂ€hendab.
EesmÀrgid praktikas
Alustuseks mÔelge (vÔi uurige vÀlja!), mis teie kasutajatele korda lÀheb, mitte sellele, mida saate mÔÔta. Sageli on seda, millest teie kasutajad hoolivad, raske vÔi vÔimatu mÔÔta, nii et jÔuate nende vajadustele lÀhemale. Kui aga alustate lihtsalt sellest, mida on lihtne mÔÔta, saate lÔpuks vÀhem kasulikke SLO-sid. SeetÔttu oleme mÔnikord avastanud, et algselt soovitud eesmÀrkide vÀljaselgitamine ja seejÀrel konkreetsete nÀitajatega töötamine toimib paremini kui indikaatorite valimine ja seejÀrel eesmÀrkide saavutamine.
MÀÀratlege oma eesmÀrgid
Maksimaalse selguse huvides tuleks mÀÀratleda, kuidas SLO-sid mÔÔdetakse ja millistel tingimustel need kehtivad. NĂ€iteks vĂ”ime öelda jĂ€rgmist (teine âârida on sama, mis esimene, kuid kasutab SLI vaikeseadeid):
- 99% (keskmiselt ĂŒle 1 minuti) Hangi RPC kĂ”nedest sooritatakse vĂ€hem kui 100 ms jooksul (mÔÔdetuna kĂ”igis taustaserverites).
- 99% Get RPC kÔnedest lÔpetatakse vÀhem kui 100 ms jooksul.
Kui jÔudluskÔverate kuju on oluline, saate mÀÀrata mitu SLO-d.
- 90% Get RPC kÔnedest lÔpetati vÀhem kui 1 ms jooksul.
- 99% Get RPC kÔnedest lÔpetati vÀhem kui 10 ms jooksul.
- 99.9% RPC-kÔned viiakse lÔpule vÀhem kui 100 ms-ga.
Kui teie kasutajad loovad heterogeenseid töökoormusi: hulgitöötlus (mille puhul on oluline lÀbilaskevÔime) ja interaktiivne töötlemine (mille puhul on oluline latentsusaeg), vÔib olla kasulik mÀÀratleda iga koormusklassi jaoks eraldi eesmÀrgid:
- 95% klientide soovidest nÔuavad lÀbilaskevÔimet. MÀÀrake teostatud RPC-kÔnede arv <1 s.
- 99% klientidest hoolib latentsusest. MÀÀrake RPC-kÔnede arv liiklusega <1 KB ja kestusega <10 ms.
On ebareaalne ja ebasoovitav nĂ”uda, et SLO-d tĂ€idetaks 100% ajast: see vĂ”ib vĂ€hendada uute funktsioonide juurutamise ja juurutamise tempot ning nĂ”uda kalleid lahendusi. Selle asemel on parem lubada veaeelarve â sĂŒsteemi seisaku protsent â ââja jĂ€lgida seda vÀÀrtust iga pĂ€ev vĂ”i kord nĂ€dalas. KĂ”rgem juhtkond vĂ”ib soovida igakuist vĂ”i kvartaalset hindamist. (Veaeelarve on lihtsalt SLO vĂ”rdluseks teise SLO-ga.)
SLO rikkumiste protsenti saab vĂ”rrelda veaeelarvega (vt peatĂŒkki 3 ja jaotist ), kusjuures erinevuse vÀÀrtust kasutatakse sisendina protsessis, mis otsustab, millal uusi versioone juurutada.
SihtvÀÀrtuste valimine
PlaneerimisvÀÀrtuste (SLO) valimine ei ole puhtalt tehniline tegevus, kuna need tooted ja Ă€rihuvid peavad kajastuma valitud SLI-des, SLO-des (ja vĂ”ib-olla ka SLA-des). Samuti vĂ”ib osutuda vajalikuks teabe vahetamine personali, turule jĂ”udmise aja, seadmete kĂ€ttesaadavuse ja rahastamisega seotud kĂŒsimuste kohta. SRE peaks olema selle vestluse osa ja aitama mĂ”ista erinevate vĂ”imaluste riske ja elujĂ”ulisust. Oleme esitanud mĂ”ned kĂŒsimused, mis vĂ”ivad aidata tagada produktiivsema arutelu:
Ărge valige eesmĂ€rki praeguse soorituse pĂ”hjal.
Kuigi sĂŒsteemi tugevuste ja piiride mĂ”istmine on oluline, vĂ”ib mÔÔdikute kohandamine ilma arutluseta takistada sĂŒsteemi ĂŒlalpidamist: see nĂ”uab kangelaslikke jĂ”upingutusi eesmĂ€rkide saavutamiseks, mida pole vĂ”imalik saavutada ilma olulise ĂŒmberkujundamiseta.
Hoidke see lihtne
Komplekssed SLI-arvutused vĂ”ivad varjata muutusi sĂŒsteemi jĂ”udluses ja raskendada probleemi pĂ”hjuse leidmist.
VĂ€ltige absoluutsusi
Kuigi on ahvatlev omada sĂŒsteemi, mis suudab toime tulla lĂ”putult kasvava koormusega ilma latentsust suurendamata, on see nĂ”ue ebareaalne. Sellistele ideaalidele lĂ€henev sĂŒsteem nĂ”uab tĂ”enĂ€oliselt palju aega projekteerimiseks ja ehitamiseks, on kulukas kasutada ja on liiga hea nende kasutajate ootuste jaoks, kes teeksid midagi vĂ€hemat.
Kasutage vÔimalikult vÀhe SLO-sid
Valige piisav arv SLO-sid, et tagada sĂŒsteemiatribuutide hea katvus. Kaitske valitud SLO-sid: kui te ei saa kunagi vĂ”ita prioriteetide ĂŒle vaidlemist konkreetse SLO mÀÀramisega, ei tasu tĂ”enĂ€oliselt seda SLO-d arvesse vĂ”tta. Kuid mitte kĂ”ik sĂŒsteemiatribuudid ei ole SLO-de jaoks kohaldatavad: kasutaja rÔÔmu taset on SLO-de abil keeruline arvutada.
Ărge pĂŒĂŒdke tĂ€iuslikkust taga
Saate SLO-de mÀÀratlusi ja eesmĂ€rke aja jooksul alati tĂ€psustada, kui saate lisateavet sĂŒsteemi kĂ€itumise kohta koormuse all. Parem on alustada ujuvast eesmĂ€rgist, mida aja jooksul tĂ€psustate, kui valida liiga range eesmĂ€rk, mida tuleb leevendada, kui leiate, et see on saavutamatu.
SLO-d vÔivad ja peaksid olema SRE-de ja tootearendajate töö prioriteedi mÀÀramisel vÔtmeteguriks, kuna need peegeldavad kasutajate muret. Hea SLO on arendusmeeskonna jaoks kasulik jÔustamistööriist. Kuid halvasti kavandatud SLO vÔib pÔhjustada raiskavat tööd, kui meeskond teeb kangelaslikke jÔupingutusi liiga agressiivse SLO saavutamiseks vÔi kehva toote, kui SLO on liiga madal. SLO on vÔimas hoob, kasuta seda targalt.
Kontrollige oma mÔÔtmisi
SLI ja SLO on sĂŒsteemide haldamiseks kasutatavad pĂ”hielemendid:
- SLI-sĂŒsteemide jĂ€lgimine ja mÔÔtmine.
- VÔrrelge SLI-d SLO-ga ja otsustage, kas on vaja midagi ette vÔtta.
- Kui on vaja tegutseda, mÔelge vÀlja, mis eesmÀrgi saavutamiseks peaks juhtuma.
- Viige see toiming lÔpule.
NĂ€iteks kui samm 2 nĂ€itab, et pĂ€ring on aegumas ja katkestab SLO mĂ”ne tunni pĂ€rast, kui midagi ei tehta, vĂ”ib 3. samm hĂ”lmata hĂŒpoteesi testimist, et serverid on CPU-ga seotud ja rohkemate serverite lisamine jaotab koormuse. Ilma SLO-ta ei teaks, kas (vĂ”i millal) midagi ette vĂ”tta.
MÀÀra SLO â siis mÀÀratakse kasutaja ootused
SLO avaldamine seab kasutaja ootused sĂŒsteemi kĂ€itumisele. Kasutajad (ja potentsiaalsed kasutajad) tahavad sageli teada, mida teenuselt oodata, et mĂ”ista, kas see sobib kasutamiseks. NĂ€iteks vĂ”ivad inimesed, kes soovivad kasutada fotode jagamise veebisaiti, soovida vĂ€ltida teenuse kasutamist, mis lubab pikaealisust ja madalat hinda, vastutasuks veidi vĂ€iksema saadavuse eest, kuigi sama teenus vĂ”ib olla ideaalne arhiividokumentide haldussĂŒsteemi jaoks.
Kasutajatele realistlike ootuste seadmiseks kasutage ĂŒhte vĂ”i mĂ”lemat jĂ€rgmistest taktikatest.
- SĂ€ilitage ohutusvaru. Kasutage kasutajatele reklaamitavast rangemat sisemist SLO-d. See annab sulle vĂ”imaluse reageerida probleemidele enne, kui need vĂ€ljastpoolt nĂ€htavaks muutuvad. SLO puhver vĂ”imaldab teil ka sĂŒsteemi jĂ”udlust mĂ”jutavate vĂ€ljaannete installimisel kasutada ohutusvaru ja tagada, et sĂŒsteemi on lihtne hooldada, ilma et peaksite kasutajaid seisakutega hĂ€irima.
- Ărge ĂŒletage kasutaja ootusi. Kasutajad pĂ”hinevad teie pakutaval, mitte teie ĂŒtlemisel. Kui teie teenuse tegelik jĂ”udlus on palju parem kui mĂ€rgitud SLO, loodavad kasutajad praegusele jĂ”udlusele. Saate vĂ€ltida liigset sĂ”ltuvust, lĂŒlitades sĂŒsteemi tahtlikult vĂ€lja vĂ”i piirates jĂ”udlust vĂ€ikese koormuse korral.
SĂŒsteemi ootustele vastamise mĂ”istmine aitab otsustada, kas investeerida sĂŒsteemi kiirendamisse ning selle kĂ€ttesaadavamaks ja vastupidavamaks muutmisse. Teise vĂ”imalusena, kui teenus toimib liiga hĂ€sti, tuleks osa töötajatest kulutada muudele prioriteetidele, nĂ€iteks tehniliste vĂ”lgade tasumisele, uute funktsioonide lisamisele vĂ”i uute toodete tutvustamisele.
Kokkulepped praktikas
SLA loomine nÔuab, et Àri- ja juriidilised meeskonnad mÀÀratleksid selle rikkumise tagajÀrjed ja karistused. SRE roll on aidata neil mÔista SLA-s sisalduvate SLO-de tÀitmise tÔenÀolisi vÀljakutseid. Enamik SLO-de loomise soovitusi kehtivad ka SLA-de kohta. Kasutajatele lubatavates asjades on mÔistlik olla konservatiivne, sest mida rohkem teil on, seda raskem on muuta vÔi eemaldada SLA-sid, mis tunduvad ebamÔistlikud vÔi raskesti tÀidetavad.
TÀname, et lugesite tÔlke lÔpuni. Tellige minu telegrammi kanal jÀlgimise kohta О .
Allikas: www.habr.com
