{"id":56387,"date":"2020-02-12T00:00:00","date_gmt":"2020-02-11T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/service-discovery-v-raspredelennyh-sistemah-na-primere-consul-aleksandr-sigachev"},"modified":"2020-02-18T14:04:39","modified_gmt":"2020-02-18T11:04:39","slug":"service-discovery-v-raspredelennyh-sistemah-na-primere-consul-aleksandr-sigachev","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/service-discovery-v-raspredelennyh-sistemah-na-primere-consul-aleksandr-sigachev","title":{"rendered":"Teenuste leidmine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ev","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><strong>Tutvustan teile Aleksandr Sigat\u0161ovi ettekande t\u00f5lgendust teenuste avastamisest hajutatud s\u00fcsteemides, kasutades n\u00e4itena Consulit.<\/strong><\/p>\n<p><\/p>\n<p>Teenuste avastamine on loodud selleks, et saaksime minimaalse vaevaga \u00fchendada uusi rakendusi juba olemasolevasse keskkonda. Kasutades teenuste avastamist, suudame maksimaalselt eraldada kas konteineri, nagu Dockeri, v\u00f5i virtuaalse teenuse keskkonnast, kus see on k\u00e4ivitatud. <\/p>\n<p>\n<center><div class=\"youtube-placeholder\" data-id=\"IYWsZ8HFrCw\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/IYWsZ8HFrCw\/hqdefault.jpg\" alt=\"Vaata videot\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Tere k\u00f5igile! Olen Aleksandr Sigat\u0161ov, t\u00f6\u00f6tan ettev\u00f5ttes Inventos. T\u00e4na tutvustan teile sellist m\u00f5istet nagu teenuste avastamine. Vaatame teenuste avastamist Consuli n\u00e4itel.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Teenuste leidmine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ev\" src=\"\/wp-content\/uploads\/2020\/02\/8078ef6ee7af4e52e977deed5f1f42ab.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Milliseid probleeme lahendab teenuste avastamine? Teenuste avastamine on loodud selleks, et saaksime minimaalse vaevaga \u00fchendada uusi rakendusi juba olemasolevasse keskkonda. Kasutades teenuste avastamist, suudame maksimaalselt eraldada kas konteineri, nagu Dockeri, v\u00f5i virtuaalse teenuse keskkonnast, kus see on k\u00e4ivitatud. <\/p>\n<p><\/p>\n<p>Kuidas see v\u00e4lja n\u00e4eb? Klassikalises veebin\u00e4ites on see frontend, mis v\u00f5tab kasutaja p\u00e4ringu vastu. Edasi suunatakse see backend'ile. Antud n\u00e4ites tasakaalustab load-balancer kahte backend'i.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Teenuste leidmine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ev\" src=\"\/wp-content\/uploads\/2020\/02\/10d23c4c51543161fc2034145776461b.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Siit n\u00e4eme, et k\u00e4ivitame rakenduse kolmanda eksemplari. Seega, kui rakendus k\u00e4ivitatakse, registreerib see end teenuste leidmise s\u00fcsteemis. Teenuste leidmise s\u00fcsteem teavitab koormuse jaoturit. Koormuse jaotur muudab automaatselt oma konfiguratsiooni ja uus taust teenus hakkab t\u00f6\u00f6le. Nii saab taustteenuseid lisada v\u00f5i, vastupidi, eemaldada t\u00f6\u00f6 seest.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Teenuste leidmine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ev\" src=\"\/wp-content\/uploads\/2020\/02\/88a768894d79449ffb06fbbfa5cd32a8.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Mida veel on mugav teha teenuste leidmise s\u00fcsteemi abil? Teenuste leidmise s\u00fcsteemis v\u00f5ivad olla salvestatud nginx konfiguratsioonid, sertifikaadid ja aktiivsete taustserverite nimekiri.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Teenuste leidmine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ev\" src=\"\/wp-content\/uploads\/2020\/02\/8ebfb5f1c8cf44999904159af9695da9.jpeg\" style=\"display:block;margin: 0 auto;\" \/>Samuti v\u00f5imaldab teenuste leidmise s\u00fcsteem tuvastada rikkeid ja avastada t\u00f5rkeid. Millised skeemid on v\u00f5imalikud t\u00f5rgete tuvastamiseks?<\/p>\n<p><\/p>\n<ul>\n<li>See rakendus, mille me v\u00e4lja t\u00f6\u00f6tasime, teavitab teenuste leidmise s\u00fcsteemi, et see on endiselt t\u00f6\u00f6v\u00f5imeline. <\/li>\n<li>Teenuste leidmise s\u00fcsteem omakorda k\u00fcsib rakenduselt selle k\u00e4ttesaadavuse kohta.<\/li>\n<li>V\u00f5i kasutatakse kolmandat osapoole skripti v\u00f5i rakendust, mis kontrollib meie rakenduse k\u00e4ttesaadavust ja teavitab teenuste leidmise s\u00fcsteemi, et k\u00f5ik on korras ja saab t\u00f6\u00f6tada, v\u00f5i vastupidi, et k\u00f5ik on halvasti ja on vajalik see rakenduse eksemplar koormuse jaotusest eemaldada.<\/li>\n<\/ul>\n<p><\/p>\n<p>Iga skeem v\u00f5ib olla rakendatav s\u00f5ltuvalt sellest, millist tarkvara me kasutame. N\u00e4iteks, kui oleme alles alustanud uue projekti arendamist, siis saame h\u00f5lpsasti rakendada skeemi, kus meie rakendus teavitab Service Discovery't. Samuti v\u00f5ime seadistada, et Service Discovery teostab kontrolli.<\/p>\n<p><\/p>\n<p>Kuid juhul, kui rakendus on meile p\u00e4randatud v\u00f5i loodud m\u00f5ne kolmanda osapoole poolt, sobib siinkohal kolmas variant, kus kirjutame t\u00f6\u00f6tleja, ja k\u00f5ik see liitub meie t\u00f6\u00f6protsessiga automaatselt.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Teenuste leidmine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ev\" src=\"\/wp-content\/uploads\/2020\/02\/ce4c5b452d526058b552a65926b9de58.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>See on \u00fcks n\u00e4ide. Nginx koormuse tasakaalustaja taask\u00e4ivitub. See on t\u00e4iendav utiliit, mis on saadaval koos Consuliga. See on consul-template. Me m\u00e4\u00e4ratleme reegli. \u00dctleme, et kasutame mallis\u00fcsteemi (Golang template). S\u00fcndmuste korral, teavitustega, et on toimunud muutusi, see genereeritakse uuesti ja Service Discovery saadab k\u00e4su \"reload\". Lihtne n\u00e4ide, kuidas nginx konfigureeritakse \u00fcmber ja taask\u00e4ivitub s\u00fcndmuse korral.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Teenuste leidmine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ev\" src=\"\/wp-content\/uploads\/2020\/02\/d829f882a52c97420750893f78bacc18.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Mis on Consul?<\/p>\n<p><\/p>\n<ul>\n<li>\n<p>Esiteks \u2013 see on Service Discovery. <\/p>\n<p>\n<\/li>\n<li>\n<p>Tal on k\u00e4ttesaadavuse kontrollimise mehhanism \u2013 Health Checking.<\/p>\n<p>\n<\/li>\n<li>\n<p>Samuti on tal KV Store.<\/p>\n<p>\n<\/li>\n<li>\n<p>Ja selle p\u00f5hialuseks on Multi Datacenter'i kasutamise v\u00f5imalus.<\/p>\n<p>\n<\/li>\n<\/ul>\n<p><\/p>\n<p>Milleks see k\u00f5ik m\u00f5eldud on? KV Store'is saame hoida konfigureerimise n\u00e4iteid. Health Checking v\u00f5imaldab meil kontrollida kohalikke teenuseid ja teavitada neist. Multi Datacenter v\u00f5imaldab luua teenuste kaarti. N\u00e4iteks Amazonil on mitu tsooni ja see suunab liiklust k\u00f5ige optimaalsemalt, v\u00e4ltides liigseid p\u00e4ringuid andmekeskuste vahel, mis on eraldi tasustatud kohaliku liikluse k\u00f5rval ning seega madalama latentsusega. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Teenuste leidmine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ev\" src=\"\/wp-content\/uploads\/2020\/02\/7594fcb0dfd05193d95214d9694c39e8.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>L\u00e4heme veidi s\u00fcgavamale terminolooge, mida Consul kasutab. <\/p>\n<p><\/p>\n<ul>\n<li>Consul on Go keeles kirjutatud teenus. \u00dcks Go programmi eeliseid on see, et see on 1 binaarfail, mille lihtsalt alla laadid. K\u00e4ivita see igast kohast ja sul ei ole mingeid s\u00f5ltuvusi. <\/li>\n<li>Edasi saame v\u00f5tmete abil k\u00e4ivitada selle teenuse kas kliendi v\u00f5i serveri re\u017eiimis. <\/li>\n<li>Samuti v\u00f5imaldab atribuut \u201edatacenter\u201d seada lipu, millisele andmekeskusele see server kuulub. <\/li>\n<li>Konsensus \u2013 p\u00f5hineb raft-protokolil. Huvi korral saab selle kohta l\u00e4hemalt lugeda Consul'i veebisaidilt. See on protokoll, mis v\u00f5imaldab m\u00e4\u00e4rata juhti ja otsustada, millised andmed on kehtivad ja k\u00e4ttesaadavad.<\/li>\n<li>Gossip \u2013 see on protokoll, mis tagab suhtlemise s\u00f5lmede vahel. Lisaks on see s\u00fcsteem detsentraliseeritud. \u00dches andmekeskuses suhtlevad k\u00f5ik s\u00f5lmed naabritega. Seega edastatakse \u00fcksteisele teavet hetkeolukorra kohta. V\u00f5ib \u00f6elda, et need on naabrite vahelised kuulujutud. <\/li>\n<li>LAN Gossip \u2013 kohalike andmete vahetamine naabrite vahel \u00fches andmekeskuses. <\/li>\n<li>WAN Gossip \u2013 kasutatakse, kui on vaja s\u00fcnkroonida teavet kahe andmekeskuse vahel. Teave liigub serveriks m\u00e4rgitud s\u00f5lmede vahel. <\/li>\n<li>RPC \u2013 v\u00f5imaldab teha p\u00e4ringute saates\u00fcsteemi kaudu kliendilt serverisse. <\/li>\n<\/ul>\n<p><\/p>\n<p>RPC kirjeldus. Oletame, et virtuaalses masinas v\u00f5i f\u00fc\u00fcsilisel serveril on k\u00e4imas Consul kliendina. Me p\u00f6\u00f6rdume selle poole kohalikult. Edasi p\u00e4rib kohalik klient teavet serverilt ja s\u00fcnkroniseerib. Teave v\u00f5ib s\u00f5ltuvalt seadistustest p\u00e4rineda kohalikust vahem\u00e4lust v\u00f5i olla s\u00fcnkroniseeritud liidri ehk serveri meistriga. <\/p>\n<p><\/p>\n<p>Neil kahel skeemil on nii eeliseid kui ka puuduseid. Kui me t\u00f6\u00f6tame kohaliku vahem\u00e4luga, on see kiire. Kui me t\u00f6\u00f6tame serveris salvestatud andmetega, siis see kestab kauem, kuid saame aktuaalsema teabe.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Teenuste leidmine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ev\" src=\"\/wp-content\/uploads\/2020\/02\/6ab034093708c0b1739af21015e50742.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Kui seda visuaalselt kujutada, siis n\u00e4eks see v\u00e4lja nii. N\u00e4hes, et meil on k\u00e4imas kolm meistrit. \u00dcht t\u00e4hekesega m\u00e4rgitud kui liider. Antud n\u00e4ites on kolm klienti, kes vahetavad \u00fcksteisega kohalikult teavet l\u00e4bi UDP\/TCP. Ja teave andmekeskuste vahel edastatakse serverite vahel. Siin suhtlevad kliendid omavahel kohalikult. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Teenuste leidmine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ev\" src=\"\/wp-content\/uploads\/2020\/02\/24a8f749195447c54e4405ad0be5728e.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Millist API-d Consul pakub? Teabe saamiseks on Consulil kaks t\u00fc\u00fcpi API-d.<\/p>\n<p><\/p>\n<p>See on DNS API. Vaikimisi t\u00f6\u00f6tab Consul porti 8600 peal. Saame seadistada p\u00e4ringute proximise ja tagada juurdep\u00e4\u00e4su kohaliku lahenduse kaudu, kohaliku DNS-i kaudu. Saame p\u00e4rida domeeni ja saada vastuseks IP-aadressi teabe.<\/p>\n<p><\/p>\n<p>HTTP API \u2013 me saame kas kohalikult 8500 porti kaudu p\u00e4rida konkreetse teenuse teavet ja saada JSON-vastuse, milline IP serveril on, milline host, milline port on registreeritud. Ja lisateavet saab edastada ka tokeni kaudu.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Teenuste leidmine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ev\" src=\"\/wp-content\/uploads\/2020\/02\/6af7cc95a392c5d2fe278131245b8f5d.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Mida on vaja, et k\u00e4ivitada Consul?<\/p>\n<p><\/p>\n<p>Esimeses variandis n\u00e4itame arenduse re\u017eiimis lippu, et see on arenduse re\u017eiim. Agent k\u00e4ivitub serverina. Ja kogu funktsiooni t\u00e4idab juba iseseisvalt \u00fchel masinal. Mugav, kiire ja praktiliselt ei vaja esmak\u00e4ivitamiseks mingeid t\u00e4iendavaid seadistusi.<\/p>\n<p><\/p>\n<p>Teine re\u017eiim on tootmisre\u017eiim. Siin k\u00e4ivitamine on veidi keerulisem. Kui meil pole \u00fchtegi konsultandi versiooni, peame viima esimeses seadmes boottarkvara, s.t. seadme, mis v\u00f5tab enda kanda juhi \u00fclesanded. K\u00e4ivitame selle, seej\u00e4rel k\u00e4ivitame teise serveri eksemplari, edastades talle teabe, kus meie master asub. K\u00e4ivitame kolmanda. Kui meil on kolm seadet t\u00f6\u00f6tamas, taask\u00e4ivitame esimeses seadmes boottarkvara tavare\u017eiimis. Andmed s\u00fcnkroniseeritakse ja algne klaster on juba \u00fcles t\u00f5stetud. <\/p>\n<p><\/p>\n<p>Soovitatav on k\u00e4ivitada kolm kuni seitse eksemplari serverire\u017eiimis. See tuleneb sellest, et kui serverite arv kasvab, pikeneb ka teabe s\u00fcnkroniseerimise aeg nende vahel. Nodide arv peab olema paaritu, et tagada kvoorum. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Teenuste leidmine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ev\" src=\"\/wp-content\/uploads\/2020\/02\/6d0a230bd31980d78e73041cbac3496f.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Kuidas tagatakse tervisekontrollid? Konsuli konfiguratsioonikausta kirjutame Json vormis kontrollreeglid. Esimene variant on ligip\u00e4\u00e4setavus antud n\u00e4ites domeenile google.com. Ja \u00fctleme, et iga 30 sekundi j\u00e4rel tuleb seda kontrolli teha. Nii kontrollime, et meie node-l on ligip\u00e4\u00e4s v\u00e4lisesse v\u00f5rku.<\/p>\n<p><\/p>\n<p>Teine variant on enda kontrollimine. Kutsume localhost'i antud pordi kaudu v\u00e4lja tavalise curl'i iga 10 sekundi j\u00e4rel. <\/p>\n<p><\/p>\n<p>Need kontrollid summeeritakse ja edastatakse Service Discovery'le. Saadavuse alusel v\u00e4listatakse need s\u00f5lmed v\u00f5i nad ilmuvad kergesti kergesti t\u00f6\u00f6tavate masinate nimekirja. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Teenuste leidmine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ev\" src=\"\/wp-content\/uploads\/2020\/02\/551d98ded7111f48afd0a6406b83cba0.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Consul pakub ka UI-liidese, mis k\u00e4ivitatakse eraldi lipu abil ja on masinas saadaval. See v\u00f5imaldab vaadata teavet ning teha teatud muudatusi. <\/p>\n<p><\/p>\n<p>Antud n\u00e4ites on avatud vahekaart \u201eTeenused\u201d. N\u00e4ha, et on k\u00e4imas kolm teenust, neist \u00fcks on Consul. N\u00e4idatakse l\u00e4biviidud kontrollide arvu ja kolme andmekeskust, kus masinad asuvad.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Teenuste leidmine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ev\" src=\"\/wp-content\/uploads\/2020\/02\/cd684146191a7b262df76d1b88f7df7c.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>See on n\u00e4ide vahekaardist \u201eNodes\u201d. N\u00e4eme, et neil on koostisosade nimed, mis sisaldavad andmekeskusi. Siin on n\u00e4ha ka, millised teenused on k\u00e4imas, st n\u00e4eme, et silte ei ole m\u00e4\u00e4ratud. Nendes lisasiltes v\u00f5idakse m\u00e4\u00e4rata teavet, mida arendaja saab kasutada t\u00e4iendavate parameetrite m\u00e4\u00e4ramiseks. <\/p>\n<p><\/p>\n<p>Samuti saab Consul'ile edastada teavet ketta oleku, keskmise koormuse kohta.<\/p>\n<p><\/p>\n<p>K\u00fcsimused<\/p>\n<p><\/p>\n<p>K\u00fcsimus: Meil on Docker konteiner, kuidas seda Consuliga kasutada?<\/p>\n<p><\/p>\n<p>Vastus: Docker konteinerite jaoks on mitu l\u00e4henemist. \u00dcks levinumaid on kasutada kolmanda osapoole Docker konteinerit, mis vastutab registreerimise eest. K\u00e4ivitamisel edastatakse talle Docker socket. K\u00f5ik registreerimise ja eemaldamise s\u00fcndmused kantakse \u00fcle Consulile.<\/p>\n<p><\/p>\n<p>K\u00fcsimus: Kas Consul k\u00e4ivitab Docker konteineri ise?<\/p>\n<p><\/p>\n<p>Vastus: Ei, me k\u00e4ivitame Docker konteineri. Ja konfigureerimisel n\u00e4itame, et kuulame sellist socketit. See on umbes sama, nagu t\u00f6\u00f6tades sertifikaadiga, kui edastame teavet selle kohta, kus ja mis meil asub. <\/p>\n<p><\/p>\n<p>K\u00fcsimus: Kas see t\u00e4hendab, et Docker konteineris, mille \u00fcritame \u00fchendada Service Discoveryga, peab olema mingi loogika, mis suutis andmeid Consulile edastada?<\/p>\n<p><\/p>\n<p>Vastus: Mitte p\u00e4ris. Kui see k\u00e4ivitub, siis edastame keskkonnamuutujate kaudu muutujad. Oletame, teenuse nimi, teenuse port. Register kuulab seda teavet ja kannab selle Consulisse.<\/p>\n<p><\/p>\n<p>K\u00fcsimus: Mul on veel \u00fcks k\u00fcsimus UI kohta. Oleme k\u00e4ivitanud UI, oletame, tootmisserveris. Kuidas on turvalisusega? Kus andmeid hoitakse? Kas on v\u00f5imalik andmeid kuidagi koguda?<\/p>\n<p><\/p>\n<p>K\u00fcsimus: Kas see on v\u00f5imalik avaldada internetis? <\/p>\n<p><\/p>\n<p>Vastus: UI-s on t\u00f5epoolest andmed andmebaasist ja Service Discovery-st. Paroolid seadistame ise.<\/p>\n<p><\/p>\n<p>Vastus: Vaikimisi k\u00e4ivitub Consul localhost-is. Selleks, et avaldada internetis, tuleb installeerida mingi proxy. Turvaseaduste eest vastutame ise.<\/p>\n<p><\/p>\n<p>K\u00fcsimus: Kas ajaloolisi andmeid pakutakse vaikimisi? Oleks huvitav n\u00e4ha statistikat Health Checks-i kohta. Probleeme saab ju diagnostiseerida, kui server sageli kokku kukub.<\/p>\n<p><\/p>\n<p>Vastus: Ma ei ole kindel, kas seal on p\u00e4ris \u00fcksikasjade kontrollimist. <\/p>\n<p><\/p>\n<p>K\u00fcsimus: Praegune olek ei ole nii oluline, kui oluline on d\u00fcnaamika.<\/p>\n<p><\/p>\n<p>Vastus: Anal\u00fc\u00fcsimiseks \u2013 jah.<\/p>\n<p><\/p>\n<p>K\u00fcsimus: Kas Consul'i kasutamine dokkeri jaoks pole soovitatav?<\/p>\n<p><\/p>\n<p>Vastus: Ma ei soovitaks seda kasutada. Ettepaneku eesm\u00e4rk on tutvustada, et selline m\u00f5isted olemas on. Ajalooliselt on ta l\u00e4binud tee, minu arvates, kuni 1. versioonini. Praegu on olemas juba t\u00e4ielikumad lahendused, n\u00e4iteks Kubernetes, mis omab seda k\u00f5ike. Kubernetes'is j\u00e4\u00e4b Service Discovery Etcd-ile alla. Kuid ma ei tunne seda nii h\u00e4sti kui Consul-iga. Seet\u00f5ttu otsustasin Service Discovery n\u00e4idata Consul'i n\u00e4itel.<\/p>\n<p><\/p>\n<p>K\u00fcsimus: Kas juhi serveriga skeem ei takista rakenduse k\u00e4ivitamist tervikuna? Kuidas Consul m\u00e4\u00e4rab uue juhi, kui olemasolev on maas?<\/p>\n<p><\/p>\n<p>Vastus: Neil on palju protokollidest. Kui huvitav, siis saad lugeda.<\/p>\n<p><\/p>\n<p>K\u00fcsimus: Kas Consul tegutseb meil t\u00e4ieliku serverina ja k\u00f5ik p\u00e4ringud liiguvad selle kaudu?<\/p>\n<p><\/p>\n<p>Vastus: Ta ei tegutse t\u00e4ieliku serverina, vaid katab kindla ala. See l\u00f5ppeb tavaliselt service.consul. Ja edasi liigume loogika j\u00e4rgi. Me ei kasuta tootmises domeeninimesid, vaid sisemist infrastruktuuri, mis tavaliselt peidetakse serveri vahem\u00e4lu taha, kui me t\u00f6\u00f6tame DNS-iga.<\/p>\n<p><\/p>\n<p>K\u00fcsimus: St kui soovime andmebaasile ligi p\u00e4\u00e4seda, siis peame igal juhul Consul'ilt k\u00fcsima, et k\u00f5igepealt see andmebaas leida, eks?<\/p>\n<p><\/p>\n<p>Vastus: Jah. Kui t\u00f6\u00f6tame DNS-iga, siis see toimib nagu Consul'i kasutamata, kui kasutame DNS-nimesid. K\u00f5ige moodsamad rakendused ei k\u00fcsi igas p\u00e4ringus domeeninime, kuna meil on \u00fchendus loodud, k\u00f5ik toimib ja me ei kasuta seda l\u00e4hiajal. Kui \u00fchendus katkeb, siis \u2013 jah, k\u00fcsime j\u00e4lle, kus meie andmebaas asub ja liigume sinna.<\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/ru_hashicorp\">HashiCorpi toodete jututuba<\/a><\/noindex> \u2014 HashiCorpi kasutajate jututuba: Consul, Nomad, Terraform<\/p>\n<p><\/p>\n<p>P.S. Seotud tervisekontrollidega. Consulis, nagu ka Kuberneteses, kasutatakse sama teenuse eluj\u00f5u kontrollimise s\u00fcsteemi, mis p\u00f5hineb staatuse koodil.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">200 OK terve jaoks\n503 Teenus ei ole kergesti saadaval haige jaoks<\/code><\/pre>\n<p><\/p>\n<p>Allikad:<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/www.consul.io\/docs\/agent\/checks.html\">https:\/\/www.consul.io\/docs\/agent\/checks.html<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/tasks\/configure-pod-container\/configure-liveness-readiness-startup-probes\/\">https:\/\/kubernetes.io\/docs\/tasks\/configure-pod-container\/configure-liveness-readiness-startup-probes\/<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/thoslin.github.io\/microservice-health-check-in-kubernetes\/\">https:\/\/thoslin.github.io\/microservice-health-check-in-kubernetes\/<\/a><\/noindex><\/p>\n<p>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/487706\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u043e\u0439 \u0434\u043e\u043a\u043b\u0430\u0434\u0430 \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440\u0430 \u0421\u0438\u0433\u0430\u0447\u0435\u0432\u0430 Service Discovery \u0432 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 Consul. Service Discovery \u0441\u043e\u0437\u0434\u0430\u043d \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0441 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0437\u0430\u0442\u0440\u0430\u0442\u0430\u043c\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043d\u043e\u0432\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432 \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0435 \u043d\u0430\u0448\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f Service Discovery, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u044c \u043b\u0438\u0431\u043e \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u0432 \u0432\u0438\u0434\u0435 \u0434\u043e\u043a\u0435\u0440\u0430, \u043b\u0438\u0431\u043e \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0438\u0441 \u043e\u0442 \u0442\u043e\u0433\u043e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u043d \u0437\u0430\u043f\u0443\u0449\u0435\u043d. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-56387","post","type-post","status-publish","format-standard","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=\"\u041f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u043e\u0439 \u0434\u043e\u043a\u043b\u0430\u0434\u0430 \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440\u0430 \u0421\u0438\u0433\u0430\u0447\u0435\u0432\u0430 Service Discovery \u0432 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 Consul. Service Discovery \u0441\u043e\u0437\u0434\u0430\u043d \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0441 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0437\u0430\u0442\u0440\u0430\u0442\u0430\u043c\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043d\u043e\u0432\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432 \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0435 \u043d\u0430\u0448\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f Service Discovery, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u044c \u043b\u0438\u0431\u043e \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u0432 \u0432\u0438\u0434\u0435 \u0434\u043e\u043a\u0435\u0440\u0430, \u043b\u0438\u0431\u043e \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0438\u0441 \u043e\u0442 \u0442\u043e\u0433\u043e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u043d \u0437\u0430\u043f\u0443\u0449\u0435\u043d.\" \/>\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\/service-discovery-v-raspredelennyh-sistemah-na-primere-consul-aleksandr-sigachev\" \/>\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\udd47Service Discovery \u0432 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 Consul. \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440 \u0421\u0438\u0433\u0430\u0447\u0435\u0432 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u043e\u0439 \u0434\u043e\u043a\u043b\u0430\u0434\u0430 \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440\u0430 \u0421\u0438\u0433\u0430\u0447\u0435\u0432\u0430 Service Discovery \u0432 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 Consul. Service Discovery \u0441\u043e\u0437\u0434\u0430\u043d \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0441 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0437\u0430\u0442\u0440\u0430\u0442\u0430\u043c\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043d\u043e\u0432\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432 \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0435 \u043d\u0430\u0448\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f Service Discovery, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u044c \u043b\u0438\u0431\u043e \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u0432 \u0432\u0438\u0434\u0435 \u0434\u043e\u043a\u0435\u0440\u0430, \u043b\u0438\u0431\u043e \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0438\u0441 \u043e\u0442 \u0442\u043e\u0433\u043e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u043d \u0437\u0430\u043f\u0443\u0449\u0435\u043d.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/service-discovery-v-raspredelennyh-sistemah-na-primere-consul-aleksandr-sigachev\" \/>\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-02-11T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:04:39+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\udd47Teenuse avastamine jaotatud s\u00fcsteemides Consuli n\u00e4itel. Aleksandr Sigat\u0161ov | ProHoster","description":"Soovitan tutvuda Aleksandr Sigat\u0161ovi ettekandega \"Teenuse avastamine jaotatud s\u00fcsteemides Consuli n\u00e4itel\". Teenuse avastamine on loodud selleks, et v\u00f5imaldada uue rakenduse liitumist juba olemasolevasse keskkonda minimaalsete kuludega. Teenuse avastamise kasutamisel saame maksimaalselt eraldada kas konteinerit, nagu Docker, v\u00f5i virtuaalteenust keskkonnast, milles see t\u00f6\u00f6tab.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/service-discovery-v-raspredelennyh-sistemah-na-primere-consul-aleksandr-sigachev","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\udd47Service Discovery \u0432 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 Consul. \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440 \u0421\u0438\u0433\u0430\u0447\u0435\u0432 | ProHoster","og:description":"\u041f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u043e\u0439 \u0434\u043e\u043a\u043b\u0430\u0434\u0430 \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440\u0430 \u0421\u0438\u0433\u0430\u0447\u0435\u0432\u0430 Service Discovery \u0432 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 Consul. Service Discovery \u0441\u043e\u0437\u0434\u0430\u043d \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0441 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0437\u0430\u0442\u0440\u0430\u0442\u0430\u043c\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043d\u043e\u0432\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432 \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0435 \u043d\u0430\u0448\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f Service Discovery, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u044c \u043b\u0438\u0431\u043e \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u0432 \u0432\u0438\u0434\u0435 \u0434\u043e\u043a\u0435\u0440\u0430, \u043b\u0438\u0431\u043e \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0438\u0441 \u043e\u0442 \u0442\u043e\u0433\u043e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u043d \u0437\u0430\u043f\u0443\u0449\u0435\u043d.","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/service-discovery-v-raspredelennyh-sistemah-na-primere-consul-aleksandr-sigachev","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-02-11T21:00:00+00:00","article:modified_time":"2020-02-18T11:04:39+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"56387","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 19:25:40","updated":"2022-10-01 05:49:52"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/56387","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=56387"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/56387\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=56387"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=56387"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=56387"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}