{"id":92073,"date":"2020-08-22T19:41:56","date_gmt":"2020-08-22T17:41:56","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/post-mortem-po-nedostupnosti-quay-io"},"modified":"2020-08-22T19:41:56","modified_gmt":"2020-08-22T17:41:56","slug":"post-mortem-po-nedostupnosti-quay-io","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/post-mortem-po-nedostupnosti-quay-io","title":{"rendered":"Post Mortem Quay.io k\u00e4ttesaamatuse kohta","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><i><b>M\u00e4rkus t\u00f5lke kohta.<\/b>: augusti alguses teatas Red Hat avalikult, et on lahendanud probleemid k\u00e4ttesaadavusega, mis olid tekkinud selle teenuse kasutajatele eelnevatel kuudel <noindex><a rel=\"nofollow\" href=\"http:\/\/quay.io\/\">Quay.io<\/a><\/noindex> (selle aluseks on konteinerite piltide register, mis tuli ettev\u00f5ttele koos CoreOSi ostmisega). Olenemata teie huvist selle teenuse vastu, on \u00f5petlik j\u00e4lgida, millist teed l\u00e4bisid ettev\u00f5tte SRE-insenerid, et diagnostika ja rikke p\u00f5hjused k\u00f5rvaldada.<\/i><\/p>\n<p><img decoding=\"async\" alt=\"Post Mortem Quay.io k\u00e4ttesaamatuse kohta\" src=\"\/wp-content\/uploads\/2020\/08\/67ef7fddee25448ae68ae7f4700bb25b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n19. mail, varahommikul (suvisel P\u00f5hja-Ameerika idaosas, EDT), langes quay.io teenus. Rike m\u00f5jutas nii quay.io kliente kui ka avatud l\u00e4htekoodiga projekte, mis kasutasid quay.io platvormina tarkvara koostamiseks ja levitamiseks. Red Hat hindab usaldust nii \u00fche kui teise seas.<\/p>\n<p>SRE-inseneride meeskond hakkas kohe t\u00f6\u00f6le ja p\u00fc\u00fcdis Quay teenuse t\u00f6\u00f6d v\u00f5imalikult kiiresti stabiliseerida. Siiski, samal ajal, kui nad sellega tegelesid, kaotasid kliendid v\u00f5imaluse uusi pilte \u00fcles laadida ja nad suudsid vaid perioodiliselt olemasolevaid t\u00f5mmata. Tundmatu p\u00f5hjusel blokeerus quay.io andmebaas teenuse t\u00e4ielikul v\u00f5imsusel skaleerimise ajal.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>\u00ab<b>Mis muutus?<\/b>\u00bb \u2014 see on esimene k\u00fcsimus, mida sellistes olukordades tavaliselt k\u00fcsitakse. Me m\u00e4rkisime, et vahetult enne probleemi hakkas OpenShift Dedicated klaster (millel quay.io t\u00f6\u00f6tab) uuendama versioonile 4.3.19. Kuna quay.io t\u00f6\u00f6tab Red Hat OpenShift Dedicated (OSD) peal, olid regulaarne uuendamine igap\u00e4evane toiming ja need ei ole kunagi probleeme tekitanud. Veelgi enam, eelneva kuue kuu jooksul uuendasime me mitmel korral Quay klaustreid ilma teeninduskatkestuseta.<\/p>\n<p>Samas, kui me p\u00fc\u00fcdsime teenuse t\u00f6\u00f6d taastada, hakkasid teised insenerid ette valmistama uut OSD klastrit varasema tarkvaraversiooniga, et h\u00e4daolukorras k\u00f5ik selle peale v\u00e4lja panna.<\/p>\n<h2>P\u00f5hjuslik anal\u00fc\u00fcs<\/h2>\n<p>\nPeamine rikke s\u00fcmptom oli k\u00fcmnete tuhandete andmebaasi \u00fchenduste laviin, mis muutis MySQL eksemplari praktiliselt funktsionaalseteks. Sellega seoses oli probleemi diagnoosimine keeruline. Panime paika kliendi \u00fchenduste maksimaalse arvu piirangu, et aidata SRE meeskonnal probleemi hinnata. Andmebaasi ei t\u00e4heldatud erakordset liiklust: tegelikult olid enamus p\u00e4ringutest lugemise p\u00e4ringud, samas kui vaid v\u00e4hesed olid kirjutamise p\u00e4ringud.<\/p>\n<p>Me olime ka p\u00fc\u00fcdnud leida mustri andmebaasi liikluses, mis oleks v\u00f5inud seda laviini p\u00f5hjustada. Siiski ei \u00f5nnestunud logidest mingeid seadusp\u00e4ra leida. Oodates uue klastri valmimist OSD 4.3.18, j\u00e4tkasime katseid k\u00e4ivitada pod'e quay.io. Iga kord, kui klaster j\u00f5udis maksimaalse v\u00f5imsuseni, hangus andmebaas. See t\u00e4hendas, et RDS eksemplari tuli taask\u00e4ivitada koos k\u00f5igi quay.io pod'idega.<\/p>\n<p>Kell \u00f5htul stabiliseerisime teenuse read-only re\u017eiimis ja keelasime maksimaalselt ebaolulised funktsioonid (nt pr\u00fcgistamise nimel ruumis), et v\u00e4hendada andmebaasi koormust. Seisakud l\u00f5ppesid, <b>kuid p\u00f5hjust ei leitud<\/b>. Uus OSD klaster oli valmis, ning me \u00fcle kandsime teenuse, \u00fchendasime liikluse ja j\u00e4tkasime j\u00e4lgimist.<\/p>\n<p>Quay.io t\u00f6\u00f6tas uue OSD klastril stabiilselt, seet\u00f5ttu naasime andmebaasi logide juurde, kuid ei suutnud tuvastada korrelatsiooni, mis seletaks blokeeringuid. OpenShift'i insenerid t\u00f6\u00f6tasid koos meiega, p\u00fc\u00fcdes m\u00f5ista, kas Red Hat OpenShift 4.3.19 muudatused v\u00f5isid p\u00f5hjustada Quay probleemid. Siiski ei leitud midagi, ja <b>probleemi laboritingimustes ei \u00f5nnestunud paljundada<\/b>.<\/p>\n<h2>Teine rike<\/h2>\n<p>\n28. mail, enne keskp\u00e4eva EDT, kukkus quay.io uuesti sama s\u00fcmptomi t\u00f5ttu: andmebaasi t\u00f6\u00f6 blokeerus. Ja j\u00e4lle suunasin k\u00f5ik j\u00f5ud uurimisele. Esiteks pidi teenuse t\u00f6\u00f6 taastama. Kuid <b>Seekord RDS taask\u00e4ivitamine ja quay.io pod'ide taask\u00e4ivitamine ei toonud tulemusi.<\/b>: andmebaasi haaras j\u00e4lle \u00fchenduste laviin. Aga miks?<\/p>\n<p>Quay on kirjutatud Pythonis, ning iga pod t\u00f6\u00f6tab nagu \u00fchtne monoliitne konteiner. Konteinerikeskkonnas toimub samaaegselt palju paralleelseid \u00fclesandeid. Kasutame raamatukogu <code>gevent<\/code> alla <code>gunicorn<\/code> veebip\u00e4ringute t\u00f6\u00f6tlemiseks. Kui Quay saab p\u00e4ringu (kas meie enda API kaudu v\u00f5i Docker API kaudu), m\u00e4\u00e4ratakse sellele gevent worker. \u00dcldiselt peaks see worker \u00fchenduma andmebaasiga. P\u00e4rast esimest rikke avastasime, et gevent worker'id \u00fcritasid andmebaasiga \u00fchendust luua vaikeseadistustega.<\/p>\n<p>Arvestades suur hulk Quay pod'e ja tuhandete p\u00e4ringute voogu sekundis, v\u00f5is suur hulk andmebaasi \u00fchendusi teoreetiliselt koormata MySQL eksemplari. J\u00e4lgimise j\u00e4rgi teadis Quay, et keskmiselt t\u00f6\u00f6tleb see 5000 p\u00e4ringut sekundis. Umbes sama oli ka andmebaasi \u00fchenduste number. 5000 \u00fchendust mahtus h\u00e4sti meie RDS eksemplari v\u00f5imalustesse (mida ei saa \u00f6elda k\u00fcmnete tuhandete kohta). <b>Mingil p\u00f5hjusel toimusid ootamatud \u00fchenduste arvu plahvatused.<\/b>, kuid me ei m\u00e4rganud mingit seost sisenevate p\u00e4ringutega.<\/p>\n<p>Seekord otsustasime kindlalt leida ja k\u00f5rvaldada probleemi allika, mitte piirduda lihtsalt taask\u00e4ivitamisega. Quay koodibaasi <b>tehti muudatused, mis piirasid andmebaasi \u00fchenduste arvu iga worker'i jaoks.<\/b> gevent. See arv sai konfiguratsiooni parameetriks: seda oli v\u00f5imalik muuta \"re\u017eiimis\", ilma uue konteineri pildi keeramiseta. Selleks, et teada saada, kui palju \u00fchendusi on tegelikult v\u00f5imalik k\u00e4sitleda, viidi l\u00e4bi mitu katset staging-keskkonnas, kus m\u00e4\u00e4rati erinevaid v\u00e4\u00e4rtusi, et n\u00e4ha, kuidas see m\u00f5jutab koormustestide stsenaariume. L\u00f5puks selgus, et <b>Quay hakkab andma 502 vigu, kui \u00fchenduste arv \u00fcletab 10 000.<\/b><\/p>\n<p>Me paigaldasime selle uue versiooni kohe tootmisse ja hakkasime j\u00e4lgima andmebaasi \u00fchenduste graafikut. Eelmine kord blokeerus andmebaas umbes 20 minuti p\u00e4rast. 30 probleemivaba minuti p\u00e4rast tekkis meil lootus, ja tunni p\u00e4rast \u2013 kindel tunne. Taastasime kirjutustrafiku saidil ja asusime postmortem-anal\u00fc\u00fcsi juurde.<\/p>\n<p>Olles probleemist m\u00f6\u00f6da p\u00e4\u00e4senud, <b>ei selgitanud me selle tegelikke p\u00f5hjuseid<\/b>. Selgus, et see ei olnud seotud \u00fchegi muudatusega OpenShift 4.3.19, kuna sama oli juhtunud ka versioonis 4.3.18, mis t\u00f6\u00f6tas Quay\u2019ga varem probleemideta.<\/p>\n<p>Klastris peitus ilmselt veel midagi.<\/p>\n<h2>Detailne uurimine<\/h2>\n<p>\nQuay.io on kuue aasta jooksul kasutanud vaike seadistusi andmebaasi \u00fchendamiseks ilma probleemideta. Mis muutus? Selge on, et selle aja jooksul on quay.io liiklus pidevalt kasvanud. Meie puhul n\u00e4is, et saavutati mingisugune l\u00e4vendi v\u00e4\u00e4rtus, mis k\u00e4ivitas \u00fchenduste laviini. J\u00e4tkasime andmebaasi logide uurimist p\u00e4rast teist riket, kuid ei leidnud mustreid ega ilmselgeid seoseid.<\/p>\n<p>Samal ajal t\u00f6\u00f6tas SRE meeskond Quay p\u00e4ringute j\u00e4lgimise ja teenuse \u00fcldise tervise parandamise kallal. <b>K\u00e4ivitatud on uusi m\u00f5\u00f5dikuid ja j\u00e4lgimispaneele<\/b>, mis n\u00e4itavad, millised Quay osad saavad klientide seas k\u00f5ige rohkem n\u00f5udlust.<\/p>\n<p>Quay.io t\u00f6\u00f6tas normaalselt 9. juunini. Hommikul (EDT ajal) n\u00e4gime j\u00e4lle m\u00e4rkimisv\u00e4\u00e4rset andmebaasi \u00fchenduste arvu suurenemist. <b>Seekord ei toimunud seisakut<\/b>, kuna uus parameeter piiras nende arvu ja ei lubanud \u00fcletada MySQL-i l\u00e4bilaskev\u00f5imet. Kuid umbes poole tunni jooksul m\u00e4rkisid paljud kasutajad quay.io aeglast toimimist. Kogusime kiiresti k\u00f5ik v\u00f5imalikud andmed, kasutades lisatud j\u00e4lgimisvahendeid. \u00c4kitselt ilmnes muster.<\/p>\n<p><b>Enne \u00fchenduste arvu h\u00fcpet tuli suur hulk p\u00e4ringuid App Registry API-le<\/b>. App Registry on quay.io v\u00e4hemtuntud funktsioon. See v\u00f5imaldab salvestada selliseid asju nagu Helm\u2019i graafikud ja rikkalike (rich) metaandmetega konteinerid. Enamik quay.io kasutajatest ei kasuta seda funktsiooni, kuid Red Hat OpenShift kasutab seda aktiivselt. OpenShifti osa OperatorHub salvestab k\u00f5ik operaatorid App Registry-s. Need operaatorid moodustavad aluse OpenShifti t\u00f6\u00f6koormuste \u00f6kos\u00fcsteemile ja partneritele suunatud operatsioonide (teise p\u00e4eva operatsioonid, Day 2) mudelile.<\/p>\n<p>Iga OpenShift 4 klaster kasutab sisseehitatud OperatorHub'i operaatorite levitamiseks, et pakkuda installimiseks saadaval olevate operaatorite katalooge ja pakkuda v\u00e4rskendusi juba paigaldatud operaatoritele. OpenShift 4 populaarsuse kasvades kasvas ka maailmas klastrite arv. Iga neist klastritest laadib operaatorite sisu, et k\u00e4ivitada sisseehitatud OperatorHub, kasutades quay.io's App Registryt tagaplaanina. <b>Probleemi allika otsimisel j\u00e4tsime t\u00e4helepanuta, et koos OpenShift'i kasvava populaarsusega kasvas ka koormus \u00fchele harva kasutatud funktsioonile quay.io.<\/b>.<\/p>\n<p>Me tegime v\u00e4ikese anal\u00fc\u00fcsi App Registry p\u00e4ringute liiklusest ja vaatasime registri koodi. Koheselt ilmnesid puudused, mis tekitasid andmebaasi p\u00e4ringute ebaoptimaalset vormimist. Madala koormuse korral ei tekitanud need mingeid probleeme, kuid nende suurenedes said need probleemide allikaks. App Registry'l olid kaks probleemset l\u00f5pp-punkti, mis reageerisid halvasti koormuse suurenemisele: esimene andis v\u00e4lja k\u00f5igi pakettide loendi hoidlas, teine - k\u00f5ik blob'id paketi jaoks.<\/p>\n<h2>Probleemide likvideerimine<\/h2>\n<p>\nJ\u00e4rgneva n\u00e4dala jooksul tegelesime App Registry koodi ja selle keskkonna optimeerimisega. \u00dcksikasjalikult ebaefektiivsed SQL-p\u00e4ringud viidi \u00fcle ning eemaldati tarbetud k\u00e4su kutsed (need k\u00e4ivitati iga blob\u2019i v\u00e4ljav\u00f5tte ajal), kanti sisse vahem\u00e4lu k\u00f5ikjal, kus see on v\u00f5imalik. Seej\u00e4rel viidi l\u00e4bi ulatuslik j\u00f5udlustestimine ja v\u00f5rreldi App Registry t\u00f6\u00f6 kiirus muutuste eel ja j\u00e4rel. <code>tar<\/code> (ta k\u00e4ivitati iga kord, kui loodi blob'e), sinna on lisatud vahem\u00e4lu, kus see v\u00f5imalik. Seej\u00e4rel viidi l\u00e4bi ulatuslik j\u00f5udluse testimine ja v\u00f5rdleti App Registry t\u00f6\u00f6kiirus enne ja p\u00e4rast muudatusi.<\/p>\n<p><b>. J\u00e4rgmisel n\u00e4dalal v\u00f5tsime muudatused kasutusele tootmises ja p\u00e4rast seda on quay.io t\u00f6\u00f6tanud stabiilselt. Selle aja jooksul t\u00e4heldati mitmeid j\u00e4rske liikluspiike App Registry l\u00f5pp-punktis, kuid teostatud t\u00e4iustused v\u00e4ltisid andmebaasi katkemisi.<\/b>. J\u00e4rgmise n\u00e4dala jooksul juurutasime muudatused tootmisse ning sellest ajast alates t\u00f6\u00f6tab quay.io stabiilselt. Sel ajal toimus mitu j\u00e4rsku liikluse t\u00f5usu App Registry l\u00f5pp-punktis, kuid tehtud t\u00e4iustused takistasid andmebaasi katkemist.<\/p>\n<h2>Selge on, et iga teenus p\u00fc\u00fcab v\u00e4ltida seisakuid. Meie puhul usume, et hiljutised katkestused aitasid teha quay.io paremaks. Meie jaoks t\u00f5ime v\u00e4lja mitmed peamised \u00f5ppetunnid, mida soovime jagada:<\/h2>\n<p>\nTeave selle kohta, kes ja kuidas teie teenust kasutab, ei ole kunagi \u00fcleliigne.<\/p>\n<ol>\n<li> <b>Kuna Quay \u201elihtsalt t\u00f6\u00f6tas\u201d, ei olnud meil kunagi vajadust kulutada aega liikluse optimeerimisele ja koormuse haldamisele. See tekitas vale turvatunde, et teenus suudab skaleeruda l\u00f5putult.<\/b>Kui teenus kukub,<\/li>\n<li> siis selle t\u00f6\u00f6korda tagasi toomine on peamine prioriteet. <b>tema t\u00f6\u00f6 taastamine on peamine prioriteet<\/b>. Kuna Quay j\u00e4tkas blokeeritud andmebaasist kannatamist esimese rikkumise ajal, ei avaldanud meie standardsed protseduurid oodatud m\u00f5ju ja me ei suutnud teenuse toimimist nende abil taastada. See viis olukorrani, kus pidime veetma aega anal\u00fc\u00fcsimiseks ja andmete kogumiseks lootuses leida p\u00f5hjus \u2014 selle asemel, et suunata k\u00f5ik j\u00f5upingutused teenuse taastamiseks.<\/li>\n<li> <b>Hinnake iga teenuse funktsiooni m\u00f5ju<\/b>. Klientide seas oli App Registry harva kasutusel, seet\u00f5ttu polnud see meie meeskonnale prioriteet. Kui m\u00f5ned toote funktsioonid on peaaegu kasutamata, siis ilmuvad nende vead harva ning arendajad l\u00f5petavad koodi j\u00e4lgimise. On lihtne langeda valearusaama k\u00fc\u00fcsi, et nii peabki olema \u2014 kuni see funktsioon \u00fcht\u00e4kki satub suurema kohaliku intsidenti keskmesse.<\/li>\n<\/ol>\n<p><\/p>\n<h2>Mis edasi?<\/h2>\n<p>\nTeenuse stabiilsuse tagamise t\u00f6\u00f6 ei peatu kunagi ja me t\u00e4iustame seda pidevalt. Liiklus quay.io-l j\u00e4tkab kasvu, ja me oleme teadlikud, et peame tegema k\u00f5ik endast oleneva, et \u00f5igustada klientide usaldust. Seet\u00f5ttu t\u00f6\u00f6tame praegu j\u00e4rgmiste probleemide kallal:<\/p>\n<ol>\n<li> Lugemisega andmebaasi koopiate juurutamine, et aidata teenusel probleemide korral vastavat liiklust t\u00f6\u00f6delda peamise RDS-instantsi puhul.<\/li>\n<li> RDS-instantsi v\u00e4rskendamine. Praegune versioon iseenesest pole probleem. Pigem tahame lihtsalt k\u00f5rvaldada valej\u00e4lje (millele me esimese rikkumise ajal j\u00e4ime); tarkvara ajakohasena hoidmine v\u00e4ldib veel \u00fche teguri, mis v\u00f5iks tulevaste katkestuste korral muret tekitada.<\/li>\n<li> Lisak\u00fcsimine kogu klastris. J\u00e4tkame piirkondade otsimist, kus k\u00fcsimise abil saab andmebaasi koormust v\u00e4hendada.<\/li>\n<li> Veebirakenduste tulem\u00fc\u00fcri (WAF) lisamine, et n\u00e4ha, kes ja miks \u00fchendab quay.io-le.<\/li>\n<li> Alates j\u00e4rgmisest versioonist loobuvad Red Hat OpenShift'i klastrid App Registry'st, eelistades konteinerite p\u00f5hiseid operaatorikatalooge (Operator Catalogs), mis on saadaval quay.io-l.<\/li>\n<li> Pikaajaline asendaja App Registry jaoks v\u00f5ib olla Open Container Initiative'i (OCI) artefaktide spetsifikatsioonide tugi. See on praegu ellu viidud Quay natiivse funktsioonina ja on kasutajatele saadaval, kui spetsifikatsioon l\u00f5puks koosk\u00f5lastatakse.<\/li>\n<\/ol>\n<p>\nK\u00f5ik eespool loetletud on osa Red Hati j\u00e4tkuvatest investeeringutest quay.io, kui liikume edasi v\u00e4ikesest \"start-up\"-stiilis meeskonnast k\u00fcpsesse platvormi, mida haldab SRE. Me teame, et paljud meie kliendid usaldavad quay.io oma igap\u00e4evaelus (sealhulgas Red Hat!) ja p\u00fc\u00fcame olla nii avatud kui v\u00f5imalik viimaste t\u00f5rgete ja j\u00e4tkuvate pingutuste osas, et paremaks saada.<\/p>\n<h2>P.S. t\u00f5lkijalt<\/h2>\n<p>\nLugege ka meie blogist:<\/p>\n<ul>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/news\/t\/475716\/\/\">Red Hat avas CoreOS konteineripiltide registri koodi \u2013 Quay<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/510486\/\">Praktilised lood meie SRE-argielust. Osa 2<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/461807\/\">Kuidas Kubernetes'e pod'ide prioriteedid p\u00f5hjustasid Grafana Labs'is seiskumise<\/a><\/noindex>\u00bb.<\/li>\n<\/ul>\n<p>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/515932\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u043c. \u043f\u0435\u0440\u0435\u0432.: \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 \u0430\u0432\u0433\u0443\u0441\u0442\u0430 Red Hat \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u043b\u0430 \u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438, \u0447\u0442\u043e \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u043b\u0438 \u0432 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435 \u043c\u0435\u0441\u044f\u0446\u044b \u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0435\u0451 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 Quay.io (\u0432 \u0435\u0433\u043e \u043e\u0441\u043d\u043e\u0432\u0435 \u2014 \u0440\u0435\u0435\u0441\u0442\u0440 \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0437\u043e\u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432, \u0434\u043e\u0441\u0442\u0430\u0432\u0448\u0438\u0439\u0441\u044f \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u043f\u043e\u043a\u0443\u043f\u043a\u043e\u0439 CoreOS). \u0412\u043d\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0432\u0430\u0448\u0435\u0439 \u0437\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043d\u043d\u043e\u0441\u0442\u0438 \u0432 \u044d\u0442\u043e\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u0435 \u043a\u0430\u043a \u0442\u0430\u043a\u043e\u0432\u043e\u043c, \u043f\u043e\u0443\u0447\u0438\u0442\u0435\u043b\u0435\u043d \u0441\u0430\u043c \u043f\u0443\u0442\u044c, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0440\u043e\u0448\u043b\u0438 SRE-\u0438\u043d\u0436\u0435\u043d\u0435\u0440\u044b \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":92074,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-92073","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0438\u043c.\" \/>\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\/post-mortem-po-nedostupnosti-quay-io\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\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\udd47Post Mortem \u043f\u043e \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 Quay.io | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0438\u043c.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/post-mortem-po-nedostupnosti-quay-io\" \/>\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-08-22T17:41:56+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-08-22T17:41:56+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\udd47Quay.io katkestamise anal\u00fc\u00fcs | ProHoster","description":"M\u00e4rkus.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/post-mortem-po-nedostupnosti-quay-io","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\udd47Post Mortem \u043f\u043e \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 Quay.io | ProHoster","og:description":"\u041f\u0440\u0438\u043c.","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/post-mortem-po-nedostupnosti-quay-io","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-08-22T17:41:56+00:00","article:modified_time":"2020-08-22T17:41:56+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"92073","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 12:15:36","updated":"2022-10-02 22:37:13","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/92073","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=92073"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/92073\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/92074"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=92073"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=92073"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=92073"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}