{"id":95999,"date":"2020-10-06T13:41:58","date_gmt":"2020-10-06T11:41:58","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/poka-vse-prazdnovali-moj-den-rozhdeniya-ya-do-utra-chinil-klaster-a-razraby-valili-na-menya-svoi-oshibki"},"modified":"2020-10-06T13:41:58","modified_gmt":"2020-10-06T11:41:58","slug":"poka-vse-prazdnovali-moj-den-rozhdeniya-ya-do-utra-chinil-klaster-a-razraby-valili-na-menya-svoi-oshibki","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/poka-vse-prazdnovali-moj-den-rozhdeniya-ya-do-utra-chinil-klaster-a-razraby-valili-na-menya-svoi-oshibki","title":{"rendered":"Kuni k\u00f5ik t\u00e4histasid minu s\u00fcnnip\u00e4eva, parandasin ma hommikuni klastrit \u2014 ja arendajad s\u00e4utsusid oma vigu minu suunas.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Kuni k\u00f5ik t\u00e4histasid minu s\u00fcnnip\u00e4eva, parandasin ma hommikuni klastrit \u2014 ja arendajad s\u00e4utsusid oma vigu minu suunas.\" src=\"\/wp-content\/uploads\/2020\/10\/f67882cb5b565cb2efef20f68bbef1d5.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSiin on lugu, mis muutis igaveseks minu l\u00e4henemist DevOpsile. Veel enne Covidit, kaua-kaua enne neid aegu, kui me oma meeskonnaga alles hakkasime m\u00f5tlema oma \u00e4ri peale ja tegelesime juhuslike tellimustega, sain ma Telegrami kaudu \u00fche pakkumise. <\/p>\n<p>Ettev\u00f5te, kes kirjutas, tegeles andmeanal\u00fc\u00fcsiga. Igal p\u00e4eval t\u00f6\u00f6tlesid nad tuhandeid p\u00e4ringuid. Nad tulid meie juurde s\u00f5nadega: \"Meil on ClickHouse ja me tahame automatiseerida selle seadistamist ja paigaldamist. Soovime Ansible'it, Terraform'i, Dockerit ja k\u00f5ike seda, et see oleks salvestatud GIT-i. Tahame nelja s\u00f5lme klastrit, kus iga\u00fches on kaks koopiat.\" <\/p>\n<p>Tavap\u00e4rane palve, milliseid on k\u00fcmneid, ning vajame sama head standardlahendust. Me \u00fctlesime: \"okei\", ja 2-3 n\u00e4dala jooksul oli k\u00f5ik valmis. Nad aktsepteerisid t\u00f6\u00f6 ja hakkasid meie utiliidi abil uuele ClickHouse'i klassile \u00fcle minema. <br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nNeil ei soovinud ega osanud keegi ClickHouse'iga tegeleda. Siis m\u00f5tlesime, et see on nende peamine probleem, ja seet\u00f5ttu andis ettev\u00f5tte CTO lihtsalt k\u00e4skluse minu meeskonnale, et automatiseerida t\u00f6\u00f6 maksimaalselt, et sinna enam mitte kunagi sekkuda.<\/p>\n<p>Meie asusime kolimisega, kuid ilmusid uued \u00fclesanded \u2014 seadistada varukoopiad ja j\u00e4lgimine. Just sel hetkel lahkus selle ettev\u00f5tte CTO teisele projektile, j\u00e4ttes meile komand\u00f6riks \u00fche oma inimestest \u2014 Leonidi. L\u0451nya polnud just k\u00f5ige andekam t\u00fc\u00fcp. Tavaline arendaja, kelle \u00e4kki pandi ClickHouse'i peamiseks. Tundub, et see oli tema esimene m\u00e4\u00e4ramine mingitki juhtida, ja aukohust tuntud kuulsus m\u00f5jus talle nagu paljudele. <\/p>\n<p>Koos asusime varukoopiate kallale. Ma pakkusin kohe algandmeid varundama. Lihtsalt v\u00f5tta, zipida ja elegantset S3'le \u00fcles laadida. Algandmed on kuld. Oli ka teine v\u00f5imalus \u2014 varundada tabelid ClickHouse'is, abil k\u00fclmutamist ja kopeerimist. Kuid \u041b\u0451\u043d\u044f tuli v\u00e4lja oma lahendusega.<\/p>\n<p>Ta kuulutas, et meil on vaja teist ClickHouse'i klastrit. Edaspidi kirjutame andmed kahe klastrisse \u2014 peamise ja varukoopiale. Ma \u00fctlen talle, kuule, L\u0451nya, see pole varukoopia \u2014 vaid aktiivne peegeldus. Ja kui andmed hakkavad kaduma tootmises, on sinu varukoopias sama asi. <\/p>\n<p>Aga Ljonja hoidis kindlalt rooli ja keeldus mu argumendid kuulamast. Me arutasime pikka aega chatis, aga muud midagi ei j\u00e4\u00e4nud \u2014 Ljonja juhtis projekti, meie olime lihtsalt t\u00e4naval\u00f5bustajateks palgatud poisid.<\/p>\n<p>Me j\u00e4lgisime klastrite seisukorda ja maksime ainult administraatorite t\u00f6\u00f6 eest. Puhtalt ClickHouse'i haldamine, ilma andmetesse sekkumata. Klastri ligip\u00e4\u00e4s oli olemas, kettad olid normaalsed, s\u00f5lmed olid korras. <\/p>\n<h3>Me ei kahtlustanud veel, et saime selle tellimuse hirmu\u00e4ratseva arusaamatuse t\u00f5ttu nende meeskonna seest.<\/h3>\n<p>\nJuht oli rahulolematu, et ClickHouse t\u00f6\u00f6tab aeglaselt ja andmed kaovad m\u00f5nikord. Ta seadis oma CTO-le \u00fclesande asja uurida. Too uuris, kuidas oskas, ja tegi j\u00e4relduse, et on lihtsalt vaja ClickHouse automatiseerida \u2014 ja k\u00f5ik. Kuid nagu peagi selgus \u2014 nad vajasid t\u00e4iesti teistsugust devopsi meeskonda.<\/p>\n<p>Kogu see teave tuli v\u00e4lja v\u00e4ga-v\u00e4ga valulikult. Ja k\u00f5ige h\u00e4biv\u00e4\u00e4rsem oli see, et see juhtus mu s\u00fcnnip\u00e4eval.<\/p>\n<p>\nReede \u00f5htu. Ma broneerisin laua oma lemmikveinibaaris ja kutsusin s\u00f5pru. <\/p>\n<p>Peaaegu v\u00e4ljas\u00f5idu eel saime \u00fclesande teha alternatiivi, tegime selle \u00e4ra, k\u00f5ik oli korras. Alternatiiv l\u00e4ks l\u00e4bi, klikhaus kinnitas. Me olime juba baaris koos, kui meilt kirjutati, et andmed on puudu. Kontrollisime \u2014 tundus, et k\u00f5ik on olemas. Ja l\u00e4ksime pidutsema.<\/p>\n<p>Restoranis oli nagu reede \u00f5htul ikka, m\u00fcrarikka. Tellisime joogid ja toidu ning vajusime diivanitele. Kogu selle aja tulid mu Slaki s\u00f5numid \u00fcha rohkem. Mingi teema andmete puudusest. M\u00f5tlesin, et hommik on \u00f5htust targem. Eriti veel t\u00e4nasel p\u00e4eval.<\/p>\n<p>Kella \u00fcksteist hakkasime juba helistama. See oli ettev\u00f5tte juht... \"K\u00fcllap tahtis mind \u00f5nnitleda,\" m\u00f5tlesin v\u00e4ga ebakindlalt ning vastasin telefonile.<\/p>\n<p>Ja kuulsin midagi stiilis: \"Teie esitasite meie andmed! Ma maksan teile, aga mitte miski ei t\u00f6\u00f6ta! Te vastutasite varukoopiate eest ja ei teinud mitte midagi! Tehke korda!\" \u2014 ainult veel j\u00e4medamalt.<\/p>\n<p>\u2014 Tead, mine sa pekki! T\u00e4na on mu s\u00fcnnip\u00e4ev ja ma hakkan n\u00fc\u00fcd jooma, mitte ei tegele teie algajate oma toimetustega, mis on tehtud liigse ja paksu palkidest!<\/p>\n<p>Nii et ma ei \u00f6elnud seda. Selle asemel v\u00f5tsin s\u00fclearvuti ja asusin t\u00f6\u00f6le.<\/p>\n<p>Ei, ma pommitasin, ma pommitasin t\u00f5eliselt! Kaatsin vestlusesse teravaid 'ma ju \u00fctlesin' \u2014 kuna varukoopia, mis tegelikult ei olnud varukoopia, ei p\u00e4\u00e4stnud muidugi midagi. <\/p>\n<p>Me kutid m\u00f5tlesime v\u00e4lja, kuidas k\u00e4sitsi peatada salvestamise ja k\u00f5ik \u00fcle kontrollida. Me t\u00f5esti veendusime, et osa andmeid ei salvestunud.<\/p>\n<p>Peatasime salvestamise, lugesime kokku s\u00fcndmused, mis seal p\u00e4eva jooksul olid. Lisatasime veel andmeid, millest ainult kolmandik ei salvestunud. Kolm shard'i kaks koopiat. Paned 100.000 rida \u2014 33.000 ei salvestu.<\/p>\n<p>Toimus t\u00e4ielik segadus. K\u00f5ik saatsid teineteist j\u00e4rjestikusele p\u00f5rgusse: esimesena l\u00e4ks Leenia, siis j\u00e4rgnesin mina ja ettev\u00f5tte asutaja. Ainult hiljuti liitunud CTO \u00fcritas meie k\u00f5nesid karjudes ning vestlust lahenduse leidmiseks suunata. <\/p>\n<h3>Mis tegelikult juhtus \u2014 keegi ei saanud aru.<\/h3>\n<p>\nMe olime kutidega lihtsalt \u0161okeeritud, kui m\u00f5istsime, et kolmandik k\u00f5igist andmetest mitte lihtsalt ei salvestunud \u2014 need kaotasid! Selgus, et ettev\u00f5ttes oli selline kord: p\u00e4rast sisestamist kustutati andmed p\u00f6\u00f6rdumatult, s\u00fcndmused kadusid hulgiti. Kujutlesin, kuidas Sergei k\u00f5ike seda soovimatuks saanud rubla sisse muundab.<\/p>\n<p>Ka minu s\u00fcnnip\u00e4ev visati ka pr\u00fcgikasti. Me istusime baaris ja genereerisime ideid, p\u00fc\u00fcdes \u00e4ra arvata visatud m\u00f5istatust. ClickHouse'i kukkumise p\u00f5hjus ei olnud ilmne. V\u00f5ib-olla on see v\u00f5rguga seotud, v\u00f5ib-olla Linuxi seadetega. Mis iganes, h\u00fcpoteese tuli piisavalt.<\/p>\n<p>Ma ei andnud arendaja vande, kuid poiste ootamine teisel pool kaablit oli ebaaus \u2014 isegi kui nad s\u00fc\u00fcdistasid meid k\u00f5iges. Olin 99% kindel, et probleem ei olnud meie lahendustes, mitte meie poolel. 1% v\u00f5imalus, et ikkagi eksisime, kurnas \u00e4revust. Kuid olenemata sellest, kummal poolel h\u00e4da ei olnud \u2014 see tuli parandada. Kliendiga, olgugi et nad olid, sellise hirmu\u00e4ratava andmelekkega j\u00e4tta \u2014 see on liiga julm.<\/p>\n<p>Kella kolme hommikul t\u00f6\u00f6tasime restoranis laua taga. Me lisasime s\u00fcndmusi, insert select \u2014 ja hakkasime l\u00fcnki t\u00e4itma. Kui oled andmed kaotanud, toimib asi nii \u2014 v\u00f5tad keskmised andmed eelmistest p\u00e4evadest ja sisestad need kaotatud kohtadesse.<\/p>\n<p>P\u00e4rast kolm \u00f6\u00f6sel l\u00e4ksin koos s\u00f5bra juurde, tellisime alkomarketist \u00f5lut. Istusin s\u00fclearvuti ja Clickhouse'i probleemide kallal, s\u00f5ber r\u00e4\u00e4kis mulle midagi. Tulemuseks, tunni p\u00e4rast solvus ta selle peale, et ma t\u00f6\u00f6tan, mitte ei joo temaga \u00f5lut, ja s\u00f5itis \u00e4ra. Klassika \u2014 devopsi s\u00f5ber.<\/p>\n<p>Kell 6 hommikul l\u00f5in tabeli uuesti \u00fcles ja andmed hakkasid laadima. K\u00f5ik toimis ilma kaotusteta.<\/p>\n<p><\/p>\n<h3>Edasi l\u00e4ks keeruliseks. K\u00f5ik s\u00fc\u00fcdistasid teineteist andmete kaotuses. Kui ilmneks uus bug, olen ma kindel, et algaks tulevahetus.<\/h3>\n<p>\nNendes t\u00fclikates aruteludes hakkasime l\u00f5puks aru saama \u2014 ettev\u00f5ttes arvasid, et oleme need t\u00fc\u00fcbid, kes t\u00f6\u00f6tavad andmete kallal ja hoolitsevad tabelite struktuuri eest. Nad segasid administraatorid DB adminidega kokku. Ja tulid k\u00fcsima meie k\u00e4est kaugelt mitte nagu administraatorite poole.<\/p>\n<p>Nende peamine kaebus oli \u2014 kuradi eest, te vastutasite varukoopiate eest ja ei teinud neid korralikult, rikkusite andmed. Ja k\u00f5ik see koos roppuste ja s\u00f5imudega.<\/p>\n<p>Ma tahtsin \u00f5iglust. Kaevusin vestlusesse ja lisasin k\u00f5ik ekraanipiltidega, kus Leonid k\u00f5igest j\u00f5ust n\u00f5uab teha selline varukoopia, nagu oli tehtud. Nende CTO asus p\u00e4rast minu telefonik\u00f5net meie poolele. L\u00f5puks tunnustas ka Lena oma s\u00fc\u00fcd.<\/p>\n<p>Ettev\u00f5tte juhataja ei soovinud oma alaeksperte s\u00fc\u00fcdistada. Ekraanipildid ja s\u00f5nad ei m\u00f5junud temale. Ta arvas, et kuna meie oleme siin eksperdid, siis peaksime suutma k\u00f5iki veenda ja oma otsusest kinni pidama. Ilmselt oli meie \u00fclesanne \u00f5petada Ljonjat, m\u00f6\u00f6da minnes temast, kes oli projekti juht, j\u00f5uda peajuhini ja talle isiklikult k\u00f5ik meie kahtlused varukoopia kontseptsiooni osas v\u00e4lja \u00f6elda. <\/p>\n<p>Vestlusvoog oli t\u00e4is viha, nii varjatud kui ka avatud agressiooni. Ma ei teadnud, mida teha. K\u00f5ik oli ummikus. Siis soovitati mulle k\u00f5ige lihtsamat viisi \u2014 kirjutada projektijuhile ja leppida temaga kohtumise kokku. Vasja, inimesed ei ole elus nii julged nagu vestluses. Minu s\u00f5numile vastas boss: \u201eTule, pole probleemi.\u201d<\/p>\n<p>\nSee oli mu karj\u00e4\u00e4ri k\u00f5ige hirmu\u00e4ratav kohtumine. Minu liitlane kliendi poolt \u2014 CTO \u2014 ei saanud aega leida. Ma s\u00f5itsin kohtumisele enda juhiga ja Ljonjaga.<\/p>\n<p>Korduvalt m\u00f5tlesin meie v\u00f5imalikule dialoogile. Suutsin kohale j\u00f5uda varakult, poole tunni v\u00f5rra varem. Alguses tekkis \u00e4revus, suitsutasin 10 sigaretti. Ma m\u00f5istsin, et olen t\u00e4ielikult \u00fcksi. Ma ei suuda neid veenda. Asetasin end liftisse.<\/p>\n<p>Kuna ma t\u00f5usin, kriipisin tuletelega nii, et see purunes.<\/p>\n<p>L\u00f5puks polnud Leoni kohtumisel kohal. Ja me r\u00e4\u00e4kisime k\u00f5igest suurep\u00e4raselt! Sergei r\u00e4\u00e4kis mulle oma muredest. Ta ei tahtnud 'ClickHouse'i automatiseerida' \u2014 ta tahtis, et 'p\u00e4ringud t\u00f6\u00f6taksid'.<\/p>\n<p>Ma ei n\u00e4inud kitsed, vaid head kutti, kes muretses oma \u00e4ri p\u00e4rast ja oli t\u00f6\u00f6s 24\/7. Vestlus joonistab meile sageli v\u00e4lja kurikaelu, petiseid ja lolle. Kuid elus on need inimesed samasugused nagu sina. <\/p>\n<p>Sergeile ei olnud vajalikud paar allhankijat. Probleem, mis neil tekkis, osutus palju suuremaks. <\/p>\n<p>Ma \u00fctlesin, et saan tema mured lahendada \u2014 lihtsalt see on hoopis teine t\u00f6\u00f6 ja mul on selleks tuttav DBA. Kui me alguses oleksime teadnud, et see asi on neile, oleksime palju v\u00e4ltinud. Hilja, aga me m\u00f5istsime, et probleem seisnes halvas andmek\u00e4itluses, mitte infrastruktuuris. <\/p>\n<p>Me surusime k\u00e4ed ja meie tasu t\u00f5usis kaks ja pool korda, kuid tingimusel \u2014 ma v\u00f5tan k\u00f5ik nende andmete ja ClickHouse'i probleemid enda kanda. Liftis kirjutasin selle sama DBA Maxiga ja \u00fchendasin ta t\u00f6\u00f6le. Tuli kogu klaster l\u00e4bi t\u00f6\u00f6tada.<\/p>\n<p>\nProjektis oli palju segadust. Alustades juba mainitud \u201evarundusest\u201c. Selgus, et see \u201evarundus\u201c-klaster ei olnud isoleeritud. Sellel katsetati k\u00f5ike ja vahel lasti isegi tootmisse.<\/p>\n<p>Kohalikud arendajad l\u00f5id enda kohandatud \u201eandmete sisestaja\u201c. See t\u00f6\u00f6tas nii: kogus faile, k\u00e4ivitas skripti ja \u00fchendas andmed tabelisse. Kuid peamine probleem oli see, et \u00e4\u00e4rmiselt suur andmemass v\u00f5eti vastu \u00fche k\u00f5ige lihtsama p\u00e4ringu jaoks. P\u00e4ring liitis andmed sekundite kaupa. K\u00f5ik selle \u00fche numbri \u2014 p\u00e4eva kokkuv\u00f5tte \u2014 nimel.<\/p>\n<p>Kohalikud arendajad kasutasid anal\u00fc\u00fcsit\u00f6\u00f6riista valesti. Nad l\u00e4ksid Grafanasse, kirjutasid oma kuninglikud p\u00e4ringud. Need laadisid alla andmeid kahe n\u00e4dala kaupa. Tuli ilus graafik. Kuid tegelikult k\u00e4is andmete p\u00e4ring iga 10 sekundi j\u00e4rel. See k\u00f5ik kuhjus j\u00e4rjekorda, kuna ClickHouse ei suutnud lihtsalt t\u00f6\u00f6tlust toime tulla. Seal peituski peamine p\u00f5hjus. Grafanas ei t\u00f6\u00f6tanud miski, p\u00e4ringud seisid j\u00e4rjekorras, pidevalt saabusid vanad ebaolulised andmed.<\/p>\n<p>Me seadistasime klastrit \u00fcmber, muutsime sisestamise protsessi. Kohalikud arendajad kirjutasid oma \u201esisestaja\u201c \u00fcmber ja see hakkas andmeid korrektselt \u0161ardima.<\/p>\n<p>Max viis t\u00e4ieliku infrastruktuuri auditi l\u00e4bi. Ta koostas plaani \u00fcleminekuks t\u00e4ielikule backendile. Kuid see ei rahuldanud ettev\u00f5tet. Nad ootasid Maxilt maagilist saladust, mis lubaks vanaviisi t\u00f6\u00f6tada, kuid t\u00f5husalt. Projekti eest vastutas endiselt Leonja, kes ei olnud midagi \u00f5ppinud. K\u00f5igest, mis pakuti, valis ta taas oma alternatiivi. Nagu alati, oli see k\u00f5ige valitum... julge lahendus. Leonja arvas, et tema ettev\u00f5ttel on eriline tee. Pikk ja t\u00e4is j\u00e4\u00e4m\u00e4gesid.<\/p>\n<p>Omanik, nii me ka lahku l\u00e4ksime \u2014 tegime, mis suutsime.<\/p>\n<p>\nKogemustega, selle loo \u00f5ppetunde kandes, alustasime oma \u00e4ri ja m\u00e4\u00e4ratlesime endale mitu p\u00f5him\u00f5tet. Praegu ei alusta me kunagi t\u00f6\u00f6d samamoodi nagu tookord.<\/p>\n<p>P\u00e4rast seda projekti liitus meiega Dibi\u0259y\u015fik Max ja me t\u00f6\u00f6tame seni suurep\u00e4raselt koos. Klikhausiga seotud projekt \u00f5petas meid tehtud t\u00f6\u00f6 eel t\u00e4ielikku ja p\u00f5hjalikku infrastruktuuri auditi l\u00e4biviimist. Me s\u00fc\u00fcvime, kuidas k\u00f5ik toimib, ja alles seej\u00e4rel v\u00f5tame \u00fclesanded. Kui varem oleksime kohe hakanud infrastruktuuri teenindama, siis n\u00fc\u00fcd teeme esmalt \u00fchekorra projekti, mis aitab m\u00f5ista, kuidas seda t\u00f6\u00f6valmidusse viia. <\/p>\n<p>Jah, me v\u00e4ldime projekte, kus on kehv infrastruktuur. Isegi kui raha on palju, isegi kui s\u00f5prade t\u00f5ttu. Haigete projektide haldamine ei ole kasulik. Selle teadlikkus on aidanud meil kasvada. Kas \u00fchekorra projekt infrastruktuuri korrastamiseks ja seej\u00e4rel teenindusleping, v\u00f5i lihtsalt j\u00e4tame selle vahele. J\u00e4tame vahele veel \u00fche j\u00e4\u00e4m\u00e4e.<\/p>\n<p><i>P.S. Nii et kui teil on k\u00fcsimusi oma infrastruktuuri kohta, <noindex><a rel=\"nofollow\" href=\"https:\/\/fevlake.com\"><b>v\u00f5ite julgelt j\u00e4tta taotluse<\/b><\/a><\/noindex>.<\/p>\n<p>Meil on kuus 2 tasuta audiiti, v\u00f5ib-olla on just teie projekt nende seas.<\/i><br \/>\n<br \/>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/rebrainme\/blog\/522108\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u043e\u0442 \u0438\u0441\u0442\u043e\u0440\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430\u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u0435\u0440\u0435\u0432\u0435\u0440\u043d\u0443\u043b\u0430 \u043c\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u0440\u0430\u0431\u043e\u0442\u0435 \u0434\u0435\u0432\u043e\u043f\u0441\u0430. \u0415\u0449\u0435 \u0432 \u0434\u043e\u043a\u043e\u0432\u0438\u0434\u043d\u044b\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0430, \u0437\u0430\u0434\u043e\u043b\u0433\u043e-\u0437\u0430\u0434\u043e\u043b\u0433\u043e \u0434\u043e \u043d\u0438\u0445, \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0441 \u043f\u0430\u0440\u043d\u044f\u043c\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0434\u0443\u043c\u044b\u0432\u0430\u043b\u0438 \u0441\u0432\u043e\u0435 \u0434\u0435\u043b\u043e \u0438 \u0444\u0440\u0438\u043b\u0430\u043d\u0441\u0438\u043b\u0438 \u043d\u0430 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0437\u0430\u043a\u0430\u0437\u0430\u0445, \u043c\u043d\u0435 \u0432 \u0442\u0435\u043b\u0435\u0433\u0443 \u0443\u043f\u0430\u043b\u043e \u043e\u0434\u043d\u043e \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435. \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0430, \u0437\u0430\u043d\u0438\u043c\u0430\u043b\u0430\u0441\u044c \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445. \u0415\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u043e \u043e\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043b\u0430 \u0442\u044b\u0441\u044f\u0447\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u041a \u043d\u0430\u043c \u043e\u043d\u0438 \u043f\u0440\u0438\u0448\u043b\u0438 \u0441\u043e \u0441\u043b\u043e\u0432\u0430\u043c\u0438: \u0440\u0435\u0431\u044f\u0442, \u0443 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":96000,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-95999","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u043e\u0442 \u0438\u0441\u0442\u043e\u0440\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430\u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u0435\u0440\u0435\u0432\u0435\u0440\u043d\u0443\u043b\u0430 \u043c\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u0440\u0430\u0431\u043e\u0442\u0435 \u0434\u0435\u0432\u043e\u043f\u0441\u0430. \u0415\u0449\u0435 \u0432 \u0434\u043e\u043a\u043e\u0432\u0438\u0434\u043d\u044b\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0430, \u0437\u0430\u0434\u043e\u043b\u0433\u043e-\u0437\u0430\u0434\u043e\u043b\u0433\u043e \u0434\u043e \u043d\u0438\u0445, \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0441 \u043f\u0430\u0440\u043d\u044f\u043c\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0434\u0443\u043c\u044b\u0432\u0430\u043b\u0438 \u0441\u0432\u043e\u0435 \u0434\u0435\u043b\u043e \u0438 \u0444\u0440\u0438\u043b\u0430\u043d\u0441\u0438\u043b\u0438 \u043d\u0430 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0437\u0430\u043a\u0430\u0437\u0430\u0445, \u043c\u043d\u0435 \u0432 \u0442\u0435\u043b\u0435\u0433\u0443 \u0443\u043f\u0430\u043b\u043e \u043e\u0434\u043d\u043e \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435. \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0430, \u0437\u0430\u043d\u0438\u043c\u0430\u043b\u0430\u0441\u044c \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445. \u0415\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u043e \u043e\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043b\u0430 \u0442\u044b\u0441\u044f\u0447\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u041a \u043d\u0430\u043c \u043e\u043d\u0438 \u043f\u0440\u0438\u0448\u043b\u0438 \u0441\u043e \u0441\u043b\u043e\u0432\u0430\u043c\u0438: \u0440\u0435\u0431\u044f\u0442, \u0443\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/poka-vse-prazdnovali-moj-den-rozhdeniya-ya-do-utra-chinil-klaster-a-razraby-valili-na-menya-svoi-oshibki\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041f\u043e\u043a\u0430 \u0432\u0441\u0435 \u043f\u0440\u0430\u0437\u0434\u043d\u043e\u0432\u0430\u043b\u0438 \u043c\u043e\u0439 \u0434\u0435\u043d\u044c \u0440\u043e\u0436\u0434\u0435\u043d\u0438\u044f, \u044f \u0434\u043e \u0443\u0442\u0440\u0430 \u0447\u0438\u043d\u0438\u043b \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u2014 \u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u044b \u0432\u0430\u043b\u0438\u043b\u0438 \u043d\u0430 \u043c\u0435\u043d\u044f \u0441\u0432\u043e\u0438 \u043e\u0448\u0438\u0431\u043a\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u043e\u0442 \u0438\u0441\u0442\u043e\u0440\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430\u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u0435\u0440\u0435\u0432\u0435\u0440\u043d\u0443\u043b\u0430 \u043c\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u0440\u0430\u0431\u043e\u0442\u0435 \u0434\u0435\u0432\u043e\u043f\u0441\u0430. \u0415\u0449\u0435 \u0432 \u0434\u043e\u043a\u043e\u0432\u0438\u0434\u043d\u044b\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0430, \u0437\u0430\u0434\u043e\u043b\u0433\u043e-\u0437\u0430\u0434\u043e\u043b\u0433\u043e \u0434\u043e \u043d\u0438\u0445, \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0441 \u043f\u0430\u0440\u043d\u044f\u043c\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0434\u0443\u043c\u044b\u0432\u0430\u043b\u0438 \u0441\u0432\u043e\u0435 \u0434\u0435\u043b\u043e \u0438 \u0444\u0440\u0438\u043b\u0430\u043d\u0441\u0438\u043b\u0438 \u043d\u0430 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0437\u0430\u043a\u0430\u0437\u0430\u0445, \u043c\u043d\u0435 \u0432 \u0442\u0435\u043b\u0435\u0433\u0443 \u0443\u043f\u0430\u043b\u043e \u043e\u0434\u043d\u043e \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435. \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0430, \u0437\u0430\u043d\u0438\u043c\u0430\u043b\u0430\u0441\u044c \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445. \u0415\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u043e \u043e\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043b\u0430 \u0442\u044b\u0441\u044f\u0447\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u041a \u043d\u0430\u043c \u043e\u043d\u0438 \u043f\u0440\u0438\u0448\u043b\u0438 \u0441\u043e \u0441\u043b\u043e\u0432\u0430\u043c\u0438: \u0440\u0435\u0431\u044f\u0442, \u0443\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/poka-vse-prazdnovali-moj-den-rozhdeniya-ya-do-utra-chinil-klaster-a-razraby-valili-na-menya-svoi-oshibki\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-10-06T11:41:58+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-10-06T11:41:58+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Kui k\u00f5ik t\u00e4histasid minu s\u00fcnnip\u00e4eva, siis mina parandasin \u00f6\u00f6sel klastrit \u2014 ja arendajad puistasid mulle oma vigu | ProHoster","description":"Siin on lugu, mis muutis igaveseks minu l\u00e4henemist DevOpsile. Aegadel enne pandeemiat, kaua-kaua enne seda, kui me koos poistega vaid oma \u00e4ri plaanisime ja osalise t\u00f6\u00f6ajaga juhuslike projektidega tegelesime, sain ma \u00fchte pakkumist. \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f, kes pakkumise tegi, tegeles andmete anal\u00fc\u00fcsiga. Igap\u00e4evaselt t\u00f6\u00f6tlesid nad tuhandeid p\u00e4ringuid. Nemad p\u00f6\u00f6rdusid meie poole s\u00f5nadega: poisid, meil on teie...","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/poka-vse-prazdnovali-moj-den-rozhdeniya-ya-do-utra-chinil-klaster-a-razraby-valili-na-menya-svoi-oshibki","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041f\u043e\u043a\u0430 \u0432\u0441\u0435 \u043f\u0440\u0430\u0437\u0434\u043d\u043e\u0432\u0430\u043b\u0438 \u043c\u043e\u0439 \u0434\u0435\u043d\u044c \u0440\u043e\u0436\u0434\u0435\u043d\u0438\u044f, \u044f \u0434\u043e \u0443\u0442\u0440\u0430 \u0447\u0438\u043d\u0438\u043b \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u2014 \u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u044b \u0432\u0430\u043b\u0438\u043b\u0438 \u043d\u0430 \u043c\u0435\u043d\u044f \u0441\u0432\u043e\u0438 \u043e\u0448\u0438\u0431\u043a\u0438 | ProHoster","og:description":"\u0412\u043e\u0442 \u0438\u0441\u0442\u043e\u0440\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430\u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u0435\u0440\u0435\u0432\u0435\u0440\u043d\u0443\u043b\u0430 \u043c\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u0440\u0430\u0431\u043e\u0442\u0435 \u0434\u0435\u0432\u043e\u043f\u0441\u0430. \u0415\u0449\u0435 \u0432 \u0434\u043e\u043a\u043e\u0432\u0438\u0434\u043d\u044b\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0430, \u0437\u0430\u0434\u043e\u043b\u0433\u043e-\u0437\u0430\u0434\u043e\u043b\u0433\u043e \u0434\u043e \u043d\u0438\u0445, \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0441 \u043f\u0430\u0440\u043d\u044f\u043c\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0434\u0443\u043c\u044b\u0432\u0430\u043b\u0438 \u0441\u0432\u043e\u0435 \u0434\u0435\u043b\u043e \u0438 \u0444\u0440\u0438\u043b\u0430\u043d\u0441\u0438\u043b\u0438 \u043d\u0430 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0437\u0430\u043a\u0430\u0437\u0430\u0445, \u043c\u043d\u0435 \u0432 \u0442\u0435\u043b\u0435\u0433\u0443 \u0443\u043f\u0430\u043b\u043e \u043e\u0434\u043d\u043e \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435. \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0430, \u0437\u0430\u043d\u0438\u043c\u0430\u043b\u0430\u0441\u044c \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445. \u0415\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u043e \u043e\u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043b\u0430 \u0442\u044b\u0441\u044f\u0447\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u041a \u043d\u0430\u043c \u043e\u043d\u0438 \u043f\u0440\u0438\u0448\u043b\u0438 \u0441\u043e \u0441\u043b\u043e\u0432\u0430\u043c\u0438: \u0440\u0435\u0431\u044f\u0442, \u0443","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/poka-vse-prazdnovali-moj-den-rozhdeniya-ya-do-utra-chinil-klaster-a-razraby-valili-na-menya-svoi-oshibki","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-10-06T11:41:58+00:00","article:modified_time":"2020-10-06T11:41:58+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"95999","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 10:53:26","updated":"2022-10-01 11:21:07"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/95999","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=95999"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/95999\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/96000"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=95999"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=95999"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=95999"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}