{"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\/de\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-mapping-vneshnih-servisov","title":{"rendered":"Best Practices f\u00fcr Kubernetes. Mapping externer Dienste","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502052\/\">Best Practices f\u00fcr Kubernetes. Erstellung kleiner Container<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502320\/\">Best Practices f\u00fcr Kubernetes. Organisation von Kubernetes mit Namespaces<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502430\/\">Best Practices f\u00fcr Kubernetes. \u00dcberpr\u00fcfung der Betriebsf\u00e4higkeit von Kubernetes mit Readiness- und Liveness-Tests<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502614\/\">Best Practices f\u00fcr Kubernetes. Konfiguration von Ressourcenanforderungen und -grenzen<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/503488\/\">Best Practices f\u00fcr Kubernetes. Richtiges Beenden von Terminate<\/a><\/noindex><\/p>\n<p>Wenn Sie wie die meisten Menschen sind, verwenden Sie wahrscheinlich Ressourcen, die au\u00dferhalb Ihres Clusters arbeiten. M\u00f6glicherweise nutzen Sie die API von Taleo, um Textnachrichten zu senden, oder analysieren Bilder mit der Google Cloud Vision API.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Wenn Sie denselben Endpoint \u2014 den Serveranfragepunkt \u2014 in all Ihren Umgebungen verwenden und nicht planen, Ihre Server nach Kubernetes zu migrieren, ist es v\u00f6llig in Ordnung, den Service-Endpoint direkt in Ihrem Code zu haben. Es gibt jedoch viele andere Entwicklungsszenarien. In dieser Serie \"Kubernetes Best Practices\" erfahren Sie, wie Sie die eingebauten Mechanismen von Kubernetes nutzen k\u00f6nnen, um Dienste sowohl innerhalb als auch au\u00dferhalb des Clusters zu entdecken. <\/p>\n<p>Ein weit verbreitetes Beispiel f\u00fcr einen externen Dienst ist eine Datenbank, die au\u00dferhalb des Kubernetes-Clusters betrieben wird. Im Gegensatz zu cloudbasierten Datenbanken wie Google Cloud Data Store oder Google Cloud Spanner, die einen einzigen Endpoint f\u00fcr alle Zugriffsarten verwenden, haben die meisten Datenbanken separate Endpoints f\u00fcr unterschiedliche Situationen.<br \/>\nBeste Praktiken f\u00fcr den Einsatz traditioneller Datenbanken wie MySQL und MongoDB sehen in der Regel vor, dass Sie sich mit verschiedenen Komponenten f\u00fcr unterschiedliche Umgebungen verbinden. Sie k\u00f6nnten eine leistungsstarke Maschine f\u00fcr Produktionsdaten und eine kleinere f\u00fcr Testumgebungen haben. Jede von ihnen h\u00e4tte ihre eigene IP-Adresse oder Domainnamen, aber Sie m\u00f6chten sicherlich Ihren Code nicht \u00e4ndern, wenn Sie von einer Umgebung zur anderen wechseln. Anstatt diese Adressen fest im Code zu verankern, k\u00f6nnen Sie den in Kubernetes integrierten Dienst zur Entdeckung von externen Services basierend auf DNS verwenden \u2013 genau wie f\u00fcr native Kubernetes-Services.<\/p>\n<p><img decoding=\"async\" alt=\"Best Practices f\u00fcr Kubernetes. Mapping externer Dienste\" src=\"\/wp-content\/uploads\/2020\/05\/b64f2f5857f32d2d927c8dad1e4b1e36.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAngenommen, Sie betreiben eine MongoDB-Datenbank in Google Compute Engine. Sie werden in dieser hybriden Welt gefangen sein, bis es Ihnen gelingt, sie in ein Cluster zu migrieren.<\/p>\n<p>Gl\u00fccklicherweise k\u00f6nnen Sie statische Kubernetes-Services nutzen, um sich das Leben ein wenig zu erleichtern. In diesem Beispiel habe ich einen MongoDB-Server mit Google Cloud Launcher erstellt. Da er im selben Netzwerk (oder VPC des Kubernetes-Clusters) erstellt wurde, erfolgt der Zugriff \u00fcber eine leistungsstarke interne IP-Adresse.<\/p>\n<p><img decoding=\"async\" alt=\"Best Practices f\u00fcr Kubernetes. Mapping externer Dienste\" src=\"\/wp-content\/uploads\/2020\/05\/cafe19eabc8ac144d27bd06f6c44ac5f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nIn Google Cloud ist dies die Standardeinstellung, sodass Sie nichts konfigurieren m\u00fcssen. Jetzt, da eine IP-Adresse vorhanden ist, besteht der erste Schritt darin, einen Dienst zu erstellen. Es ist zu beachten, dass es f\u00fcr diesen Dienst keine Pod-Selektoren gibt. Das bedeutet, dass wir einen Dienst erstellt haben, der nicht wei\u00df, wohin der Traffic gesendet werden soll. Damit k\u00f6nnen Sie manuell ein Endpoint-Objekt erstellen, das den Traffic von diesem Dienst empfangen wird. <\/p>\n<p><img decoding=\"async\" alt=\"Best Practices f\u00fcr Kubernetes. Mapping externer Dienste\" src=\"\/wp-content\/uploads\/2020\/05\/4f3643f3ce2f2d3f5b207429bb269058.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDas folgende Codebeispiel zeigt, dass die Endpunkte die IP-Adresse f\u00fcr die Datenbank definieren, wobei dasselbe Name 'mongo' verwendet wird wie der Dienst.<\/p>\n<p><img decoding=\"async\" alt=\"Best Practices f\u00fcr Kubernetes. Mapping externer Dienste\" src=\"\/wp-content\/uploads\/2020\/05\/dbba2655a9e2295cb8a7de4c97eddc8f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKubernetes wird alle IP-Adressen verwenden, um die Endpunkte zu finden, als w\u00e4ren sie normale Kubernetes-Pods, sodass Sie jetzt auf die Datenbank \u00fcber eine einfache Verbindungszeichenfolge mit dem oben angegebenen Namen mongodb:\/\/mongo zugreifen k\u00f6nnen. Dabei ist es \u00fcberhaupt nicht erforderlich, IP-Adressen in Ihrem Code zu verwenden.<\/p>\n<p>Sollten sich in Zukunft die IP-Adressen \u00e4ndern, k\u00f6nnen Sie einfach die Endpunkte mit der neuen IP-Adresse aktualisieren, und Ihre Anwendungen m\u00fcssen nicht auf andere Weise ge\u00e4ndert werden.<\/p>\n<p>Wenn Sie eine Datenbank verwenden, die auf einem externen Host gehostet wird, haben die Eigent\u00fcmer des Hosts Ihnen h\u00f6chstwahrscheinlich eine einheitliche Ressourcen-ID (URI) zur Verf\u00fcgung gestellt, um sich zu verbinden. Wenn Ihnen eine IP-Adresse gegeben wurde, k\u00f6nnen Sie einfach die vorherige Methode verwenden. In diesem Beispiel habe ich zwei MongoDB-Datenbanken, die auf dem Host mLab gehostet sind.<\/p>\n<p><img decoding=\"async\" alt=\"Best Practices f\u00fcr Kubernetes. Mapping externer Dienste\" src=\"\/wp-content\/uploads\/2020\/05\/088a578041c3d7c924c77f0a2e67e323.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEine davon ist die Entwicklerdatenbank, und die andere die Produktionsdatenbank. Die Verbindungszeichenfolgen f\u00fcr diese Datenbanken sehen wie folgt aus \u2013 mLab stellt Ihnen eine dynamische URI und einen dynamischen Port zur Verf\u00fcgung. Wie Sie sehen k\u00f6nnen, sind sie unterschiedlich.<\/p>\n<p><img decoding=\"async\" alt=\"Best Practices f\u00fcr Kubernetes. Mapping externer Dienste\" src=\"\/wp-content\/uploads\/2020\/05\/41d2e22371e85b7e794a9df7b2db515d.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nUm davon abzustrahieren, verwenden wir Kubernetes und verbinden uns mit der Entwicklerdatenbank. Sie k\u00f6nnen einen externen Service-Namen in Kubernetes erstellen, der Ihnen einen statischen Service bereitstellt, der den Verkehr an den externen Service weiterleitet. <\/p>\n<p><img decoding=\"async\" alt=\"Best Practices f\u00fcr Kubernetes. Mapping externer Dienste\" src=\"\/wp-content\/uploads\/2020\/05\/ed07c1e9818a6641b29d5c941bdf68cb.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDieser Service f\u00fchrt eine einfache CNAME-Weiterleitung auf Kernel-Ebene durch, was minimale Auswirkungen auf die Leistung hat. Dadurch k\u00f6nnen Sie eine einfachere Verbindungszeichenfolge verwenden.<\/p>\n<p><img decoding=\"async\" alt=\"Best Practices f\u00fcr Kubernetes. Mapping externer Dienste\" src=\"\/wp-content\/uploads\/2020\/05\/ee5442aec9c1a9d19f78bd92d44a97ec.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDa jedoch der externe Name eine CNAME-Umleitung verwendet, kann er die Portumleitung nicht durchf\u00fchren. Daher ist diese L\u00f6sung nur f\u00fcr statische Ports anwendbar und kann nicht mit dynamischen Ports verwendet werden. Der kostenlose mLab Free Tier bietet standardm\u00e4\u00dfig dem Benutzer eine dynamische Portnummer, und das k\u00f6nnen Sie nicht \u00e4ndern. Das bedeutet, dass Sie f\u00fcr dev und prod unterschiedliche Verbindungsstrings ben\u00f6tigen. Das Problem ist, dass dabei die Portnummer hartcodiert werden muss. Wie bringt man also die Portumleitung zum Laufen?<\/p>\n<p>Der erste Schritt besteht darin, die IP-Adresse aus der URI zu erhalten. Wenn Sie den Befehl nslookup ausf\u00fchren, den Hostnamen verwenden oder die URI anpingen, k\u00f6nnen Sie die IP-Adresse der Datenbank erhalten. Wenn der Dienst Ihnen mehrere IP-Adressen zur\u00fcckgibt, k\u00f6nnen Sie alle diese Adressen in den Endpunkten des Objekts verwenden.<\/p>\n<p><img decoding=\"async\" alt=\"Best Practices f\u00fcr Kubernetes. Mapping externer Dienste\" src=\"\/wp-content\/uploads\/2020\/05\/6cd63eb3c8bd733afbd7fe791ef7b8f4.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEs ist wichtig, daran zu denken, dass sich die IP-Adressen der URI ohne Vorank\u00fcndigung \u00e4ndern k\u00f6nnen, weshalb es riskant ist, sie in prod zu verwenden. Mit einer solchen IP-Adresse k\u00f6nnen Sie sich mit der entfernten Datenbank verbinden, ohne dabei den Port anzugeben. Damit f\u00fchrt der Kubernetes-Service die Portumleitung recht transparent aus.<\/p>\n<p><img decoding=\"async\" alt=\"Best Practices f\u00fcr Kubernetes. Mapping externer Dienste\" src=\"\/wp-content\/uploads\/2020\/05\/3f718da15739fd42dc640f44b34c7cab.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDas Mapping oder die Zuordnung externer Ressourcen zu internen erm\u00f6glicht es Ihnen, diese Dienste in Zukunft flexibel innerhalb des Clusters zu nutzen und gleichzeitig den Aufwand f\u00fcr Refactoring zu minimieren. Es erleichtert auch das Management und gibt Ihnen Einblick in die externen Dienste, die Ihr Unternehmen nutzt. <\/p>\n<p>Die Fortsetzung kommt in K\u00fcrze...<\/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=\"Video abspielen\" 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>Ein wenig Werbung \ud83d\ude42<\/h3>\n<p>\nDanke, dass Sie bei uns bleiben. Gefallen Ihnen unsere Artikel? M\u00f6chten Sie mehr interessante Inhalte sehen? Unterst\u00fctzen Sie uns, indem Sie eine Bestellung aufgeben oder uns Ihren Freunden empfehlen. <noindex><a rel=\"nofollow\" href=\"https:\/\/ua-hosting.company\/cloudvps\/nl\">Cloud-VPS f\u00fcr Entwickler ab 4,99 $<\/a><\/noindex>, <b>eine einzigartige Alternative zu Einsteiger-Servern, die wir f\u00fcr Sie entwickelt haben:<\/b> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/347386\/\">Alles \u00fcber VPS (KVM) E5-2697 v3 (6 Kerne) 10GB DDR4 480GB SSD 1Gbps ab 19 $ oder wie man einen Server richtig teilt?<\/a><\/noindex> (Verf\u00fcgbar sind Optionen mit RAID1 und RAID10, bis zu 24 Kerne und bis zu 40GB DDR4).<\/p>\n<p><b>Dell R730xd im Equinix Tier IV Rechenzentrum in Amsterdam zum halben Preis?<\/b> Nur bei uns <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 100 TB ab 199 $<\/a><\/noindex> in den Niederlanden! <b>Dell R420 \u2014 2x E5-2430 2.2GHz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB \u2014 ab 99 $!<\/b><\/b> Lesen Sie dar\u00fcber <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/329618\/\">Wie man eine Unternehmenskosten-Infrastruktur mit Dell R730xd E5-2650 v4-Servern f\u00fcr ein paar Euro aufbaut?<\/a><\/noindex><br \/>\n<br \/>Quelle: <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 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\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\" \/>\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\/de\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-mapping-vneshnih-servisov\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\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. \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\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/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\udd47Beste Praktiken f\u00fcr Kubernetes. Mapping externer Dienste | ProHoster","description":"Beste Praktiken f\u00fcr Kubernetes. Erstellung kleiner Container Beste Praktiken f\u00fcr Kubernetes. Organisation von Kubernetes mit Namespaces Beste Praktiken f\u00fcr Kubernetes. \u00dcberwachung der Lebensf\u00e4higkeit von Kubernetes mit Readiness- und Liveness-Tests Beste Praktiken f\u00fcr Kubernetes. Konfiguration von Ressourcenanfragen und -limits Beste Praktiken f\u00fcr Kubernetes. Korrektes Herunterfahren mit Terminate Wenn Sie wie die meisten Menschen sind, nutzen Sie wahrscheinlich Ressourcen, die au\u00dferhalb Ihres","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-mapping-vneshnih-servisov","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","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. \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","og:url":"https:\/\/prohoster.info\/de\/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"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/82902","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=82902"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/82902\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/82903"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=82902"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=82902"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=82902"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}