{"id":82902,"date":"2020-05-26T13:42:27","date_gmt":"2020-05-26T11:42:27","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-mapping-vneshnih-servisov"},"modified":"2020-05-26T13:42:27","modified_gmt":"2020-05-26T11:42:27","slug":"luchshie-praktiki-kubernetes-mapping-vneshnih-servisov","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-mapping-vneshnih-servisov","title":{"rendered":"Najbolj\u0161e prakse Kubernetes. Mappiranje zunanjih storitev","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502052\/\">Najbolje prakse Kubernetes. Kreiranje malih kontejnera<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502320\/\">Najbolje prakse Kubernetes. Organizacija Kubernetes-a sa imenskim prostorima<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502430\/\">Najbolje prakse Kubernetes. Provera funkcionalnosti Kubernetes-a pomo\u0107u Readiness i Liveness testova<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502614\/\">Najbolj\u0161e prakse Kubernetes. Nastavitev zahtevkov in omejitev virov<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/503488\/\">Najbolj\u0161e prakse Kubernetes. Pravilno ustavljanje Terminate<\/a><\/noindex><\/p>\n<p>\u010ce ste podobni ve\u010dini ljudi, verjetno uporabljate vire, ki delujejo zunaj va\u0161ega klasterja. Mogo\u010de uporabljate API Taleo za po\u0161iljanje besedilnih sporo\u010dil ali analizirate slike s pomo\u010djo API Google Cloud Vision.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>\u010ce uporabljate isto kon\u010dno to\u010dko endpoint \u2014 to\u010dko za sprejemanje zahtevkov na stre\u017eni\u0161ki strani v vseh svojih okoljih in ne na\u010drtujete prenosa svojih stre\u017enikov v Kubernetes, je povsem v redu imeti endpoint storitve neposredno v va\u0161em kodi. Vendar pa obstaja veliko drugih scenarijev. V tej seriji \u201eKubernetes Best Practices\u201c boste izvedeli, kako uporabiti vgrajene mehanizme Kubernetes za odkrivanje storitev tako znotraj kot zunaj klasterja. <\/p>\n<p>Za primer dobro znane zunanje storitve lahko navedemo bazo podatkov, ki deluje zunaj klasterja Kubernetes. V nasprotju s tak\u0161nimi obla\u010dnimi bazami podatkov, kot sta Google Cloud Data Store ali Google Cloud Spanner, ki uporabljata eno kon\u010dno to\u010dko za vse vrste dostopa, ima ve\u010dina baz podatkov lo\u010dene kon\u010dne to\u010dke za razli\u010dne okoli\u0161\u010dine.<br \/>\nNajbolj\u0161e prakse pri uporabi tradicionalnih baz podatkov, kot sta MySQL in MongoDB, obi\u010dajno predvidevajo, da se povezujete na razli\u010dne komponente za razli\u010dna okolja. Morda imate ve\u010dji stroj za proizvodne podatke in manj\u0161i stroj za testno okolje. Vsaka od njih bo imela svoj IP naslov ali domeno, vendar zagotovo ne \u017eelite spreminjati svoje kode, ko prehajate iz enega okolja v drugo. Zato namesto trdega kodiranja teh naslovov lahko uporabite vgrajeno odkrivanje zunanjih storitev v Kubernetesu na osnovi DNS, prav tako kot za naravne storitve Kubernetes.<\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Mappiranje zunanjih storitev\" src=\"\/wp-content\/uploads\/2020\/05\/b64f2f5857f32d2d927c8dad1e4b1e36.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nRecimo, da za\u017eenete bazo podatkov MongoDB v Google Compute Engine. Priklenili boste v tem hibridnem svetu, dokler je ne boste uspeli prenesti v klaster.<\/p>\n<p>Na sre\u010do lahko uporabite stati\u010dne storitve Kubernetes, da si nekoliko olaj\u0161ate \u017eivljenje. V tem primeru sem ustvaril stre\u017enik MongoDB z uporabo Google Cloud Launcher. Ker je ustvarjen v isti omre\u017eni (ali VPC klasterja Kubernetes), je dostop do njega omogo\u010den s pomo\u010djo visoko zmogljivega notranjega IP naslova.<\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Mappiranje zunanjih storitev\" src=\"\/wp-content\/uploads\/2020\/05\/cafe19eabc8ac144d27bd06f6c44ac5f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nV Google Cloud je to privzeta nastavitev, zato vam ni treba ni\u010desar nastaviti. Zdaj, ko imamo IP naslov, je prvi korak ustvariti storitev. Opaziti je mogo\u010de, da za to storitev ni selektorjev vozli\u0161\u010d. To pomeni, da smo ustvarili storitev, ki ne bo vedela, kam poslati promet. To bo omogo\u010dilo ro\u010dno ustvarjanje objekta kon\u010dne to\u010dke, ki bo prejemal promet od te storitve. <\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Mappiranje zunanjih storitev\" src=\"\/wp-content\/uploads\/2020\/05\/4f3643f3ce2f2d3f5b207429bb269058.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNaslednji primer kode prikazuje, da kon\u010dne to\u010dke dolo\u010dajo IP naslov za podatkovno bazo, ki uporablja isto ime mongo kot storitev.<\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Mappiranje zunanjih storitev\" src=\"\/wp-content\/uploads\/2020\/05\/dbba2655a9e2295cb8a7de4c97eddc8f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKubernetes bo uporabil vse IP naslove, da najde kon\u010dne to\u010dke, kot da bi bile obi\u010dajna vozli\u0161\u010da Kubernetes, tako da zdaj lahko dostopate do podatkovne baze z enostavno povezovalno vrstico do zgoraj navedenega imena mongodb:\/\/mongo. Pri tem ni treba uporabljati IP naslovov v va\u0161i kodi.<\/p>\n<p>\u010ce se v prihodnosti IP naslovi spremenijo, lahko preprosto posodobite kon\u010dne to\u010dke z novim IP naslovom, in va\u0161ih aplikacij ni treba dodatno spreminjati.<\/p>\n<p>\u010ce uporabljate podatkovno bazo, gostovano na zunanjih stre\u017enikih, so vam verjetno lastniki gostiteljskih storitev zagotovili univerzalni identifikator vira URI za povezovanje. Tako, \u010de ste dobili IP naslov, lahko preprosto uporabite prej\u0161njo metodo. Ta primer prikazuje, da imam dve podatkovni bazi MongoDB, gostovani na stre\u017eniku mLab.<\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Mappiranje zunanjih storitev\" src=\"\/wp-content\/uploads\/2020\/05\/088a578041c3d7c924c77f0a2e67e323.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEna izmed njiju je podatkovna baza razvijalcev, druga pa je produkcijska BDP. Povezovalne vrstice za ti dve podatkovni bazi izgledajo takole \u2014 mLab vam zagotovi dinami\u010dni URI in dinami\u010dno pristani\u0161\u010de. Kot vidite, sta razli\u010dni.<\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Mappiranje zunanjih storitev\" src=\"\/wp-content\/uploads\/2020\/05\/41d2e22371e85b7e794a9df7b2db515d.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDa bi se od tega abstrahirali, uporabite Kubernetes in se pove\u017eite s podatkovno bazo razvijalcev. Lahko ustvarite zunanje ime storitve Kubernetes, ki vam bo dalo stati\u010dno storitev, ki bo preusmerila promet zunanji storitvi. <\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Mappiranje zunanjih storitev\" src=\"\/wp-content\/uploads\/2020\/05\/ed07c1e9818a6641b29d5c941bdf68cb.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTa storitev bo izvedla preprosto CNAME preusmerjanje na ravni jedra, kar bo imelo minimalen vpliv na zmogljivost. Tako lahko uporabite enostavnej\u0161o povezovalno vrstico.<\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Mappiranje zunanjih storitev\" src=\"\/wp-content\/uploads\/2020\/05\/ee5442aec9c1a9d19f78bd92d44a97ec.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nToda pa\u010de so externi naziv uporablja preusmeritev CNAME, ne more izvesti preusmeritve vrat. Zato je ta re\u0161itev uporabna le za stati\u010dna vrata in je ne moremo uporabiti z dinami\u010dnimi vrati. Brezpla\u010dni mLab Free Tier pa privzeto uporabniku dodeli dinami\u010dno \u0161tevilko vrat, tega ne morete spremeniti. To pomeni, da potrebujete razli\u010dne povezovalne ukaze za dev in prod. Slabo je, da bo potrebno trdo kodirati \u0161tevilko vrat. Kako torej omogo\u010diti delovanje preusmeritve vrat?<\/p>\n<p>Prvi korak je pridobitev IP-naslova iz URI. \u010ce izvedete ukaz nslookup, hostname ali pingate URI, lahko pridobite IP-naslov baze podatkov. \u010ce storitev vrne ve\u010d IP-naslovov, lahko vse te naslove uporabite v kon\u010dnih to\u010dkah objekta.<\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Mappiranje zunanjih storitev\" src=\"\/wp-content\/uploads\/2020\/05\/6cd63eb3c8bd733afbd7fe791ef7b8f4.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTreba je vedeti, da se IP-naslovi URI lahko spremenijo brez predhodnega obvestila, zato je njihova uporaba v prod zapletena. S takim IP-naslovom se lahko pove\u017eete z oddaljeno bazo podatkov, ne da bi pri tem navedli vrata. Tako storitev Kubernetes zelo transparentno izvaja preusmeritev vrat.<\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Mappiranje zunanjih storitev\" src=\"\/wp-content\/uploads\/2020\/05\/3f718da15739fd42dc640f44b34c7cab.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nMapping ali usklajevanje zunanjih virov z notranjimi vam omogo\u010da prilagodljivo uporabo teh storitev znotraj klustra v prihodnosti ob minimalnih naporih pri refaktoringu. Prav tako olaj\u0161a upravljanje in daje razumevanje, katerih zunanjih storitev va\u0161a podjetja uporablja. <\/p>\n<p>Nadaljevanje kmalu...<\/p>\n<p><center><div class=\"youtube-placeholder\" data-id=\"fvpq4jqtuZ8\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/fvpq4jqtuZ8\/hqdefault.jpg\" alt=\"Predvajaj video\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><\/p>\n<h3>Malo reklame \ud83d\ude42<\/h3>\n<p>\nHvala \u0161to ostajete s nama. Da li vam se svi\u0111aju na\u0161i \u010dlanci? \u017delite li videti vi\u0161e zanimljivih materijala? Podr\u017eite nas tako \u0161to \u0107ete naru\u010diti ili preporu\u010diti prijateljima, <noindex><a rel=\"nofollow\" href=\"https:\/\/ua-hosting.company\/cloudvps\/nl\">obla\u010dni VPS za programere od $4.99<\/a><\/noindex>, <b>jedinstveni ekvivalent entry-level servera koji smo stvorili za vas:<\/b> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/347386\/\">Sve \u0161to treba da znate o VPS (KVM) E5-2697 v3 (6 jezgara) 10GB DDR4 480GB SSD 1Gbps od $19 ili kako pravilno deliti server?<\/a><\/noindex> (options available with RAID1 and RAID10, up to 24 cores and up to 40GB DDR4).<\/p>\n<p><b>Dell R730xd je dvostruko jeftiniji u Equinix Tier IV data centru u Amsterdamu?<\/b> Only with us <b><noindex><a rel=\"nofollow\" href=\"https:\/\/ua-hosting.company\/serversnl\">2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100TB from $199<\/a><\/noindex> in the Netherlands! <b>Dell R420 \u2014 2x E5-2430 2.2GHz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB \u2014 from $99!<\/b><\/b> Read about how <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/329618\/\">to build a corporate-class infrastructure using Dell R730xd E5-2650 v4 servers costing 9000 euros for pennies?<\/a><\/noindex><br \/>\n<br \/>Izvor: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/503612\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u041e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f Kubernetes \u0441 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e\u043c \u0438\u043c\u0435\u043d \u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0436\u0438\u0437\u043d\u0435\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 Kubernetes \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u0435\u0441\u0442\u043e\u0432 Readiness \u0438 Liveness \u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438 \u043b\u0438\u043c\u0438\u0442\u043e\u0432 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u041a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 Terminate \u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u0445\u043e\u0436\u0438 \u043d\u0430 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u043b\u044e\u0434\u0435\u0439, \u0442\u043e, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b, \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0438\u0440\u0443\u044e\u0449\u0438\u0435 \u0437\u0430 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u043c\u0438 \u0432\u0430\u0448\u0435\u0433\u043e [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":82903,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-82902","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.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes.\" \/>\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\/sl\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-mapping-vneshnih-servisov\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sl_SI\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u041c\u0430\u043f\u043f\u0438\u043d\u0433 \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-mapping-vneshnih-servisov\" \/>\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-26T11:42:27+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-05-26T11:42:27+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\udd47Najbolj\u0161e prakse Kubernetes. Usklajevanje zunanjih storitev | ProHoster","description":"Najbolj\u0161e prakse Kubernetes.","canonical_url":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-mapping-vneshnih-servisov","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sl_SI","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u041c\u0430\u043f\u043f\u0438\u043d\u0433 \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 | ProHoster","og:description":"\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes.","og:url":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-mapping-vneshnih-servisov","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-26T11:42:27+00:00","article:modified_time":"2020-05-26T11:42:27+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"82902","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:29:29","updated":"2022-10-02 08:31:16","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/82902","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/comments?post=82902"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/82902\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media\/82903"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media?parent=82902"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/categories?post=82902"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/tags?post=82902"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}