{"id":82116,"date":"2020-05-19T13:42:54","date_gmt":"2020-05-19T11:42:54","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/orchestrator-dlya-mysql-pochemu-bez-nego-nelzya-stroit-otkazoustojchivyj-proekt"},"modified":"2020-05-19T13:42:54","modified_gmt":"2020-05-19T11:42:54","slug":"orchestrator-dlya-mysql-pochemu-bez-nego-nelzya-stroit-otkazoustojchivyj-proekt","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/orchestrator-dlya-mysql-pochemu-bez-nego-nelzya-stroit-otkazoustojchivyj-proekt","title":{"rendered":"Orkestrator MySQL jaoks: miks on see vajalik vastupidava projekti ehitamisel","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Iga suur projekt alustas paarist serverist. Alguses oli \u00fcks DB-server, hiljem lisandusid klounid, et lugemist skaleerida. Ja siis - stopp! Meistrid on \u00fcks, klounid palju; kui \u00fcks klounidest kaob, siis on k\u00f5ik h\u00e4sti, aga kui Meister kaob - on halb: seisak, administraatorid kiirustavad serveri taastamisega. Mida teha? Reserveerida Meister. Minu kolleeg Pavel on sellest juba kirjutanud <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/citymobil\/blog\/491044\/\">artiklit<\/a><\/noindex>, ma ei kavatse seda korrata. Selle asemel r\u00e4\u00e4gin, miks teil on kindlasti vaja Orchestratorit MySQL jaoks!<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nAlustame peamisest k\u00fcsimusest: \"Kuidas me l\u00fclitame koodi uuele masinale meistri kadumisel?\".<\/p>\n<ul>\n<li>Skeem VIP (Virtuaalne IP) meeldib mulle k\u00f5ige rohkem, sellest r\u00e4\u00e4gime allpool. See on k\u00f5ige lihtsam ja ilmsem, kuigi sellel on \u00fcks selge piirang: meister, mida me reserveerime, peab asuma L2-segmendis uue masinaga, seega v\u00f5ib teise andmekeskuse unustada. Ja kui aus olla, kui j\u00e4rgida reeglit, et suur L2 on kurjus, kuna L2 on ainult rack'i jaoks, ja rack'ide vahel on L3, siis selline skeem toob kaasa veel rohkem piiranguid.<\/li>\n<li>Saame koodis m\u00e4\u00e4rata DNS-nime ja resolverida selle kaudu \/etc\/hosts. Tegelikult resolveri ei toimu. Skeemi eelis: piirang, mis iseloomustab esimest v\u00f5imalust, puudub, see t\u00e4hendab, et saame korraldada \u00fclevahetusi ka vaheandmekeskustes. Kuid siis tekib selge k\u00fcsimus, kui kiiresti me l\u00e4bi Puppet-Ansible muudatuse \/etc\/hosts toome.<\/li>\n<li>Teist meetodit on v\u00f5imalik veidi muuta: paigaldame k\u00f5ikidele veebiserveritele vahem\u00e4lu DNS, mille kaudu kood j\u00f5uab meistri andmebaasi. Selle kirje TTL v\u00f5iks olla 60 DNS-is. Tundub, et korraliku teostuse korral on meetod hea.<\/li>\n<li>Teenuse avastamise skeem, mis h\u00f5lmab Consuli ja etcd rakendamist.<\/li>\n<li>Huvi pakkuv variant <noindex><a rel=\"nofollow\" href=\"https:\/\/proxysql.com\/\">ProxySQL<\/a><\/noindex>. Kogu liiklus MySQL-i suunatakse l\u00e4bi ProxySQL-i, ProxySQL oskab ise tuvastada, kes on praegu meister. Muide, \u00fche selle toote kasutusv\u00f5imaluse kohta saab lugeda minu <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/citymobil\/blog\/501730\/\">artiklis<\/a><\/noindex>.<\/li>\n<\/ul>\n<p>\nOrchestratori autor, t\u00f6\u00f6tades Githubis, rakendas esmalt esimese skeemi VIP, seej\u00e4rel kohandas selle skeemiks koos consuliga.<\/p>\n<p>T\u00fc\u00fcpiline infrastruktuuri skeem:<\/p>\n<p><img decoding=\"async\" alt=\"Orkestrator MySQL jaoks: miks on see vajalik vastupidava projekti ehitamisel\" src=\"\/wp-content\/uploads\/2020\/05\/b08220e7aa6336229cbbfedd78afdcc3.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nKirjeldan kohe ilmseid olukordi, mida tuleb arvestada:<\/p>\n<ul>\n<li>VIP-aadress ei tohiks olla konfigureeritud \u00fcheski serveris. Kujutame ette olukorda: meister taask\u00e4ivitub, ja seni kuni ta k\u00e4ivitub, l\u00e4ks Orchestrator faileedre\u017eiimi ja tegi \u00fchest klounidest meistri; seej\u00e4rel k\u00e4ivitati vana meister, ja n\u00fc\u00fcd on VIP kahel masinal. See on halb.<\/li>\n<li>Orkestratori jaoks tuleb kirjutada skript vana ja uue meistri poole p\u00f6\u00f6rdumiseks. Vanal tuleb k\u00e4ivitada ifdown ja uuel meistril \u2014 ifup vip. H\u00e4id oleks lisada skripti, et juhul, kui toimub failover, l\u00fclitatakse vana meistri l\u00fcliti port lihtsalt v\u00e4lja, et v\u00e4ltida igasugust splitbrain'i.<\/li>\n<li>P\u00e4rast seda, kui Orkestrator on k\u00e4ivitanud teie skripti, et k\u00f5igepealt eemaldada VIP ja\/v\u00f5i l\u00fclitada sisse l\u00fcliti port, ja seej\u00e4rel uuel meistril k\u00e4ivitada VIP t\u00f5stmise skripti, \u00e4rge unustage k\u00e4suga arping k\u00f5igile teatada, et uus VIP on n\u00fc\u00fcd siin.<\/li>\n<li>K\u00fcsimus on, et k\u00f5igil sl\u00e4bidel peab olema read_only=1, ja kui te edutate sl\u00e4bi meistriks, peab sellel olema read_only=0.<\/li>\n<li>\u00c4rge unustage, et meistriks v\u00f5ib saada iga sl\u00e4bi, mille oleme selleks valinud (Orkestratoril on terve mehhanism, et eelistada, milline sl\u00e4bi peaks k\u00f5igepealt kandidaadiks uueks meistriks, milline teiseks ja milline sl\u00e4bi ei tohi mingil juhul meistriks olla valitud). Kui sl\u00e4bi saab meistriks, j\u00e4\u00e4b sellel sl\u00e4bi koormus ja lisandub meistri koormus, seda tuleb arvesse v\u00f5tta.<\/li>\n<\/ul>\n<p>\nMiks vajate Orkestratorit, kui teil seda pole?<\/p>\n<ul>\n<li>Orkestratoril on v\u00e4ga mugav graafiline kasutajaliides, mis kuvab kogu topoloogiat (vaadake allolevat ekraanipilti).<\/li>\n<li>Orkestrator suudab j\u00e4lgida, millised sl\u00e4bid on mahaj\u00e4\u00e4nud, ja kus replikatsioon on t\u00e4iesti katkenud (meil on Orkestratoriga seotud skriptid SMS-ide saatmiseks).<\/li>\n<li>Orkestrator \u00fctleb teile, millistel sl\u00e4bidel on GTID errant viga.<\/li>\n<\/ul>\n<p>\nOrkestratori liides:<\/p>\n<p><img decoding=\"async\" alt=\"Orkestrator MySQL jaoks: miks on see vajalik vastupidava projekti ehitamisel\" src=\"\/wp-content\/uploads\/2020\/05\/5129a85ad1c0a5db8e3ecf501cff0d0d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nMis on GTID errant?<\/p>\n<p>Orkestratoril on kaks peamist n\u00f5uet:<\/p>\n<ul>\n<li>K\u00f5igil MySQL-klastrite masinatel peab olema sisse l\u00fclitatud pseudo GTID, meil on sisse l\u00fclitatud GTID.<\/li>\n<li>Kuskil peab olema sama t\u00fc\u00fcpi binlogid, v\u00f5ib olla statement. Meil oli selline konfiguratsioon, kus meistril ja enamikel sl\u00e4bidel oli Row, kuid kahel ajal j\u00e4i Mixed-re\u017eiim. Tulemuseks on see, et Orkestrator ei soovinud neid sl\u00e4bisid uue meistriga \u00fchendada.<\/li>\n<\/ul>\n<p>\nPidage meeles, et k\u00f5ige olulisem asjaolu production-sl\u00e4bis on selle j\u00e4rjepidevus meistriga! Kui nii meistril kui ka sl\u00e4bil on sisse l\u00fclitatud Global Transaction ID (GTID), siis funktsiooni gtid_subset kaudu saate teada, kas samad andmete muutmise p\u00e4ringud on nende masinatega t\u00f5eliselt t\u00e4idetud. Selle kohta saate lugeda rohkem. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.percona.com\/blog\/2014\/05\/19\/errant-transactions-major-hurdle-for-gtid-based-failover-in-mysql-5-6\/\">siit<\/a><\/noindex>.<\/p>\n<p>Seega Orchestrator n\u00e4itab teile GTID errant veateate kaudu, et teisel on tehingud, mida peameistril ei ole. Miks see nii juhtub?<\/p>\n<ul>\n<li>Teisel pole seatud read_only=1, keegi on sisse logitud ja tegi andmete muutmise p\u00e4ringu.<\/li>\n<li>Teisel pole seatud super_read_only=1, seega administraator, kes segas serverit, logis sisse ja tegi seal p\u00e4ringu.<\/li>\n<li>Kui olete arvesse v\u00f5tnud m\u00f5lemat eelnevat punkti, siis on veel \u00fcks nipp: MySQL-is satub p\u00e4ring \u0431\u0438\u043d\u043b\u043e\u0433ide flushimise kohta samuti \u0431\u0438\u043d\u043b\u043e\u0433isse, mist\u00f5ttu igal esimesel flush'il meistril ja k\u00f5igil teistel ilmub GTID errant. Kuidas seda v\u00e4ltida? perona-5.7.25-28 on ilmunud seadistus binlog_skip_flush_commands=1, mis keelab flush'i kirjutamise \u0431\u0438\u043d\u043b\u043e\u0433idesse. mysql.com lehelt leiate selle kohta teavet. <noindex><a rel=\"nofollow\" href=\"https:\/\/bugs.mysql.com\/bug.php?id=88720\">viga<\/a><\/noindex>.<\/li>\n<\/ul>\n<p>\nKokkuv\u00f5tteks, kui te praegu ei soovi kasutada Orchestratorit failover re\u017eiimis, siis seadke see j\u00e4lgimisre\u017eiimi. Sellisel juhul on teil alati silme ees MySQL-masinate t\u00f6\u00f6kaardid ja selge teave selle kohta, millist t\u00fc\u00fcpi replikatsioon on igas masinas, kas teised j\u00e4\u00e4vad maha ning mis k\u00f5ige t\u00e4htsam \u2014 kui j\u00e4rkj\u00e4rgulised nad on meistriga!<\/p>\n<p>Ilmselt on k\u00fcsimus: \"Kuidas peaks Orchestrator t\u00f6\u00f6tama?\". Ta peaks valima uue meistri olemasolevate teiselt ja seej\u00e4rel \u00fchendama k\u00f5ik teised selle k\u00fclge (selle jaoks on vajalik GTID; kui kasutada vana mehhanismi binlog_name ja binlog_pos, siis ei ole v\u00f5imalik vahetada teisi meistrilt uuele!). Enne, kui meil Orchestrator ilmus, tuli mul seda kord k\u00e4sitsi teha. Vana meister seisis Adapteci veaga kontrolleri t\u00f5ttu ja tal oli umbes 10 teist. Mul tuli VIP teisaldada meistrilt \u00fche teise k\u00fclge ja k\u00f5ik teised selle k\u00fclge \u00fcmber \u00fchendada. Kui palju konsoole pidin avama, kui palju samasuguseid k\u00e4ske sisestama... Pidin ootama kuni kella 3-ni \u00f6\u00f6sel, et koormust eemaldada k\u00f5igilt teistelt, v\u00e4lja arvatud kahest, teha esimesest masinast meister, kohe \u00fchendada teise masinaga, seej\u00e4rel \u00fchendada k\u00f5ik teised teise meistriga ja koormus tagasi anda. \u00dches\u00f5naga, \u00f5udus...<\/p>\n<p>Kuidas Orchestrator t\u00f6\u00f6tab, kui see l\u00e4heb failover re\u017eiimi? Seda on k\u00f5ige lihtsam n\u00e4idata olukorra n\u00e4ite kaudu, kui me tahame teha meistriks v\u00f5imsama, kaasaegsema masina kui see, mis on hetkel. <\/p>\n<p><img decoding=\"async\" alt=\"Orkestrator MySQL jaoks: miks on see vajalik vastupidava projekti ehitamisel\" src=\"\/wp-content\/uploads\/2020\/05\/d2afe9c74b33765e55641b34def3145e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nKujutiselt on esitatud protsessi keskpunkt. Mida on enne seda hetke tehtud? Me \u00fctlesime, et soovime muuta mingi kliente uueks peajuhiks, Orchestrator hakkas lihtsalt k\u00f5iki teisi kliente \u00fcmber l\u00fclitama, samal ajal kui uus peajuhiks toimib \u00fclemineku masinana. Selle skeemi puhul ei teki vigu, k\u00f5ik kliendid t\u00f6\u00f6tavad, Orchestrator eemaldab VIP-i vanalt peajuhikult, kannab selle uuele, seab read_only=0 ja unustab vanast peajuhist. K\u00f5ik! Meie teenuse seisak on VIP-i \u00fcleviimise aeg, see on 2-3 sekundit.<\/p>\n<p>T\u00e4naseks on k\u00f5ik, ait\u00e4h k\u00f5igile. Peagi tuleb teine artikkel Orchestratorist. \u00dches kuulsas N\u00f5ukogude filmis \"Garaazh\" \u00fctles \u00fcks tegelane: \"Ma ei l\u00e4heks temaga luurele!\" Noh, Orchestrator, mina l\u00e4heks sinuga luurele!<br \/>\n<br \/>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/citymobil\/blog\/501994\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041b\u044e\u0431\u043e\u0439 \u043a\u0440\u0443\u043f\u043d\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0430\u0447\u0438\u043d\u0430\u043b\u0441\u044f \u0441 \u043f\u0430\u0440\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432. C\u043d\u0430\u0447\u0430\u043b\u0430 \u0431\u044b\u043b \u043e\u0434\u0438\u043d DB-\u0441\u0435\u0440\u0432\u0435\u0440, \u043f\u043e\u0442\u043e\u043c \u043a \u043d\u0435\u043c\u0443 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438\u0441\u044c \u0441\u043b\u0435\u0439\u0432\u044b, \u0447\u0442\u043e\u0431\u044b \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0447\u0442\u0435\u043d\u0438\u0435. \u0418 \u0442\u0443\u0442 \u2014 \u0441\u0442\u043e\u043f! \u041c\u0430\u0441\u0442\u0435\u0440 \u043e\u0434\u0438\u043d, \u0430 \u0441\u043b\u0435\u0439\u0432\u043e\u0432 \u043c\u043d\u043e\u0433\u043e; \u0435\u0441\u043b\u0438 \u0443\u0439\u0434\u0435\u0442 \u043e\u0434\u0438\u043d \u0438\u0437 \u0441\u043b\u0435\u0439\u0432\u043e\u0432, \u0442\u043e \u0432\u0441\u0451 \u0431\u0443\u0434\u0435\u0442 \u0445\u043e\u0440\u043e\u0448\u043e, \u0430 \u0435\u0441\u043b\u0438 \u0443\u0439\u0434\u0435\u0442 \u043c\u0430\u0441\u0442\u0435\u0440 \u2014 \u0431\u0443\u0434\u0435\u0442 \u043f\u043b\u043e\u0445\u043e: \u0434\u0430\u0443\u043d\u0442\u0430\u0439\u043c, \u0430\u0434\u043c\u0438\u043d\u044b \u0432 \u043c\u044b\u043b\u0435 \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u044e\u0442 \u0441\u0435\u0440\u0432\u0435\u0440. \u0427\u0442\u043e \u0434\u0435\u043b\u0430\u0442\u044c? \u0420\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043c\u0430\u0441\u0442\u0435\u0440. \u041c\u043e\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":82117,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-82116","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=\"\u041b\u044e\u0431\u043e\u0439 \u043a\u0440\u0443\u043f\u043d\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0430\u0447\u0438\u043d\u0430\u043b\u0441\u044f \u0441 \u043f\u0430\u0440\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432. C\u043d\u0430\u0447\u0430\u043b\u0430 \u0431\u044b\u043b \u043e\u0434\u0438\u043d DB-\u0441\u0435\u0440\u0432\u0435\u0440, \u043f\u043e\u0442\u043e\u043c \u043a \u043d\u0435\u043c\u0443 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438\u0441\u044c \u0441\u043b\u0435\u0439\u0432\u044b, \u0447\u0442\u043e\u0431\u044b \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0447\u0442\u0435\u043d\u0438\u0435. \u0418 \u0442\u0443\u0442 \u2014 \u0441\u0442\u043e\u043f!\" \/>\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\/orchestrator-dlya-mysql-pochemu-bez-nego-nelzya-stroit-otkazoustojchivyj-proekt\" \/>\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\udd47Orchestrator \u0434\u043b\u044f MySQL: \u043f\u043e\u0447\u0435\u043c\u0443 \u0431\u0435\u0437 \u043d\u0435\u0433\u043e \u043d\u0435\u043b\u044c\u0437\u044f \u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041b\u044e\u0431\u043e\u0439 \u043a\u0440\u0443\u043f\u043d\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0430\u0447\u0438\u043d\u0430\u043b\u0441\u044f \u0441 \u043f\u0430\u0440\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432. C\u043d\u0430\u0447\u0430\u043b\u0430 \u0431\u044b\u043b \u043e\u0434\u0438\u043d DB-\u0441\u0435\u0440\u0432\u0435\u0440, \u043f\u043e\u0442\u043e\u043c \u043a \u043d\u0435\u043c\u0443 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438\u0441\u044c \u0441\u043b\u0435\u0439\u0432\u044b, \u0447\u0442\u043e\u0431\u044b \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0447\u0442\u0435\u043d\u0438\u0435. \u0418 \u0442\u0443\u0442 \u2014 \u0441\u0442\u043e\u043f!\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/orchestrator-dlya-mysql-pochemu-bez-nego-nelzya-stroit-otkazoustojchivyj-proekt\" \/>\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-05-19T11:42:54+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-05-19T11:42:54+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\udd47Orchestrator MySQL jaoks: miks ilma selleta ei saa ehitada t\u00f5rketaluvat projekti | ProHoster","description":"Iga suurem projekt algas paarist serverist. Alguses oli \u00fcks DB-server, seej\u00e4rel lisandusid kliendid, et skaleerida lugemist. Ja siis \u2014 stopp!","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/orchestrator-dlya-mysql-pochemu-bez-nego-nelzya-stroit-otkazoustojchivyj-proekt","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\udd47Orchestrator \u0434\u043b\u044f MySQL: \u043f\u043e\u0447\u0435\u043c\u0443 \u0431\u0435\u0437 \u043d\u0435\u0433\u043e \u043d\u0435\u043b\u044c\u0437\u044f \u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 | ProHoster","og:description":"\u041b\u044e\u0431\u043e\u0439 \u043a\u0440\u0443\u043f\u043d\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0430\u0447\u0438\u043d\u0430\u043b\u0441\u044f \u0441 \u043f\u0430\u0440\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432. C\u043d\u0430\u0447\u0430\u043b\u0430 \u0431\u044b\u043b \u043e\u0434\u0438\u043d DB-\u0441\u0435\u0440\u0432\u0435\u0440, \u043f\u043e\u0442\u043e\u043c \u043a \u043d\u0435\u043c\u0443 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438\u0441\u044c \u0441\u043b\u0435\u0439\u0432\u044b, \u0447\u0442\u043e\u0431\u044b \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0447\u0442\u0435\u043d\u0438\u0435. \u0418 \u0442\u0443\u0442 \u2014 \u0441\u0442\u043e\u043f!","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/orchestrator-dlya-mysql-pochemu-bez-nego-nelzya-stroit-otkazoustojchivyj-proekt","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-05-19T11:42:54+00:00","article:modified_time":"2020-05-19T11:42:54+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"82116","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 15:44:22","updated":"2022-10-07 20:28:08","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\/82116","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=82116"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/82116\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/82117"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=82116"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=82116"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=82116"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}