{"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\/sq\/blog\/administrirovanie\/orchestrator-dlya-mysql-pochemu-bez-nego-nelzya-stroit-otkazoustojchivyj-proekt","title":{"rendered":"Orkestratori p\u00ebr MySQL: pse nuk mund t\u00eb nd\u00ebrtojm\u00eb nj\u00eb projekt t\u00eb q\u00ebndruesh\u00ebm pa t\u00eb","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>\u00c7do projekt i madh ka filluar me disa server\u00eb. Fillimisht kishte nj\u00eb server DB, pastaj iu shtuan skllav\u00ebt p\u00ebr t\u00eb shkall\u00ebzuar leximin. Dhe k\u00ebtu \u2013 stop! Masteri \u00ebsht\u00eb nj\u00eb, por skllav\u00ebt jan\u00eb shum\u00eb; n\u00ebse nj\u00eb nga skllav\u00ebt largohet, gjith\u00e7ka do t\u00eb shkoj\u00eb mir\u00eb, por n\u00ebse masteri largohet \u2013 do t\u00eb jet\u00eb keq: koh\u00eb pezullimi, administrator\u00ebt n\u00eb panik ngrisin serverin. \u00c7far\u00eb t\u00eb b\u00ebjm\u00eb? T\u00eb rezervojm\u00eb masterin. Kolegu im Pavel ka shkruar tashm\u00eb p\u00ebr k\u00ebt\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/citymobil\/blog\/491044\/\">artikull<\/a><\/noindex>, nuk do ta p\u00ebrs\u00ebris at\u00eb. N\u00eb vend t\u00eb k\u00ebsaj, do t'ju tregoj pse ju nevojitet patjet\u00ebr Orkestratori p\u00ebr MySQL!<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nT\u00eb fillojm\u00eb me pyetjen kryesore: \"Si do ta kalojm\u00eb kodin n\u00eb makin\u00eb t\u00eb re kur masteri largohet?\".<\/p>\n<ul>\n<li>Schemes me VIP (IP Virtual) m\u00eb p\u00eblqen m\u00eb s\u00eb shumti, p\u00ebr t\u00eb cil\u00ebn do t\u00eb flasim m\u00eb posht\u00eb. Ajo \u00ebsht\u00eb m\u00eb e thjesht\u00eb dhe m\u00eb e dukshme, megjithat\u00eb ka nj\u00eb kufizim t\u00eb qart\u00eb: masteri q\u00eb do t\u00eb rezervojm\u00eb duhet t\u00eb jet\u00eb n\u00eb segmentin L2 me makin\u00ebn e re, dometh\u00ebn\u00eb mund ta harrojm\u00eb qendr\u00ebn e dyt\u00eb. Dhe, n\u00eb t\u00eb v\u00ebrtet\u00eb, n\u00ebse ndjekim rregullin q\u00eb L2 i madh \u00ebsht\u00eb i keq, sepse L2 \u00ebsht\u00eb vet\u00ebm n\u00eb kabinet, nd\u00ebrmjet kabinave \u00ebsht\u00eb L3, dhe nj\u00eb skem\u00eb e till\u00eb ka akoma m\u00eb shum\u00eb kufizime.<\/li>\n<li>Mund t\u00eb shkruajm\u00eb n\u00eb kod emrin DNS dhe ta zgjidhim p\u00ebrmes \/etc\/hosts. N\u00eb fakt nuk do t\u00eb ket\u00eb zgjidhje. Avantazhi i skem\u00ebs: nuk ka kufizimin karakteristik p\u00ebr m\u00ebnyr\u00ebn e par\u00eb, dometh\u00ebn\u00eb mund t\u00eb organizojm\u00eb edhe cross-DC. Por at\u00ebher\u00eb lind pyetja e qart\u00eb, si shpejt do t\u00eb sjellim ndryshimin n\u00eb \/etc\/hosts p\u00ebrmes Puppet-Ansible.<\/li>\n<li>Mund ta modifikojm\u00eb pak m\u00ebnyr\u00ebn e dyt\u00eb: n\u00eb t\u00eb gjith\u00eb server\u00ebt web vendosim DNS q\u00eb ruan n\u00eb cache, p\u00ebrmes t\u00eb cilit Kodi do t\u00eb shkoj\u00eb n\u00eb baz\u00ebn master. Mund t\u00eb vendosim TTL 60 p\u00ebr k\u00ebt\u00eb regjistrim n\u00eb DNS. Duke u dukur, kur zbatohet si\u00e7 duhet, metoda \u00ebsht\u00eb e mir\u00eb.<\/li>\n<li>Schemes me zbulimin e sh\u00ebrbimeve, q\u00eb p\u00ebrfshin p\u00ebrdorimin e Consul dhe etcd.<\/li>\n<li>Nj\u00eb variant interesant me <noindex><a rel=\"nofollow\" href=\"https:\/\/proxysql.com\/\">ProxySQL<\/a><\/noindex>. Duhet t\u00eb kalojm\u00eb t\u00eb gjith\u00eb trafikun n\u00eb MySQL p\u00ebrmes ProxySQL, q\u00eb vet\u00eb di t\u00eb identifikoj\u00eb kush \u00ebsht\u00eb tani masteri. P\u00ebr t'u p\u00ebrmendur, p\u00ebr nj\u00eb nga variantet e p\u00ebrdorimit t\u00eb k\u00ebtij produkti mund t\u00eb lexoni n\u00eb artikullin tim <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/citymobil\/blog\/501730\/\">artikulli yn\u00eb<\/a><\/noindex>.<\/li>\n<\/ul>\n<p>\nAutori i Orkestratorit, duke punuar n\u00eb Github, fillimisht implementoi skem\u00ebn e par\u00eb me VIP, dhe pastaj e p\u00ebrmir\u00ebsoi n\u00eb skem\u00ebn me Consul.<\/p>\n<p>Schema tipike e infrastruktur\u00ebs:<\/p>\n<p><img decoding=\"async\" alt=\"Orkestratori p\u00ebr MySQL: pse nuk mund t\u00eb nd\u00ebrtojm\u00eb nj\u00eb projekt t\u00eb q\u00ebndruesh\u00ebm pa t\u00eb\" src=\"\/wp-content\/uploads\/2020\/05\/b08220e7aa6336229cbbfedd78afdcc3.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nMenj\u00ebher\u00eb do t\u00eb p\u00ebrshkruaj situatat e qarta q\u00eb duhet t\u00eb marrim parasysh:<\/p>\n<ul>\n<li>VIP adresa nuk duhet t\u00eb regjistrohet n\u00eb konfigurim n\u00eb asnj\u00eb nga serverat. Imagjinoni situat\u00ebn: masteri u ribotua, dhe nd\u00ebrsa ai po ngarkohet, Orchestrator kaloi n\u00eb modalitetin failover dhe b\u00ebri nj\u00eb nga slave-\u00ebt master; m\u00eb pas u ngjall masteri i vjet\u00ebr, dhe tani VIP \u00ebsht\u00eb n\u00eb dy makina. Kjo \u00ebsht\u00eb e keqe.<\/li>\n<li>P\u00ebr Orchestrator do t\u00eb duhet t\u00eb shkruhet nj\u00eb skenar p\u00ebr t\u00eb komunikuar me masterin e vjet\u00ebr dhe masterin e ri. N\u00eb t\u00eb vjetrin duhet t\u00eb ekzekutohet ifdown, dhe n\u00eb masterin e ri \u2014 ifup vip. Po ashtu do t\u00eb ishte mir\u00eb t\u00eb p\u00ebrfshihet n\u00eb k\u00ebt\u00eb skenar q\u00eb n\u00eb rastin e failover-it porta n\u00eb switch-in e masterit t\u00eb vjet\u00ebr thjesht t\u00eb mbyllet, p\u00ebr t\u00eb shmangur ndonj\u00eb splitbrain.<\/li>\n<li>Pas q\u00eb Orchestrator thirri skenarin tuaj, p\u00ebr t\u00eb hequr fillimisht VIP dhe\\\/ose p\u00ebr t\u00eb fikur portin n\u00eb switch-in, e pastaj n\u00eb masterin e ri thirri skenarin p\u00ebr ngritjen e VIP, mos harroni t\u00eb p\u00ebrdorni komand\u00ebn arping p\u00ebr t\u00eb b\u00ebr\u00eb t\u00eb ditur t\u00eb gjith\u00ebve se tani \u00ebsht\u00eb k\u00ebtu VIP-i i ri.<\/li>\n<li>N\u00eb t\u00eb gjitha slave-t duhet t\u00eb jet\u00eb read_only=1, dhe sapo t\u00eb promovoni nj\u00eb slave n\u00eb master, ai duhet t\u00eb ket\u00eb read_only=0.<\/li>\n<li>Mos harroni se \u00e7do slave mund t\u00eb b\u00ebhet master, q\u00eb ne e kemi zgjedhur p\u00ebr k\u00ebt\u00eb (Orchestrator ka nj\u00eb mekaniz\u00ebm t\u00eb t\u00ebr\u00eb preferencash p\u00ebr t\u00eb vendosur se cili slave t\u00eb konsiderohet si kandidati kryesor p\u00ebr master n\u00eb radh\u00eb t\u00eb par\u00eb, cili n\u00eb t\u00eb dyt\u00ebn, dhe cili slave nuk duhet kurr\u00eb t\u00eb zgjidhet si master). N\u00ebse nje slave b\u00ebhet master, at\u00ebher\u00eb ai do t\u00eb mbaj\u00eb ngarkes\u00ebn e slave dhe do t'i shtohet ngarkesa e master, kjo duhet t\u00eb merret parasysh.<\/li>\n<\/ul>\n<p>\nPse ju nevojitet Orchestrator n\u00ebse nuk e keni at\u00eb?<\/p>\n<ul>\n<li>Orchestrator ka nj\u00eb nd\u00ebrfaqe shum\u00eb t\u00eb p\u00ebrshtatshme grafike, q\u00eb tregon gjith\u00eb topologjin\u00eb (shihni screenshot-in m\u00eb posht\u00eb).<\/li>\n<li>Orchestrator mund t\u00eb ndjek\u00eb se cilat slave jan\u00eb prapa, dhe ku replikimi ka d\u00ebshtuar plot\u00ebsisht (ne kemi skenare t\u00eb lidhura me Orchestrator p\u00ebr t\u00eb d\u00ebrguar SMS).<\/li>\n<li>Orchestrator ju thot\u00eb se n\u00eb cilat slave ka gabime GTID errant.<\/li>\n<\/ul>\n<p>\nNd\u00ebrfaqja e Orchestrator-it:<\/p>\n<p><img decoding=\"async\" alt=\"Orkestratori p\u00ebr MySQL: pse nuk mund t\u00eb nd\u00ebrtojm\u00eb nj\u00eb projekt t\u00eb q\u00ebndruesh\u00ebm pa t\u00eb\" src=\"\/wp-content\/uploads\/2020\/05\/5129a85ad1c0a5db8e3ecf501cff0d0d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n\u00c7far\u00eb \u00ebsht\u00eb GTID errant?<\/p>\n<p>Ka dy k\u00ebrkesa kryesore p\u00ebr funksionimin e Orchestrator-it:<\/p>\n<ul>\n<li>Duhet q\u00eb n\u00eb t\u00eb gjitha makinat e klasterit MySQL t\u00eb jet\u00eb i aktivizuar pseudo GTID, ne kemi aktivizuar GTID.<\/li>\n<li>Duhet t\u00eb ket\u00eb nj\u00eb lloj t\u00eb vet\u00ebm t\u00eb binlog-ve kudo, mund\u00ebsisht statement. Ne kishim nj\u00eb konfigurim t\u00eb till\u00eb, ku n\u00eb master dhe n\u00eb shumic\u00ebn e slave-\u00ebve ishte Row, nd\u00ebrsa n\u00eb dy histori kishte mbetur n\u00eb m\u00ebnyr\u00ebn Mixed. Si rezultat, k\u00ebta slave Orchestrator nuk deshi t'i lidhte me masterin e ri.<\/li>\n<\/ul>\n<p>\nMbani se kujtoni se gj\u00ebja m\u00eb e r\u00ebnd\u00ebsishme n\u00eb slavin e production-it \u00ebsht\u00eb konsistenca e tij me master-in! N\u00ebse ju keni aktivizuar Global Transaction ID (GTID) si n\u00eb master ashtu edhe n\u00eb slave, mund t\u00eb kuptoni p\u00ebrmes funksionit gtid_subset n\u00ebse k\u00ebrkesat p\u00ebr ndryshimin e t\u00eb dh\u00ebnave jan\u00eb kryer t\u00eb nj\u00ebjtat n\u00eb k\u00ebto makina. M\u00eb shum\u00eb rreth k\u00ebsaj mund t\u00eb lexoni. <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\/\">k\u00ebtu<\/a><\/noindex>.<\/p>\n<p>K\u00ebshtu, Orchestrator ju tregon p\u00ebrmes gabimit GTID errant se n\u00eb slave ka transaksione q\u00eb nuk jan\u00eb n\u00eb master. Pse ndodh kjo?<\/p>\n<ul>\n<li>N\u00eb slave nuk \u00ebsht\u00eb aktivizuar read_only=1, dikush \u00ebsht\u00eb lidhur dhe ka kryer nj\u00eb k\u00ebrkes\u00eb p\u00ebr ndryshimin e t\u00eb dh\u00ebnave.<\/li>\n<li>N\u00eb slave nuk \u00ebsht\u00eb aktivizuar super_read_only=1, at\u00ebher\u00eb admin, duke b\u00ebr\u00eb nj\u00eb gabim me serverin, ka hyr\u00eb dhe ka kryer nj\u00eb k\u00ebrkes\u00eb.<\/li>\n<li>N\u00ebse keni marr\u00eb parasysh t\u00eb dy pikat e m\u00ebparshme, ka nj\u00eb tjet\u00ebr hile: n\u00eb MySQL, k\u00ebrkesa p\u00ebr flush binlog-\u00ebve gjithashtu shkon n\u00eb binlog, prandaj me flush-in e par\u00eb n\u00eb master dhe n\u00eb t\u00eb gjitha slave-t do t\u00eb shfaqet GTID errant. Si ta shmangim k\u00ebt\u00eb? N\u00eb perona-5.7.25-28 u shfaq nj\u00eb konfigurim binlog_skip_flush_commands=1, q\u00eb ndalon shkruarjen e flush n\u00eb binlog. N\u00eb faqen mysql.com \u00ebsht\u00eb regjistruar nj\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/bugs.mysql.com\/bug.php?id=88720\">\u00e7\u00ebshtje<\/a><\/noindex>.<\/li>\n<\/ul>\n<p>\nP\u00ebrmbledh t\u00eb gjitha t\u00eb m\u00ebsuara m\u00eb sip\u00ebr. N\u00ebse ende nuk d\u00ebshironi t\u00eb p\u00ebrdorni Orchestrator n\u00eb modalitetin failover, vendoseni at\u00eb n\u00eb modalitetin e v\u00ebzhgimit. At\u00ebher\u00eb do t\u00eb keni gjithmon\u00eb para syve nj\u00eb hart\u00eb t\u00eb nd\u00ebrveprimit t\u00eb makinave MySQL dhe informacione t\u00eb qarta mbi llojin e replikimit n\u00eb \u00e7do makin\u00eb, n\u00ebse slave-t jan\u00eb pas dhe m\u00eb e r\u00ebnd\u00ebsishmja\u2014sa konsistent jan\u00eb ata me master-in!<\/p>\n<p>Pyetja evidente \u00ebsht\u00eb: \"Si duhet t\u00eb funksionoj\u00eb Orchestrator?\". Ai duhet t\u00eb zgjedh\u00eb nj\u00eb master t\u00eb ri nga slave-t aktual\u00eb dhe pastaj t\u00eb rikonfiguroj\u00eb t\u00eb gjith\u00eb slave-t ndaj tij (pasi p\u00ebr k\u00ebt\u00eb \u00ebsht\u00eb e nevojshme GTID; n\u00ebse p\u00ebrdorim mekanizmin e vjet\u00ebr me binlog_name dhe binlog_pos, \u00ebsht\u00eb thjesht e pamundur kalimi i nj\u00eb slave nga master-i aktual n\u00eb nj\u00eb t\u00eb ri!). Para se t\u00eb kishim Orchestrator, nj\u00ebher\u00eb m\u00eb \u00ebsht\u00eb dashur ta b\u00ebj gjith\u00eb k\u00ebt\u00eb manualisht. Master-i i vjet\u00ebr ngrinte p\u00ebr shkak t\u00eb nj\u00eb kontrolluesi problematik Adaptec, kishte rreth 10 slave. M\u00eb duhej t\u00eb kaloja VIP nga master-i te nj\u00eb prej slave-ve dhe t\u00eb rikonfiguroja t\u00eb gjith\u00eb slave-t e tjer\u00eb ndaj tij. Sa shum\u00eb konsolla m\u00eb \u00ebsht\u00eb dashur t\u00eb hapja, sa komandat e p\u00ebrkohshme t\u00eb vendosja... Ishte nevojshme t\u00eb prisja deri n\u00eb or\u00ebn 3 t\u00eb m\u00ebngjesit, t\u00eb laj\u00eb barr\u00ebn nga t\u00eb gjith\u00eb slave-t, p\u00ebrve\u00e7 dyve, t\u00eb b\u00ebja nj\u00eb makin\u00eb nga dyta master, menj\u00ebher\u00eb t\u00eb lidhja makin\u00ebn e dyt\u00eb, pastaj t\u00eb lidhen t\u00eb gjith\u00eb slave-t e tjer\u00eb me master-in e ri dhe t\u00eb kthej barr\u00ebn. N\u00eb p\u00ebrgjith\u00ebsi, tmerr...<\/p>\n<p>Siht q\u00eb Orchestrator funksionon kur kalon n\u00eb modalitetin e d\u00ebshtimit? \u00cbsht\u00eb m\u00eb e leht\u00eb t\u00eb ilustrohet me nj\u00eb shembull t\u00eb situat\u00ebs ku duam t\u00eb b\u00ebjm\u00eb nj\u00eb makin\u00eb m\u00eb t\u00eb fuqishme dhe m\u00eb moderne se ajo aktuale, master. <\/p>\n<p><img decoding=\"async\" alt=\"Orkestratori p\u00ebr MySQL: pse nuk mund t\u00eb nd\u00ebrtojm\u00eb nj\u00eb projekt t\u00eb q\u00ebndruesh\u00ebm pa t\u00eb\" src=\"\/wp-content\/uploads\/2020\/05\/d2afe9c74b33765e55641b34def3145e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nN\u00eb figur\u00eb paraqitet mesi i procesit. \u00c7far\u00eb \u00ebsht\u00eb b\u00ebr\u00eb deri n\u00eb k\u00ebt\u00eb moment? Ne tham\u00eb se duam t\u00eb b\u00ebjm\u00eb nj\u00eb skllav t\u00eb caktuar nj\u00eb master t\u00eb ri, Orchestrator filloi thjesht t\u00eb lidh\u00eb p\u00ebrs\u00ebri t\u00eb gjith\u00eb skllav\u00ebt e tjer\u00eb, nd\u00ebrsa masteri i ri ka rol si makin\u00eb tranziti. Me k\u00ebt\u00eb skem\u00eb nuk ka gabimesh, t\u00eb gjith\u00eb skllav\u00ebt funksionojn\u00eb, Orchestrator heq VIP nga masteri i vjet\u00ebr, e transferon te i ri, b\u00ebn read_only=0 dhe e harron masterin e vjet\u00ebr. Kaq! Koha e pap\u00ebrshtatshme e sh\u00ebrbimit ton\u00eb \u00ebsht\u00eb koha e transferimit t\u00eb VIP, q\u00eb \u00ebsht\u00eb 2-3 sekonda.<\/p>\n<p>K\u00ebtu p\u00ebrfundon gjith\u00e7ka p\u00ebr sot, faleminderit t\u00eb gjith\u00ebve. Shpejt do t\u00eb publikohet nj\u00eb artikull i dyt\u00eb p\u00ebr Orchestrator. N\u00eb nj\u00eb film t\u00eb njohur sovjetik \"Garazhi\" nj\u00eb hero tha \"Un\u00eb nuk do t\u00eb shkoja n\u00eb spiunazh me t\u00eb!\" Pra, Orchestrator, un\u00eb do t\u00eb shkoja n\u00eb spiunazh me ty!<br \/>\n<br \/>Burimi: <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\/sq\/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=\"sq_AL\" \/>\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\/sq\/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 p\u00ebr MySQL: pse pa t\u00eb nuk mund t\u00eb nd\u00ebrtosh nj\u00eb projekt t\u00eb q\u00ebndruesh\u00ebm | ProHoster","description":"\u00c7do projekt i madh filloi me disa server\u00eb. Fillimisht ishte nj\u00eb server DB, pastaj iu shtuan skllav\u00ebt p\u00ebr t\u00eb skalitur leximin. Dhe k\u00ebtu \u2014 ndal!","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/orchestrator-dlya-mysql-pochemu-bez-nego-nelzya-stroit-otkazoustojchivyj-proekt","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","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\/sq\/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\/sq\/wp-json\/wp\/v2\/posts\/82116","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=82116"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/82116\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media\/82117"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=82116"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=82116"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=82116"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}