{"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\/sv\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-mapping-vneshnih-servisov","title":{"rendered":"B\u00e4sta praxis f\u00f6r Kubernetes. Kartl\u00e4ggning av externa tj\u00e4nster","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502052\/\">B\u00e4sta praxis f\u00f6r Kubernetes. Skapa sm\u00e5 containrar<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502320\/\">B\u00e4sta praxis f\u00f6r Kubernetes. Organisera Kubernetes med namnrymder<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502430\/\">B\u00e4sta praxis f\u00f6r Kubernetes. Kontroll av Kubernetes livskraft med hj\u00e4lp av Readiness- och Liveness-tester<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502614\/\">B\u00e4sta praxis f\u00f6r Kubernetes. Inst\u00e4llning av beg\u00e4rningar och resursbegr\u00e4nsningar<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/503488\/\">B\u00e4sta praxis f\u00f6r Kubernetes. Korrekt nedst\u00e4ngning Terminate<\/a><\/noindex><\/p>\n<p>Om du liknar de flesta m\u00e4nniskor anv\u00e4nder du f\u00f6rmodligen resurser som fungerar utanf\u00f6r din kluster. Kanske anv\u00e4nder du Taleo API f\u00f6r att skicka textmeddelanden eller analyserar bilder med Google Cloud Vision API.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Om du anv\u00e4nder samma slutpunkt \u2014 en modul f\u00f6r att ta emot f\u00f6rfr\u00e5gningar p\u00e5 serversidan i alla dina milj\u00f6er och inte planerar att flytta dina servrar till Kubernetes, s\u00e5 \u00e4r det helt okej att ha tj\u00e4nstens slutpunkt direkt i din kod. Men det finns m\u00e5nga andra scenario. I den h\u00e4r serien \"B\u00e4sta praxis f\u00f6r Kubernetes\" f\u00e5r du veta hur du anv\u00e4nder Kubernetes inbyggda mekanismer f\u00f6r att uppt\u00e4cka tj\u00e4nster b\u00e5de inuti och utanf\u00f6r klustret. <\/p>\n<p>Som ett exempel p\u00e5 en vanlig extern tj\u00e4nst kan man n\u00e4mna en databas som fungerar utanf\u00f6r Kubernetes-klustret. I kontrast till s\u00e5dana molndatabaser som Google Cloud Data Store eller Google Cloud Spanner, som anv\u00e4nder en enda slutpunkt f\u00f6r alla slags \u00e5tkomst, har de flesta databaser separata slutpunkter f\u00f6r olika situationer.<br \/>\nEn b\u00e4sta praxis n\u00e4r man anv\u00e4nder traditionella databaser som MySQL och MongoDB \u00e4r vanligtvis att du ansluter till olika komponenter f\u00f6r olika milj\u00f6er. Du kan ha en stor maskin f\u00f6r produktionsdata och en mindre maskin f\u00f6r testmilj\u00f6n. Var och en av dem har sin egen IP-adress eller dom\u00e4nnamn, men du vill s\u00e4kert inte \u00e4ndra din kod n\u00e4r du g\u00e5r fr\u00e5n en milj\u00f6 till en annan. Ist\u00e4llet f\u00f6r att h\u00e5rdkoda dessa adresser kan du anv\u00e4nda den inbyggda DNS-baserade tj\u00e4nstuppt\u00e4ckten i Kubernetes f\u00f6r externa tj\u00e4nster p\u00e5 samma s\u00e4tt som f\u00f6r Kubernetes-nativa tj\u00e4nster.<\/p>\n<p><img decoding=\"async\" alt=\"B\u00e4sta praxis f\u00f6r Kubernetes. Kartl\u00e4ggning av externa tj\u00e4nster\" src=\"\/wp-content\/uploads\/2020\/05\/b64f2f5857f32d2d927c8dad1e4b1e36.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAnta att du k\u00f6r en MongoDB-databas i Google Compute Engine. Du kommer att fastna i denna hybrida v\u00e4rld tills du lyckas flytta den till klustret.<\/p>\n<p>Lyckligtvis kan du anv\u00e4nda statiska Kubernetes-tj\u00e4nster f\u00f6r att g\u00f6ra livet lite enklare. I detta exempel har jag skapat en MongoDB-server med hj\u00e4lp av Google Cloud Launcher. Eftersom den \u00e4r skapad i samma n\u00e4tverk (eller VPC f\u00f6r Kubernetes-klustret), n\u00e5s den via en h\u00f6gpresterande intern IP-adress.<\/p>\n<p><img decoding=\"async\" alt=\"B\u00e4sta praxis f\u00f6r Kubernetes. Kartl\u00e4ggning av externa tj\u00e4nster\" src=\"\/wp-content\/uploads\/2020\/05\/cafe19eabc8ac144d27bd06f6c44ac5f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nI Google Cloud \u00e4r detta standardinst\u00e4llningen, s\u00e5 du beh\u00f6ver inte g\u00f6ra n\u00e5gra inst\u00e4llningar. Nu n\u00e4r det finns en IP-adress \u00e4r n\u00e4sta steg att skapa en tj\u00e4nst. Du kan m\u00e4rka att det inte finns n\u00e5gra podselektorer f\u00f6r denna tj\u00e4nst. Det betyder att vi har skapat en tj\u00e4nst som inte vet vart den ska skicka trafik. Detta kommer att m\u00f6jligg\u00f6ra att manuellt skapa ett endpoint-objekt som kommer att ta emot trafik fr\u00e5n denna tj\u00e4nst. <\/p>\n<p><img decoding=\"async\" alt=\"B\u00e4sta praxis f\u00f6r Kubernetes. Kartl\u00e4ggning av externa tj\u00e4nster\" src=\"\/wp-content\/uploads\/2020\/05\/4f3643f3ce2f2d3f5b207429bb269058.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEtt exempel p\u00e5 kod visar att slutpunkterna definierar IP-adressen f\u00f6r databasen, med samma namn mongo som tj\u00e4nsten.<\/p>\n<p><img decoding=\"async\" alt=\"B\u00e4sta praxis f\u00f6r Kubernetes. Kartl\u00e4ggning av externa tj\u00e4nster\" src=\"\/wp-content\/uploads\/2020\/05\/dbba2655a9e2295cb8a7de4c97eddc8f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKubernetes kommer att anv\u00e4nda alla IP-adresser f\u00f6r att hitta slutpunkterna, som om de vore vanliga Kubernetes-poddar, s\u00e5 nu kan du n\u00e5 databasen med en enkel anslutningsstr\u00e4ng till ovanst\u00e5ende namn mongodb:\/\/mongo. Det finns ingen anledning att anv\u00e4nda IP-adresser i din kod.<\/p>\n<p>Om IP-adresserna \u00e4ndras i framtiden kan du enkelt uppdatera slutpunkterna med den nya IP-adressen, och dina applikationer beh\u00f6ver inte \u00e4ndras p\u00e5 n\u00e5got annat s\u00e4tt.<\/p>\n<p>Om du anv\u00e4nder en databas som ligger p\u00e5 en extern v\u00e4rd, har v\u00e4rdarna troligtvis gett dig en enhetlig resursidentifierare URI f\u00f6r anslutning. S\u00e5 om du har f\u00e5tt en IP-adress kan du helt enkelt anv\u00e4nda den tidigare metoden. Detta exempel visar att jag har tv\u00e5 MongoDB-databaser som ligger p\u00e5 v\u00e4rden mLab.<\/p>\n<p><img decoding=\"async\" alt=\"B\u00e4sta praxis f\u00f6r Kubernetes. Kartl\u00e4ggning av externa tj\u00e4nster\" src=\"\/wp-content\/uploads\/2020\/05\/088a578041c3d7c924c77f0a2e67e323.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDen ena \u00e4r utvecklarens databas och den andra \u00e4r produktionsdatabasen. Anslutningsstr\u00e4ngarna f\u00f6r dessa databaser ser ut som f\u00f6ljer \u2013 mLab ger dig en dynamisk URI och en dynamisk port. Som du ser \u00e4r de olika.<\/p>\n<p><img decoding=\"async\" alt=\"B\u00e4sta praxis f\u00f6r Kubernetes. Kartl\u00e4ggning av externa tj\u00e4nster\" src=\"\/wp-content\/uploads\/2020\/05\/41d2e22371e85b7e794a9df7b2db515d.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nF\u00f6r att abstrahera fr\u00e5n detta, anv\u00e4nder vi Kubernetes och ansluter till utvecklarens databas. Du kan skapa ett externt namn f\u00f6r Kubernetes-tj\u00e4nsten, vilket ger dig en statisk tj\u00e4nst som kommer att omdirigera trafik till den externa tj\u00e4nsten. <\/p>\n<p><img decoding=\"async\" alt=\"B\u00e4sta praxis f\u00f6r Kubernetes. Kartl\u00e4ggning av externa tj\u00e4nster\" src=\"\/wp-content\/uploads\/2020\/05\/ed07c1e9818a6641b29d5c941bdf68cb.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDenna tj\u00e4nst kommer att utf\u00f6ra en enkel CNAME-omdirigering p\u00e5 k\u00e4rnniv\u00e5, vilket har minimal p\u00e5verkan p\u00e5 prestandan. Tack vare detta kan du anv\u00e4nda en enklare anslutningsstr\u00e4ng.<\/p>\n<p><img decoding=\"async\" alt=\"B\u00e4sta praxis f\u00f6r Kubernetes. Kartl\u00e4ggning av externa tj\u00e4nster\" src=\"\/wp-content\/uploads\/2020\/05\/ee5442aec9c1a9d19f78bd92d44a97ec.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nMen eftersom det externa namnet anv\u00e4nder en CNAME-omdirigering kan det inte utf\u00f6ra portomdirigeringar. D\u00e4rf\u00f6r \u00e4r denna l\u00f6sning endast till\u00e4mplig f\u00f6r statiska portar och kan inte anv\u00e4ndas med dynamiska portar. Men den kostnadsfria mLab Free Tier tillhandah\u00e5ller som standard en dynamisk portnummer till anv\u00e4ndaren, och detta kan du inte \u00e4ndra. Det betyder att du beh\u00f6ver olika anslutningsstr\u00e4ngar f\u00f6r dev och prod. Det negativa \u00e4r att portnumret d\u00e5 m\u00e5ste h\u00e5rdkodas. Hur f\u00e5r man d\u00e5 portomdirigering att fungera?<\/p>\n<p>F\u00f6rsta steget \u00e4r att h\u00e4mta IP-adressen fr\u00e5n URI. Om du k\u00f6r kommandot nslookup, hostname eller pingar URI kan du f\u00e5 IP-adressen till databasen. Om tj\u00e4nsten returnerar flera IP-adresser kan alla dessa adresser anv\u00e4ndas i objektets slutpunkter.<\/p>\n<p><img decoding=\"async\" alt=\"B\u00e4sta praxis f\u00f6r Kubernetes. Kartl\u00e4ggning av externa tj\u00e4nster\" src=\"\/wp-content\/uploads\/2020\/05\/6cd63eb3c8bd733afbd7fe791ef7b8f4.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDet \u00e4r viktigt att komma ih\u00e5g att IP-adresserna i URI kan \u00e4ndras utan f\u00f6rvarning, s\u00e5 de \u00e4r ganska riskabla att anv\u00e4nda i prod. Med en s\u00e5dan IP-adress kan du ansluta till en fj\u00e4rrdatabas utan att specificera porten. P\u00e5 s\u00e5 s\u00e4tt utf\u00f6r Kubernetes-tj\u00e4nsten portomdirigering ganska transparens.<\/p>\n<p><img decoding=\"async\" alt=\"B\u00e4sta praxis f\u00f6r Kubernetes. Kartl\u00e4ggning av externa tj\u00e4nster\" src=\"\/wp-content\/uploads\/2020\/05\/3f718da15739fd42dc640f44b34c7cab.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nMapping, eller att matcha externa resurser med interna, ger dig m\u00f6jlighet att flexibelt anv\u00e4nda dessa tj\u00e4nster inom klustret i framtiden, samtidigt som du minimerar anstr\u00e4ngningarna f\u00f6r refaktorering. Det underl\u00e4ttar ocks\u00e5 hantering och ger en f\u00f6rst\u00e5else f\u00f6r vilka externa tj\u00e4nster ditt f\u00f6retag anv\u00e4nder. <\/p>\n<p>Forts\u00e4ttningen kommer snart...<\/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=\"Spela 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>Lite reklam \ud83d\ude42<\/h3>\n<p>\nTack f\u00f6r att ni stannar kvar hos oss. Gillar ni v\u00e5ra artiklar? Vill ni se fler intressanta material? St\u00f6d oss genom att g\u00f6ra en best\u00e4llning eller rekommendera oss till era v\u00e4nner, <noindex><a rel=\"nofollow\" href=\"https:\/\/ua-hosting.company\/cloudvps\/nl\">moln-VPS f\u00f6r utvecklare fr\u00e5n $4,99<\/a><\/noindex>, <b>en unik motsvarighet till entry-level servrar som vi har skapat f\u00f6r er:<\/b> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/347386\/\">Allt om VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps fr\u00e5n $19 eller hur man korrekt delar en server?<\/a><\/noindex> (alternativ med RAID1 och RAID10 finns tillg\u00e4ngliga, upp till 24 k\u00e4rnor och upp till 40GB DDR4).<\/p>\n<p><b>Dell R730xd \u00e4r tv\u00e5 g\u00e5nger billigare i datacentret Equinix Tier IV i Amsterdam?<\/b> Bara hos oss <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 fr\u00e5n $199<\/a><\/noindex> i Nederl\u00e4nderna! <b>Dell R420 \u2014 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB \u2014 fr\u00e5n $99!<\/b><\/b> L\u00e4s om <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/329618\/\">Hur man bygger en f\u00f6retagsinfrastruktur med Dell R730xd E5-2650 v4-servrar som kostar 9000 euro f\u00f6r en br\u00e5kdel?<\/a><\/noindex><br \/>\n<br \/>K\u00e4lla: <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\/sv\/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=\"sv_SE\" \/>\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\/sv\/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\udd47B\u00e4sta praxis f\u00f6r Kubernetes. Mapping av externa tj\u00e4nster | ProHoster","description":"B\u00e4sta praxis f\u00f6r Kubernetes.","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-mapping-vneshnih-servisov","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","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\/sv\/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\/sv\/wp-json\/wp\/v2\/posts\/82902","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=82902"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/82902\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media\/82903"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=82902"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=82902"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=82902"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}