Vai ir jÄdzÄÅ” serveri, ja aizdegÄs datu centra dÅ«mu tests?
KÄ jÅ«s justos, ja kÄdÄ jaukÄ vasaras dienÄ datu centrs ar jÅ«su aprÄ«kojumu izskatÄ«tos Å”Ädi?
Sveiki visiem! Mani sauc Dmitrijs Samsonovs, es strÄdÄju par vadoÅ”o sistÄmas administratoru uzÅÄmumÄ "Klasesbiedri" FotoattÄlÄ redzams viens no Äetriem datu centriem, kurÄ ir uzstÄdÄ«ts mÅ«su projektu apkalpojoÅ”ais aprÄ«kojums. Aiz Ŕīm sienÄm atrodas aptuveni 4 tÅ«kstoÅ”i iekÄrtu: serveri, datu uzglabÄÅ”anas sistÄmas, tÄ«kla iekÄrtas utt. - gandrÄ«z treÅ”daļa no visa mÅ«su aprÄ«kojuma.
LielÄkÄ daļa serveru ir Linux. OperÄtÄjsistÄmÄ Windows (MS SQL) ir arÄ« vairÄki desmiti serveru - mÅ«su mantojums, no kura mÄs daudzus gadus esam sistemÄtiski atmetuÅ”i.
TÄpÄc 5. gada 2019. jÅ«nijÄ plkst. 14:35 inženieri vienÄ no mÅ«su datu centriem ziÅoja par ugunsgrÄka trauksmi.
Noliegums
14:45. Nelieli dÅ«mu gadÄ«jumi datu centros ir biežÄk sastopami, nekÄ jÅ«s domÄjat. RÄdÄ«tÄji iekÅ”telpÄs hallÄs bija normÄli, tÄpÄc mÅ«su pirmÄ reakcija bija samÄrÄ mierÄ«ga: ieviesa aizliegumu strÄdÄt ar ražoÅ”anu, tas ir, jebkÄdÄm konfigurÄcijas izmaiÅÄm, jaunu versiju izlaiÅ”anu utt., izÅemot darbus, kas saistÄ«ti ar kaut kÄ laboÅ”anu.
Dusmas
Vai esat kÄdreiz mÄÄ£inÄjis no ugunsdzÄsÄjiem noskaidrot, kur tieÅ”i uz jumta izcÄlies ugunsgrÄks, vai pats uzkÄpt uz degoÅ”a jumta, lai novÄrtÄtu situÄciju? KÄda bÅ«s uzticÄÅ”anÄs pakÄpe informÄcijai, kas saÅemta caur pieciem cilvÄkiem?
14: 50. SaÅemta informÄcija, ka ugunsgrÄks tuvojas dzesÄÅ”anas sistÄmai. Bet vai tas nÄks? DežūrÄjoÅ”ais sistÄmas administrators noÅem ÄrÄjo trafiku no Ŕī datu centra priekÅ”ÄjÄm daļÄm.
Å obrÄ«d visu mÅ«su pakalpojumu frontes ir dublÄtas trÄ«s datu centros, tiek izmantota balansÄÅ”ana DNS lÄ«menÄ«, kas ļauj noÅemt viena datu centra adreses no DNS, tÄdÄjÄdi pasargÄjot lietotÄjus no iespÄjamÄm problÄmÄm ar piekļuvi pakalpojumiem. . Ja datu centrÄ jau ir raduÅ”Äs problÄmas, tas automÄtiski pamet rotÄciju. VairÄk varat lasÄ«t Å”eit: Slodzes lÄ«dzsvaroÅ”ana un kļūdu tolerance Odnoklassniki.
PagaidÄm ugunsgrÄks mÅ«s nekÄdi nav skÄris ā ne lietotÄji, ne tehnika nav cietuÅ”i. Vai tas ir nelaimes gadÄ«jums? Dokumenta pirmajÄ sadaÄ¼Ä āNelaimes gadÄ«jumu rÄ«cÄ«bas plÄnsā ir definÄts jÄdziens āAvÄrijaā, un sadaļa beidzas Å”Ädi: Ā«Ja rodas Å”aubas, vai nelaime ir vai nav, tad tÄ ir nelaime!Ā»
14:53. Tiek iecelts ÄrkÄrtas situÄciju koordinators.
Koordinators ir persona, kas kontrolÄ komunikÄciju starp visiem dalÄ«bniekiem, novÄrtÄ negadÄ«juma mÄrogu, izmanto ÄrkÄrtas rÄ«cÄ«bas plÄnu, piesaista nepiecieÅ”amo personÄlu, uzrauga remontdarbu pabeigÅ”anu un, pats galvenais, deleÄ£Ä jebkurus uzdevumus. Citiem vÄrdiem sakot, Ŕī ir persona, kas pÄrvalda visu ÄrkÄrtas reaÄ£ÄÅ”anas procesu.
Tirdzniecība
15:01. MÄs sÄkam atspÄjot serverus, kas nav saistÄ«ti ar ražoÅ”anu.
15:03. MÄs pareizi izslÄdzam visus rezervÄtos pakalpojumus.
Tas ietver ne tikai frontes (kurÄm Å”ajÄ brÄ«dÄ« lietotÄji vairs nepiekļūst) un to palÄ«gpakalpojumus (biznesa loÄ£iku, keÅ”atmiÅas utt.), bet arÄ« dažÄdas datu bÄzes ar replikÄcijas koeficientu 2 vai vairÄk (Cassandra, binÄro datu glabÄÅ”ana, aukstÄ noliktava, NewSQL utt.).
15: 06. SaÅemta informÄcija, ka ugunsgrÄks draud vienÄ no datu centra zÄlÄm. Mums nav aprÄ«kojuma Å”ajÄ telpÄ, bet fakts, ka uguns var izplatÄ«ties no jumta uz hallÄm, ļoti maina priekÅ”statu par notiekoÅ”o.
(VÄlÄk izrÄdÄ«jÄs, ka zÄlei fizisku apdraudÄjumu nebija, jo tÄ bija hermÄtiski noslÄgta no jumta. Draudi bija tikai Ŕīs zÄles dzesÄÅ”anas sistÄmai.)
15:07. MÄs pieļaujam komandu izpildi serveros paÄtrinÄtÄ režīmÄ bez papildu pÄrbaudÄm (bez mÅ«su iecienÄ«tÄkÄ kalkulatora).
15:08. TemperatÅ«ra zÄlÄs ir normas robežÄs.
15: 12. Tika fiksÄta temperatÅ«ras paaugstinÄÅ”anÄs zÄlÄs.
15:13. VairÄk nekÄ puse datu centra serveru ir izslÄgti. TurpinÄsim.
15:16. Tika pieÅemts lÄmums izslÄgt visu aprÄ«kojumu.
15:21. MÄs sÄkam izslÄgt bezvalsts serveru baroÅ”anu, pareizi neizslÄdzot lietojumprogrammu un operÄtÄjsistÄmu.
15:23. Tiek izdalÄ«ta par MS SQL atbildÄ«go cilvÄku grupa (to ir maz, pakalpojumu atkarÄ«ba no tiem nav liela, taÄu funkcionalitÄtes atjaunoÅ”anas procedÅ«ra aizÅem ilgÄku laiku un ir sarežģītÄka nekÄ, piemÄram, Cassandra).
ŠŠµŠæŃŠµŃŃŠøŃ
15: 25. SaÅemta informÄcija par elektrÄ«bas atslÄgÅ”anu ÄetrÄs zÄlÄs no 16 (Nr.6, 7, 8, 9). MÅ«su tehnika atrodas 7. un 8. hallÄ. Par mÅ«su divÄm hallÄm (Nr. 1 un 3) informÄcijas nav.
Parasti ugunsgrÄku laikÄ strÄvas padeve tiek atslÄgta uzreiz, taÄu Å”ajÄ gadÄ«jumÄ, pateicoties saskaÅotam ugunsdzÄsÄju un datu centra tehniskÄ personÄla darbam, tÄ netika atslÄgta visur un ne uzreiz, bet pÄc vajadzÄ«bas.
(VÄlÄk atklÄjÄs, ka 8. un 9. hallÄ strÄva nebija atslÄgta.)
15:28. MÄs sÄkam izvietot MS SQL datu bÄzes no dublÄjumiem citos datu centros.
Cik ilgu laiku tas aizÅems? Vai ir pietiekami daudz tÄ«kla jaudas visam marÅ”rutam?
15: 37. Tika reÄ£istrÄta dažu tÄ«kla daļu izslÄgÅ”ana.
VadÄ«ba un ražoÅ”anas tÄ«kls ir fiziski izolÄti viens no otra. Ja ir pieejams ražoÅ”anas tÄ«kls, varat doties uz serveri, apturÄt lietojumprogrammu un izslÄgt OS. Ja tas nav pieejams, varat pieteikties, izmantojot IPMI, apturÄt lietojumprogrammu un izslÄgt OS. Ja nav neviena no tÄ«kliem, tad neko nevar darÄ«t. "Paldies, Cap!", jÅ«s domÄjat.
"Un vispÄr ir daudz satricinÄjumu," jÅ«s varÄtu arÄ« domÄt.
Lieta tÄda, ka serveri pat bez ugunsgrÄka rada milzÄ«gu siltuma daudzumu. PrecÄ«zÄk sakot, kad ir dzesÄÅ”ana, tie rada siltumu, un, kad nav dzesÄÅ”anas, tie rada elliŔķīgu pÄrli, kas labÄkajÄ gadÄ«jumÄ izkausÄs daļu aprÄ«kojuma un izslÄgs citu daļu, bet sliktÄkajÄ... izraisÄ«s ugunsgrÄks zÄlÄ, kas gandrÄ«z garantÄti visu iznÄ«cinÄs.
15:39. MÄs novÄrÅ”am problÄmas ar conf datu bÄzi.
Conf datu bÄze ir tÄda paÅ”a nosaukuma pakalpojuma aizmugursistÄma, ko izmanto visas ražoÅ”anas lietojumprogrammas, lai Ätri mainÄ«tu iestatÄ«jumus. Bez Ŕīs bÄzes mÄs nevaram kontrolÄt portÄla darbÄ«bu, bet pats portÄls var darboties.
15:41. TemperatÅ«ras sensori pamattÄ«kla iekÄrtÄs reÄ£istrÄ rÄdÄ«jumus tuvu maksimÄlajam pieļaujamajam. Å Ä« ir kaste, kas aizÅem visu plauktu un nodroÅ”ina visu tÄ«klu darbÄ«bu datu centrÄ.
15:42. ProblÄmu izsekotÄjs un wiki nav pieejami. PÄrslÄdzieties uz gaidÄ«Å”anas režīmu.
TÄ nav ražoÅ”ana, taÄu negadÄ«juma gadÄ«jumÄ jebkuras zinÄÅ”anu bÄzes pieejamÄ«ba var bÅ«t kritiska.
15:50. Viena no uzraudzÄ«bas sistÄmÄm ir izslÄgta.
TÄs ir vairÄkas, un tÄs ir atbildÄ«gas par dažÄdiem pakalpojumu aspektiem. Daži no tiem ir konfigurÄti, lai darbotos autonomi katrÄ datu centrÄ (tas ir, tie uzrauga tikai savu datu centru), citi sastÄv no sadalÄ«tiem komponentiem, kas pÄrredzami pÄrdzÄ«vo jebkura datu centra zaudÄÅ”anu.
Å ajÄ gadÄ«jumÄ tas pÄrstÄja darboties biznesa loÄ£ikas indikatoru anomÄliju noteikÅ”anas sistÄma, kas darbojas galvenÄ gaidÄ«Å”anas režīmÄ. PÄrslÄgts gaidÄ«Å”anas režīmÄ.
PieÅemÅ”ana
15:51. Visi serveri, izÅemot MS SQL, tika izslÄgti, izmantojot IPMI, neizslÄdzoties pareizi.
Vai esat gatavs masveida serveru pÄrvaldÄ«bai, izmantojot IPMI, ja nepiecieÅ”ams?
Pats brÄ«dis, kad Å”ajÄ posmÄ tiek pabeigta iekÄrtu glÄbÅ”ana datu centrÄ. Viss, ko varÄja izdarÄ«t, ir izdarÄ«ts. Daži kolÄÄ£i var atpÅ«sties.
16: 13. SaÅemta informÄcija, ka uz jumta plÄ«suÅ”as freona caurules no kondicionieriem - tas aizkavÄs datu centra palaiÅ”anu pÄc ugunsgrÄka likvidÄÅ”anas.
16:19. SaskaÅÄ ar datiem, kas saÅemti no datu centra tehniskajiem darbiniekiem, temperatÅ«ras paaugstinÄÅ”anÄs zÄlÄs ir apstÄjusies.
17:10. Conf datu bÄze ir atjaunota. Tagad mÄs varam mainÄ«t lietojumprogrammas iestatÄ«jumus.
KÄpÄc tas ir tik svarÄ«gi, ja viss ir izturÄ«gs pret defektiem un darbojas pat bez viena datu centra?
PirmkÄrt, ne viss ir izturÄ«gs pret kļūmÄm. Ir dažÄdi sekundÄrie pakalpojumi, kas vÄl nav pietiekami labi pÄrdzÄ«vojuÅ”i datu centra atteici, un ir datu bÄzes galvenÄ gaidÄ«Å”anas režīmÄ. IespÄja pÄrvaldÄ«t iestatÄ«jumus ļauj darÄ«t visu nepiecieÅ”amo, lai samazinÄtu negadÄ«juma seku ietekmi uz lietotÄjiem pat sarežģītos apstÄkļos.
OtrkÄrt, kļuva skaidrs, ka tuvÄko stundu laikÄ datu centra darbÄ«ba pilnÄ«bÄ netiks atjaunota, tÄpÄc bija nepiecieÅ”ams veikt pasÄkumus, lai ilgstoÅ”a repliku nepieejamÄ«ba neradÄ«tu papildu problÄmas, piemÄram, pilnus diskus. atlikuÅ”ie datu centri.
17:29. Picas laiks! MÄs nodarbinÄm cilvÄkus, nevis robotus.
AtjaunoŔana
18:02. HallÄ Nr.8 (mÅ«sÄjÄ), 9, 10 un 11 temperatÅ«ra ir nostabilizÄjusies. VienÄ no tiem, kas paliek bezsaistÄ (Nr. 7), atrodas mÅ«su aprÄ«kojums, un temperatÅ«ra tur turpina celties.
18:31. ViÅi deva atļauju iedarbinÄt iekÄrtas 1. un 3. hallÄ ā Ŕīs zÄles ugunsgrÄks neskÄra.
Å obrÄ«d serveru palaiÅ”ana notiek hallÄs Nr.1, 3, 8, sÄkot ar kritiskÄkajÄm. Tiek pÄrbaudÄ«ta visu darbojoÅ”os pakalpojumu pareiza darbÄ«ba. JoprojÄm ir problÄmas ar halli Nr.7.
18:44. Datu centra tehniskie darbinieki atklÄja, ka telpÄ Nr.7 (kur atrodas tikai mÅ«su tehnika) daudzi serveri nav izslÄgti. SaskaÅÄ ar mÅ«su datiem tur tieÅ”saistÄ paliek 26 serveri. PÄc otrÄs pÄrbaudes mÄs atrodam 58 serverus.
20:18. Datu centra tehniÄ·i pÅ«Å” gaisu cauri telpai bez gaisa kondicionÄÅ”anas, izmantojot mobilos kanÄlus, kas iet cauri gaiteÅiem.
23:08. Pirmais admins tika nosÅ«tÄ«ts mÄjÄs. KÄdam ir jÄguļ naktÄ«, lai rÄ«t varÄtu turpinÄt darbu. TÄlÄk mÄs izlaidÄ«sim vÄl dažus administratorus un izstrÄdÄtÄjus.
02:56. MÄs palaidÄm visu, ko varÄja palaist. MÄs daudz pÄrbaudÄm visus pakalpojumus, izmantojot automÄtiskos testus.
03:02. PÄdÄjÄ, 7.zÄlÄ ir atjaunota gaisa kondicionÄÅ”ana.
03:36. MÄs ieviesÄm datu centra frontes DNS rotÄcijÄ. No Ŕī brīža sÄk ienÄkt lietotÄju trafiks.
LielÄko daļu administratÄ«vÄs komandas sÅ«tÄm mÄjÄs. Bet mÄs atstÄjam dažus cilvÄkus.
Mazi FAQ:
J: Kas notika no 18:31 līdz 02:56?
A: PÄc āKatastrofu rÄ«cÄ«bas plÄnaā mÄs uzsÄkam visus pakalpojumus, sÄkot ar svarÄ«gÄkajiem. Å ajÄ gadÄ«jumÄ koordinators ÄatÄ pakalpojumu izsniedz bezmaksas administratoram, kurÅ” pÄrbauda, āāvai OS un lietojumprogramma ir sÄkusies, vai nav kļūdu un vai rÄdÄ«tÄji ir normÄli. Kad palaiÅ”ana ir pabeigta, viÅÅ” ziÅo tÄrzÄÅ”anai, ka ir brÄ«vs, un saÅem jaunu pakalpojumu no koordinatora.
Procesu vÄl vairÄk palÄnina aparatÅ«ras kļūme. Pat ja OS apturÄÅ”ana un serveru izslÄgÅ”ana noritÄja pareizi, daži serveri neatgriežas pÄkÅ”Åas disku, atmiÅas un Å”asijas kļūmes dÄļ. Kad jauda tiek zaudÄta, atteices lÄ«menis palielinÄs.
J: KÄpÄc jÅ«s nevarat palaist visu uzreiz un pÄc tam labot to, kas parÄdÄs uzraudzÄ«bÄ?
A: Viss ir jÄdara pakÄpeniski, jo starp pakalpojumiem pastÄv atkarÄ«bas. Un viss ir jÄpÄrbauda uzreiz, negaidot uzraudzÄ«bu - jo labÄk ar problÄmÄm tikt galÄ uzreiz, negaidot, kad tÄs saasinÄsies.
7:40. PÄdÄjais admins (koordinators) aizgÄja gulÄt. PirmÄs dienas darbi ir paveikti.
8:09. Pirmie izstrÄdÄtÄji, datu centru inženieri un administratori (ieskaitot jauno koordinatoru) sÄka restaurÄcijas darbus.
09:37. SÄkÄm celt zÄli Nr.7 (pÄdÄjo).
Vienlaikus turpinÄm atjaunot citÄs telpÄs neizlaboto: disku/atmiÅas/serveru nomaiÅu, visu, kas ādegā uzraudzÄ«bÄ, pÄrslÄgt lomas atpakaļ galvenÄs gaidstÄves shÄmÄs un citus sÄ«kumus, kas ir tomÄr diezgan daudz.
17:08. Atļaujam visu parasto darbu ar ražoŔanu.
21:45. OtrÄs dienas darbs ir pabeigts.
09:45. Å odien ir piektdiena. UzraudzÄ«bÄ joprojÄm ir diezgan daudz nelielu problÄmu. NedÄļas nogale ir priekÅ”Ä, visi vÄlas atpÅ«sties. MÄs turpinÄm masveidÄ remontÄt visu, ko varam. RegulÄri admin uzdevumi, kurus varÄja atlikt, tika atlikti. Koordinators ir jauns.
15:40. PÄkÅ”Åi CITÄ datu centrÄ tika restartÄta puse no Core tÄ«kla aprÄ«kojuma steka. Frontes tika izÅemtas no rotÄcijas, lai samazinÄtu riskus. LietotÄjiem nav nekÄdas ietekmes. VÄlÄk izrÄdÄ«jÄs, ka tÄ bija bojÄta Å”asija. Koordinators strÄdÄ pie divu avÄriju novÄrÅ”anas uzreiz.
17:17. TÄ«kla darbÄ«ba citÄ datu centrÄ ir atjaunota, viss ir pÄrbaudÄ«ts. Datu centrs tiek nodots rotÄcijai.
18:29. TreÅ”Äs dienas darbi un vispÄr restaurÄcija pÄc avÄrijas ir pabeigta.
PÄcvÄrds
04.04.2013. gads 404 kļūdas dienÄ, "Klasesbiedriem" izdzÄ«voja lielÄkajÄ avÄrijÄ ā trÄ«s dienas portÄls pilnÄ«bÄ vai daļÄji nebija pieejams. VisÄ Å”ajÄ laikÄ vairÄk nekÄ 100 cilvÄku no dažÄdÄm pilsÄtÄm, no dažÄdiem uzÅÄmumiem (vÄlreiz liels paldies!), attÄlinÄti un tieÅ”i datu centros, manuÄli un automÄtiski, remontÄja tÅ«kstoÅ”iem serveru.
MÄs esam izdarÄ«juÅ”i secinÄjumus. Lai tas neatkÄrtotos, esam veikuÅ”i un turpinÄm veikt apjomÄ«gus darbus lÄ«dz pat Å”ai dienai.
KÄdas ir galvenÄs atŔķirÄ«bas starp paÅ”reizÄjo negadÄ«jumu un 404?
Mums ir āNelaimes gadÄ«jumu rÄ«cÄ«bas plÄnsā. Reizi ceturksnÄ« rÄ«kojam mÄcÄ«bas - izspÄlÄjam ÄrkÄrtas situÄciju, kas administratoru grupai (visiem pÄc kÄrtas) jÄnovÄrÅ”, izmantojot āÄrkÄrtas rÄ«cÄ«bas plÄnuā. VadoÅ”ie sistÄmu administratori pÄrmaiÅus pilda koordinatora lomu.
Reizi ceturksnÄ« testa režīmÄ mÄs izolÄjam datu centrus (visus pÄc kÄrtas), izmantojot LAN un WAN tÄ«klus, kas ļauj mums operatÄ«vi noteikt vÄjÄs vietas.
MazÄk salauztu disku, jo esam pastiprinÄjuÅ”i standartus: mazÄk darba stundu, stingrÄki SMART sliekÅ”Åi,
MÄs pilnÄ«bÄ atteicÄmies no BerkeleyDB ā vecas un nestabilas datu bÄzes, kuras atjaunoÅ”anai pÄc servera restartÄÅ”anas bija nepiecieÅ”ams daudz laika.
MÄs samazinÄjÄm serveru skaitu ar MS SQL un samazinÄjÄm atkarÄ«bu no atlikuÅ”ajiem.
Mums ir savs mÄkonis - viens mÄkonis, kur jau divus gadus aktÄ«vi migrÄjam visus pakalpojumus. MÄkonis ievÄrojami vienkÄrÅ”o visu darba ciklu ar lietojumprogrammu, un negadÄ«juma gadÄ«jumÄ tas nodroÅ”ina tÄdus unikÄlus rÄ«kus kÄ:
pareiza visu lietojumprogrammu apturÄÅ”ana ar vienu klikŔķi;
vienkÄrÅ”a lietojumprogrammu migrÄcija no neveiksmÄ«giem serveriem;
automÄtiska ranžÄta (pakalpojumu prioritÄtes secÄ«bÄ) visa datu centra palaiÅ”ana.
Å ajÄ rakstÄ aprakstÄ«tais negadÄ«jums bija lielÄkais kopÅ” 404. dienas. Protams, ne viss gÄja gludi. PiemÄram, ugunsgrÄka bojÄta datu centra nepieejamÄ«bas laikÄ citÄ datu centrÄ vienÄ no serveriem sabojÄjÄs disks, tas ir, tikai viena no trim Cassandra klastera replikÄm palika pieejama, tÄpÄc 4,2% mobilo sakaru lietojumprogrammas lietotÄji nevarÄja pieteikties. TajÄ paÅ”Ä laikÄ jau pieslÄgtie lietotÄji turpinÄja strÄdÄt. KopumÄ negadÄ«juma rezultÄtÄ tika konstatÄtas vairÄk nekÄ 30 problÄmas - no banÄlÄm kļūdÄm lÄ«dz nepilnÄ«bÄm pakalpojumu arhitektÅ«rÄ.
TaÄu vissvarÄ«gÄkÄ atŔķirÄ«ba starp paÅ”reizÄjo negadÄ«jumu un 404. negadÄ«jumu ir tÄ, ka, kamÄr mÄs likvidÄjÄm ugunsgrÄka sekas, lietotÄji joprojÄm sÅ«tÄ«ja Ä«sziÅas un veica videozvanus uz Tamtam, spÄlÄja spÄles, klausÄ«jÄs mÅ«ziku, dÄvinÄja viens otram dÄvanas, skatÄ«jÄs video, seriÄlus un televÄ«zijas kanÄlus ŠŠ, un arÄ« straumÄts Labi tieÅ”raidÄ.