{"id":82913,"date":"2020-05-26T13:42:32","date_gmt":"2020-05-26T11:42:32","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-korrektnoe-otklyuchenie-terminate"},"modified":"2020-05-26T13:42:32","modified_gmt":"2020-05-26T11:42:32","slug":"luchshie-praktiki-kubernetes-korrektnoe-otklyuchenie-terminate","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-korrektnoe-otklyuchenie-terminate","title":{"rendered":"Najbolj\u0161e prakse Kubernetes. Pravilno ustavljanje Terminate","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><\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Pravilno ustavljanje Terminate\" src=\"\/wp-content\/uploads\/2020\/05\/4c3f50a0968007bbfa99d167b43d0a5a.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPomemben vidik pri delovanju razdeljenih sistemov je obravnava napak. Kubernetes pri tem pomaga z uporabo kontrolerjev, ki spremljajo stanje va\u0161ega sistema in ponovno za\u017eenejo storitve, ki niso ve\u010d aktivne. Vendar pa lahko Kubernetes prisilno ustavi va\u0161e aplikacije, da zagotoviti splo\u0161no \u017eivljenjsko sposobnost sistema. V tej seriji bomo preu\u010dili, kako lahko pomagate Kubernetesu, da svoje delo opravlja u\u010dinkoviteje in zmanj\u0161a \u010das nedelovanja aplikacij. <noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Pred za\u010detkom uporabe kontejnerjev so ve\u010dina aplikacij delovale na virtualnih ali fizi\u010dnih strojih. Ko je aplikacija odpovedala ali zamrznila, je bilo potrebno veliko \u010dasa, da se je opravilo nalogo in znova nalo\u017eilo program. V najslab\u0161em primeru je nekdo moral to te\u017eavo re\u0161evati ro\u010dno pono\u010di, ob neprimernem \u010dasu. \u010ce je pomembno nalogo izvajalo le 1-2 delovne naprave, je bila taka napaka povsem neprimerna. <br \/>\nZato so namesto ro\u010dnega ponovnega zagonitve za\u010deli uporabljati spremljanje na ravni procesov za samodejni ponovni zagon aplikacije v primeru njenega nepri\u010dakovanega konca. \u010ce je program odpovedal, proces spremljanja zajame exit-kodo in ponovno za\u017eene stre\u017enik. Z pojavom takih sistemov, kot je Kubernetes, je ta na\u010din odzivanja na napake sistema enostavno integriran v infrastrukturo.<\/p>\n<p>Kubernetes uporablja zanko dogodkov \u00bbopazovanje \u2013 bele\u017eenje razlik \u2013 izvajanje dejanj\u00ab, da zagotovi, da sredstva ohranjajo delovanje na poti iz kontejnerjev do samih vozli\u0161\u010d.<\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Pravilno ustavljanje Terminate\" src=\"\/wp-content\/uploads\/2020\/05\/fe255d31824d2e570492a882ea7e54c7.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTo pomeni, da vam ve\u010d ni treba ro\u010dno zagnati spremljanja procesov. \u010ce vir ne opravi Health Check preverjanja, Kubernetes preprosto samodejno zagotovi zamenjavo. Pri tem Kubernetes po\u010dne veliko ve\u010d, kot le spremlja napake va\u0161ih aplikacij. Lahko ustvari ve\u010d kopij aplikacije za delovanje na ve\u010d strojih, posodobi aplikacijo ali hkrati za\u017eene ve\u010d razli\u010dic va\u0161e aplikacije.<br \/>\nObstaja ve\u010d razlogov, zakaj lahko Kubernetes prekine delovanje popolnoma zdravega kontejnerja. Na primer, \u010de posodabljate svoje razporejanje, Kubernetes po\u010dasi ustavi stare poda in hkrati za\u017eene nove. \u010ce izklopite vozli\u0161\u010de, Kubernetes prekine delovanje vseh podov v tem vozli\u0161\u010du. Na koncu, \u010de na vozli\u0161\u010du zmanjka virov, Kubernetes izklopi vse pode, da sprosti te vire.<\/p>\n<p>Zato je zelo pomembno, da va\u0161e aplikacije prenehajo delovati z minimalnim vplivom na kon\u010dnega uporabnika in minimalnim \u010dasom obnove. To pomeni, da mora ob izklopu shraniti vse podatke, ki jih je treba shraniti, zapreti vse omre\u017ene povezave, zaklju\u010diti preostala dela in imeti \u010das za opravljanje drugih nujnih nalog.<\/p>\n<p>V praksi to pomeni, da mora va\u0161a aplikacija znati obdelati sporo\u010dilo SIGTERM - signal za prekinitev procesa, ki je privzeti signal za ukaz kill v Unix dru\u017eini operacijskih sistemov. Ko prejme to sporo\u010dilo, se mora aplikacija izklopiti.<\/p>\n<p>Ko se Kubernetes odlo\u010di za zaklju\u010ditev poda, se izvede cela vrsta dogodkov. Poglejmo vsak korak, ki ga podjetje Kubernetes izvede ob zaklju\u010dku delovanja kontejnerja ali poda.<\/p>\n<p>Predpostavimo, da \u017eelimo zaklju\u010diti enega od podov. V tem trenutku ne bo ve\u010d prejemal novega prometa - delujo\u010di kontejnerji v podu ne bodo prizadeti, vendar bo ves nov promet blokiran.<\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Pravilno ustavljanje Terminate\" src=\"\/wp-content\/uploads\/2020\/05\/d89c31e39bfdc16e5a8db3b4e22f8dca.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPoglejmo hiter hro\u0161\u010d preStop - to je posebna ukazna ali HTTP zahteva, ki se po\u0161lje kontejnerjem v podu. \u010ce se va\u0161a aplikacija ob prejemu SIGTERM ne izklopi pravilno, lahko uporabite preStop za pravilno zaklju\u010ditev delovanja. <\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Pravilno ustavljanje Terminate\" src=\"\/wp-content\/uploads\/2020\/05\/9d45a209daf3b5698266481680b45da2.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nVe\u010dina programov se ob prejemu signala SIGTERM pravilno izklopi, vendar \u010de uporabljate tujo kodo ali kak\u0161en sistem, ki ga ne morete popolnoma nadzorovati, je hro\u0161\u010d preStop odli\u010den na\u010din za izvedbo elegantnega izklopa brez spreminjanja aplikacije.<\/p>\n<p>Po izvedbi tega hooka bo Kubernetes poslal signal SIGTERM kontejnerjem v podu, kar jih bo obvestilo, da bodo kmalu izklopljeni. Ko prejme ta signal, se bo va\u0161 koda preusmerila na postopek izklopa. Ta postopek lahko vklju\u010duje ustavitev dolgoro\u010dnih povezav, kot so povezave z zbirko podatkov ali WebSocket tokovi, ter shranjevanje trenutnega stanja in podobno.<\/p>\n<p>Tudi \u010de uporabljate preStop hook, je zelo pomembno preveriti, kaj se dogaja z va\u0161o aplikacijo, ko ji po\u0161ljete signal SIGTERM, kako se obna\u0161a, da dogodki ali spremembe v delovanju sistema, ki jih povzro\u010di izklop poda, ne postanejo nepri\u010dakovani.<\/p>\n<p>V tem trenutku, preden sprejme nadaljnje ukrepe, bo Kubernetes \u010dakal v okviru navedenega \u010dasa, imenovanega terminationGracePeriodSecond, ali obdobje za pravilno izklop ob prejemu signala SIGTERM.<\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Pravilno ustavljanje Terminate\" src=\"\/wp-content\/uploads\/2020\/05\/6f74959ff74252bb1ad2dd9c011c177c.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPrivzeto to obdobje traja 30 sekund. Pomembno je omeniti, da poteka vzporedno s preStop hook in signalom SIGTERM. Kubernetes ne bo \u010dakal, dokler se ne zaklju\u010di preStop hook in SIGTERM \u2014 \u010de va\u0161a aplikacija kon\u010da delovanje pred iztekom obdobja TerminationGracePeriod, bo Kubernetes takoj pre\u0161el na naslednji korak. Zato preverite, da vrednost tega obdobja v sekundah ni manj\u0161a od \u010dasa, potrebnega za pravilen izklop poda, in \u010de presega 30s, pove\u010dajte obdobje na potrebno vrednost v YAML. V tem primeru zna\u0161a 60s.<\/p>\n<p>In kon\u010dno, zadnji korak \u2014 \u010de kontejnerji \u0161e vedno delujejo po izteku terminationGracePeriod, bodo poslali signal SIGKILL in bodo prisilno odstranjeni. V tem trenutku bo Kubernetes prav tako izbrisal vse druge objekte poda.<\/p>\n<p><img decoding=\"async\" alt=\"Najbolj\u0161e prakse Kubernetes. Pravilno ustavljanje Terminate\" src=\"\/wp-content\/uploads\/2020\/05\/cb71079ffd166c955474738e5af6301a.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKubernetes ustavlja pode iz mnogih razlogov, zato se prepri\u010dajte, da bo va\u0161a aplikacija vedno pravilno zaklju\u010dena, da zagotovite stabilno delovanje storitve. <\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/503612\/\">Najbolj\u0161e prakse Kubernetes. Mappiranje zunanjih storitev <\/a><\/noindex><\/p>\n<p><center><div class=\"youtube-placeholder\" data-id=\"Z_l_kE1MDTc\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/Z_l_kE1MDTc\/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\/503488\/\">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 \u0412\u0430\u0436\u043d\u044b\u043c \u043c\u043e\u043c\u0435\u043d\u0442\u043e\u043c \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0441\u0431\u043e\u0435\u0432. Kubernetes \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0432 \u044d\u0442\u043e\u043c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043b\u0435\u0434\u044f\u0442 \u0437\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u043c \u0432\u0430\u0448\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":82914,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-82913","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-korrektnoe-otklyuchenie-terminate\" \/>\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. \u041a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 Terminate | 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-korrektnoe-otklyuchenie-terminate\" \/>\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:32+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-05-26T11:42:32+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. Pravilno izklopanje Terminate | ProHoster","description":"Najbolj\u0161e prakse Kubernetes.","canonical_url":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-korrektnoe-otklyuchenie-terminate","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. \u041a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 Terminate | 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-korrektnoe-otklyuchenie-terminate","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:32+00:00","article:modified_time":"2020-05-26T11:42:32+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"82913","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:28:37","updated":"2022-09-29 17:02:01","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\/82913","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=82913"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/82913\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media\/82914"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media?parent=82913"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/categories?post=82913"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/tags?post=82913"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}