{"id":31173,"date":"2019-10-31T21:39:53","date_gmt":"2019-10-31T18:39:53","guid":{"rendered":"https:\/\/prohoster.info\/blog\/obzor-i-sravnenie-kontrollerov-ingress-dlya-kubernetes\/"},"modified":"2019-10-31T21:39:53","modified_gmt":"2019-10-31T18:39:53","slug":"obzor-i-sravnenie-kontrollerov-ingress-dlya-kubernetes","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/obzor-i-sravnenie-kontrollerov-ingress-dlya-kubernetes","title":{"rendered":"\u00dcberblick und Vergleich von Ingress-Controllern f\u00fcr Kubernetes","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"\u00dcberblick und Vergleich von Ingress-Controllern f\u00fcr Kubernetes\" src=\"\/wp-content\/uploads\/2019\/04\/3e6d3882a8f5a96a257fab4daaa230f2.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nBeim Start eines Kubernetes-Clusters f\u00fcr eine spezifische Anwendung ist es wichtig, die Anforderungen zu verstehen, die die Anwendung sowie das Gesch\u00e4ft und die Entwickler an diese Ressource stellen. Mit diesen Informationen kann man mit der architektonischen Entscheidung beginnen und insbesondere den passenden Ingress-Controller ausw\u00e4hlen, von denen es mittlerweile eine Vielzahl gibt. Um einen grundlegenden \u00dcberblick \u00fcber die verf\u00fcgbaren Optionen zu erhalten, ohne zahlreiche Artikel\/Dokumentationen und \u00c4hnliches durchforsten zu m\u00fcssen, haben wir diesen \u00dcberblick erstellt, der die wichtigsten (produktionsbereiten) Ingress-Controller umfasst.<\/p>\n<p>Wir hoffen, dass er den Kollegen bei der Auswahl der architektonischen L\u00f6sung hilft \u2013 zumindest als Ausgangspunkt f\u00fcr detailliertere Informationen und praktische Experimente dient. Zuvor haben wir \u00e4hnliche Materialien im Netz untersucht und erstaunlicherweise kein einziges umfassendes und vor allem strukturiertes Review gefunden. Lassen Sie uns also diese L\u00fccke schlie\u00dfen!<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Kriterien<\/h2>\n<p>\nUm \u00fcberhaupt einen sinnvollen Vergleich anstellen zu k\u00f6nnen, ist es wichtig, nicht nur das Fachgebiet zu verstehen, sondern auch eine spezifische Liste von Kriterien zu haben, die die Richtung der Untersuchung vorgeben. Ohne den Anspruch, alle m\u00f6glichen Anwendungsf\u00e4lle von Ingress\/Kubernetes zu analysieren, haben wir versucht, die wichtigsten Anforderungen an die Controller herauszustellen \u2014 seien Sie darauf vorbereitet, dass Sie alle spezifischen Besonderheiten in jedem Fall separat untersuchen m\u00fcssen.<\/p>\n<p>Ich beginne jedoch mit Merkmalen, die so vertraut geworden sind, dass sie in allen L\u00f6sungen implementiert werden und daher nicht in Betracht gezogen werden:<\/p>\n<ul>\n<li> dynamisches Service-Discovery;<\/li>\n<li> SSL-Terminierung;<\/li>\n<li> Arbeiten mit Websockets.<\/li>\n<\/ul>\n<p>\nNun zu den Vergleichspunkten:<\/p>\n<h3>Unterst\u00fctzte Protokolle<\/h3>\n<p>\nEines der grundlegendsten Kriterien f\u00fcr die Auswahl. Ihre Software k\u00f6nnte nicht im Standard-HTTP arbeiten oder die gleichzeitige Verarbeitung mehrerer Protokolle erfordern. Wenn Ihr Fall nicht standardisiert ist, sollten Sie diesen Faktor unbedingt ber\u00fccksichtigen, damit Sie das Cluster sp\u00e4ter nicht neu konfigurieren m\u00fcssen. Bei allen Controllern variiert die Liste der unterst\u00fctzten Protokolle.<\/p>\n<h3>Software im Hintergrund<\/h3>\n<p>\nEs gibt mehrere Arten von Anwendungen, auf denen der Controller basiert. Zu den beliebtesten geh\u00f6ren nginx, traefik, haproxy und envoy. Im Allgemeinen hat dies m\u00f6glicherweise keinen gro\u00dfen Einfluss darauf, wie der Datenverkehr empfangen und \u00fcbertragen wird, aber es ist immer n\u00fctzlich, die potenziellen Nuancen und Besonderheiten des \u201eUnter der Haube\u201c zu kennen.<\/p>\n<h3>Traffic-Routing<\/h3>\n<p>\nWorauf kann man basierend entscheiden, wohin der Datenverkehr in einen bestimmten Service geleitet wird? Normalerweise sind das Host und Pfad, aber es gibt auch zus\u00e4tzliche M\u00f6glichkeiten.<\/p>\n<h3>Namespace innerhalb des Clusters<\/h3>\n<p>\nEin Namespace bietet die M\u00f6glichkeit, Ressourcen in Kubernetes logisch zu gliedern (zum Beispiel in Stage, Produktion usw.). Es gibt Ingress-Controller, die separat in jedem Namespace installiert werden m\u00fcssen (und dann den Verkehr <i>nur<\/i> in den Pods dieses Raums). Es gibt jedoch viele (und die bilden die klare Mehrheit), die global im gesamten Cluster arbeiten \u2013 der Traffic wird an jeden Pod des Clusters geleitet, unabh\u00e4ngig vom Namensraum.<\/p>\n<h3>Test f\u00fcr Upstreams<\/h3>\n<p>\nWie wird sichergestellt, dass der Verkehr an gesunde Instanzen von Anwendungen oder Diensten weitergeleitet wird? Es gibt Optionen mit aktiven und passiven Pr\u00fcfungen, erneuten Versuchen (Retries) und Circuit Breakers. <i>(weitere Informationen finden Sie beispielsweise in <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/438426\/\">dem Artikel \u00fcber Istio<\/a><\/noindex>)<\/i>, eigene Implementierungen von Gesundheitspr\u00fcfungen (custom health checks) usw. Dies ist ein sehr wichtiger Parameter, wenn Sie hohe Anforderungen an die Verf\u00fcgbarkeit und an das zeitnahe Herausnehmen ausgefallener Dienste aus der Lastverteilung haben.<\/p>\n<h3>Lastverteilungsalgorithmen<\/h3>\n<p>\nEs gibt viele Optionen: von traditionellen <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Round-robin_DNS\">Round-Robin<\/a><\/noindex> bis hin zu exotischen wie <noindex><a rel=\"nofollow\" href=\"http:\/\/www.loadbalancer.org\/blog\/load-balancing-windows-terminal-server-haproxy-and-rdp-cookies\/\">RDP-Cookie<\/a><\/noindex>, sowie spezielle Optionen wie <noindex><a rel=\"nofollow\" href=\"https:\/\/access.redhat.com\/solutions\/900933\">Sticky Sessions<\/a><\/noindex>.<\/p>\n<h3>Authentifizierung<\/h3>\n<p>\nWelche Authentifizierungsschemata unterst\u00fctzt der Controller? Basic, Digest, OAuth, External-Auth \u2013 ich denke, diese Optionen sollten vertraut sein. Dies ist ein wichtiges Kriterium, wenn viele Kan\u00e4le f\u00fcr Entwickler (und\/oder einfach gesch\u00fctzte) verwendet werden, auf die \u00fcber Ingress zugegriffen wird. <\/p>\n<h3>Trafficverteilung<\/h3>\n<p>\nUnterst\u00fctzt der Controller g\u00e4ngige Mechanismen zur Trafficverteilung, wie Canary-Deployments, A\/B-Tests, Traffic-Mirroring\/Shadowing? Dies ist ein wirklich sensibles Thema f\u00fcr Anwendungen, die eine sorgf\u00e4ltige und pr\u00e4zise Steuerung des Traffics f\u00fcr produktives Testen, das Debuggen von Produkfehlern ohne Ausfall (oder mit minimalen Verlusten), Traffic-Analyse usw. ben\u00f6tigen.<\/p>\n<h3>Bezahltes Abonnement<\/h3>\n<p>\nGibt es eine kostenpflichtige Version des Controllers mit erweiterten Funktionen und\/oder technischer Unterst\u00fctzung?<\/p>\n<h3>Grafische Benutzeroberfl\u00e4che (Web UI)<\/h3>\n<p>\nGibt es eine grafische Benutzeroberfl\u00e4che zur Verwaltung der Controller-Konfiguration? Vor allem f\u00fcr die Benutzerfreundlichkeit und\/oder f\u00fcr diejenigen, die \u00c4nderungen an der Ingress-Konfiguration vornehmen m\u00f6chten, aber mit 'rohen' Vorlagen nicht zurechtkommen. Dies k\u00f6nnte n\u00fctzlich sein, wenn Entwickler Experimente mit dem Datenverkehr durchf\u00fchren wollen.<\/p>\n<h3>JWT-Validierung<\/h3>\n<p>\nVorhandensein einer integrierten \u00dcberpr\u00fcfung von JSON-Web-Token zur Autorisierung und Validierung von Benutzern in der Anwendung.<\/p>\n<h3>Anpassungsm\u00f6glichkeiten des Konfigs<\/h3>\n<p>\nErweiterbarkeit der Vorlagen hinsichtlich der Verf\u00fcgbarkeit von Mechanismen, die es erm\u00f6glichen, eigene Direktiven, Flags usw. in die Standardkonfigurationsvorlagen einzuf\u00fcgen.<\/p>\n<h3>Grundlegende Schutzmechanismen gegen DDoS<\/h3>\n<p>\nEinfache Rate-Limit-Algorithmen oder komplexere Varianten zur Filterung von Datenverkehr basierend auf Adressen, Whitelists, L\u00e4ndern usw.<\/p>\n<h3>Anfragenverfolgung<\/h3>\n<p>\n\u00dcberwachungs-, Tracking- und Debugging-M\u00f6glichkeiten f\u00fcr Anfragen von Ingress zu bestimmten Services\/Pods und idealerweise auch zwischen Services\/Pods.<\/p>\n<h3>WAF<\/h3>\n<p>\nSupport <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Web_application_firewall\">Anwendungsfirewall<\/a><\/noindex>.<\/p>\n<h2>Ingress-Controller<\/h2>\n<p>\nDie Liste der Controller wurde basierend auf <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/services-networking\/ingress-controllers\/#additional-controllers\">der offiziellen Kubernetes-Dokumentation<\/a><\/noindex> und <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.google.com\/spreadsheets\/d\/16bxRgpO1H_Bn-5xVZ1WrR_I-0A-GOI6egmhvqqLMOmg\/edit\">dieser Tabelle<\/a><\/noindex>. Einige von ihnen haben wir aufgrund ihrer Spezifit\u00e4t oder geringen Verbreitung (fr\u00fche Entwicklungsphase) aus der \u00dcbersicht ausgeschlossen. Die verbleibenden werden im Folgenden betrachtet. Wir beginnen mit einer allgemeinen Beschreibung der L\u00f6sungen und fahren mit einer zusammenfassenden Tabelle fort.<\/p>\n<h3>Ingress von Kubernetes<\/h3>\n<p>\n<i>Website: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/ingress-nginx\">github.com\/kubernetes\/ingress-nginx<\/a><\/noindex><\/i><br \/>\n<i>Lizenz: Apache 2.0<\/i><\/p>\n<p>Dies ist der offizielle Controller f\u00fcr Kubernetes, der von der Community entwickelt wird. Offensichtlich basierend auf nginx, ist er um eine Vielzahl von Lua-Plugins erg\u00e4nzt, die zur Implementierung zus\u00e4tzlicher Funktionen verwendet werden. Dank der Popularit\u00e4t von nginx und der minimalen Modifikationen bei seiner Verwendung als Controller kann diese Option die einfachste und verst\u00e4ndlichste \u0434\u043b\u044f einen durchschnittlichen Ingenieur (mit Erfahrung im Web) sein.<\/p>\n<h3>Ingress von NGINX Inc<\/h3>\n<p>\n<i>Website: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nginxinc\/kubernetes-ingress\">github.com\/nginxinc\/kubernetes-ingress<\/a><\/noindex><\/i><br \/>\n<i>Lizenz: Apache 2.0<\/i><\/p>\n<p>Ein offizielles Produkt der nginx-Entwickler. Es gibt eine kostenpflichtige Version, die auf <noindex><a rel=\"nofollow\" href=\"https:\/\/www.nginx.com\/products\/nginx\/\">NGINX Plus basiert.<\/a><\/noindex>. Die Hauptidee ist ein hohes Ma\u00df an Stabilit\u00e4t, st\u00e4ndige Abw\u00e4rtskompatibilit\u00e4t, das Fehlen jeglicher externen Module und die angegebene h\u00f6here Geschwindigkeit (im Vergleich zum offiziellen Controller), erreicht durch den Verzicht auf Lua. <\/p>\n<p>Die kostenlose Version ist stark eingeschr\u00e4nkt, selbst im Vergleich zum offiziellen Controller (aufgrund des Fehlens derselben Lua-Module). Die kostenpflichtige Version bietet hingegen eine recht umfangreiche zus\u00e4tzliche Funktionalit\u00e4t: Echtzeitmetriken, JWT-Validierung, aktive Health Checks und mehr. Ein wichtiges Plus gegen\u00fcber NGINX Ingress ist die vollst\u00e4ndige Unterst\u00fctzung f\u00fcr TCP\/UDP-Verkehr (auch in der Community-Version!). Nachteil ist <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nginxinc\/kubernetes-ingress\/issues\/464\">das Fehlen<\/a><\/noindex> die begrenzte Funktionalit\u00e4t zur Lastverteilung, was jedoch 'oberste Priorit\u00e4t f\u00fcr die Entwickler hat', jedoch Zeit f\u00fcr die Implementierung ben\u00f6tigt.<\/p>\n<h3>Kong Ingress<\/h3>\n<p>\n<i>Website: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Kong\/kubernetes-ingress-controller\">github.com\/Kong\/kubernetes-ingress-controller<\/a><\/noindex><\/i><br \/>\n<i>Lizenz: Apache 2.0<\/i><\/p>\n<p>Ein Produkt, das von der Firma Kong Inc. in zwei Varianten entwickelt wird: kommerziell und kostenlos. Basierend auf Nginx, dessen M\u00f6glichkeiten durch eine Vielzahl von Lua-Modulen erweitert werden.<\/p>\n<p>Urspr\u00fcnglich war es auf die Verarbeitung und Weiterleitung von API-Anfragen ausgerichtet, also als API-Gateway, hat sich jedoch mittlerweile zu einem vollwertigen Ingress-Controller entwickelt. Zu den Hauptvorteilen geh\u00f6ren zahlreiche zus\u00e4tzliche Module (auch von Drittanbietern), die sich leicht installieren und konfigurieren lassen und mit denen eine breite Palette an zus\u00e4tzlichen Funktionen realisiert werden kann. Dennoch bieten die integrierten Funktionen bereits viele M\u00f6glichkeiten.<\/p>\n<p>Ein wichtiges Merkmal des Produkts ist die Funktionsweise innerhalb eines einzelnen Kontextes (anstatt cross-namespaced), was ein umstrittenes Thema darstellt: F\u00fcr einige ist es ein Nachteil (man muss Entities f\u00fcr jeden Kontext schaffen), f\u00fcr andere ist es eine n\u00fctzliche Funktion (h\u00f6here Isolationsstufe, da, wenn ein Controller ausf\u00e4llt, das Problem auf nur einen Kontext beschr\u00e4nkt ist).<i>gr\u00f6\u00dften<\/i>Traefik<\/p>\n<h3>github.com\/containous\/traefik<\/h3>\n<p>\n<i>Website: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/containous\/traefik\">Lizenz: MIT<\/a><\/noindex><\/i><br \/>\n<i>Lizenz: MIT<\/i><\/p>\n<p>Ein Proxy, der urspr\u00fcnglich f\u00fcr das Routing von Anfragen f\u00fcr Mikrodienste und deren dynamische Umgebung entwickelt wurde. Daraus ergeben sich viele n\u00fctzliche Funktionen: Konfigurationsaktualisierungen ohne Neustarts, Unterst\u00fctzung einer Vielzahl von Lastverteilungsmethoden, Web-Oberfl\u00e4che, Metriken-Passthrough, Unterst\u00fctzung verschiedener Protokolle, REST API, Canary-Releases und vieles m\u00e1s. Eine erfreuliche Eigenschaft ist auch die integrierte Unterst\u00fctzung von Let's Encrypt-Zertifikaten. Nachteil: Um hohe Verf\u00fcgbarkeit (HA) zu gew\u00e4hrleisten, ben\u00f6tigt der Controller ein eigenes KV-Speicher.<\/p>\n<h3>HAProxy<\/h3>\n<p>\n<i>Website: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/jcmoraisjr\/haproxy-ingress\">github.com\/jcmoraisjr\/haproxy-ingress<\/a><\/noindex><\/i><br \/>\n<i>Lizenz: Apache 2.0<\/i><\/p>\n<p>HAProxy ist seit langem als Proxy und Lastverteiler bekannt. Innerhalb eines Kubernetes-Clusters bietet es ein \"sanftes\" Konfigurationsupdate (ohne Verkehrseinbu\u00dfen), DNS-basiertes Service-Discovery und dynamische Konfiguration \u00fcber API. Besonders hervorzuheben ist die vollst\u00e4ndige Anpassbarkeit der Konfigurationsvorlagen durch die Ersetzung von ConfigMaps sowie die Nutzung der Funktionen der Sprig-Bibliothek. Insgesamt liegt der Schwerpunkt der L\u00f6sung auf hoher Geschwindigkeit, Optimierung und Ressourceneffizienz. Ein Vorteil des Controllers ist die Unterst\u00fctzung einer rekordverd\u00e4chtigen Anzahl von verschiedenen Lastverteilungsverfahren.<\/p>\n<h3>Voyager<\/h3>\n<p>\n<i>Website: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/appscode\/voyager\">github.com\/appscode\/voyager<\/a><\/noindex><\/i><br \/>\n<i>Lizenz: Apache 2.0<\/i><\/p>\n<p>Ein auf HAProxy basierender Controller, der als universelle L\u00f6sung positioniert wird und umfangreiche M\u00f6glichkeiten bei einer Vielzahl von Anbietern unterst\u00fctzt. Es wird die M\u00f6glichkeit geboten, den Datenverkehr auf L7 und L4 auszugleichen, wobei der TCP L4-Datenverkehr insgesamt als eine der Hauptfunktionen der L\u00f6sung bezeichnet werden kann.<\/p>\n<h3>Contour<\/h3>\n<p>\n<i>Website: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/heptio\/contour\">github.com\/heptio\/contour<\/a><\/noindex><\/i><br \/>\n<i>Lizenz: Apache 2.0<\/i><\/p>\n<p>Dieses Konzept basiert nicht nur auf Envoy: Es wurde <i>gemeinsam entwickelt<\/i> mit den Entwicklern dieses beliebten Proxys. Eine wichtige Funktion ist die M\u00f6glichkeit, das Management der Ingress-Ressourcen mithilfe von CRD-Ressourcen IngressRoute zu teilen. F\u00fcr Organisationen mit vielen Entwicklungsteams, die denselben Cluster nutzen, hilft dies, den Datenverkehr in benachbarten Umgebungen maximal abzusichern und sie vor Fehlern bei der \u00c4nderung der Ingress-Ressourcen zu sch\u00fctzen.<\/p>\n<p>Au\u00dferdem wird eine erweiterte Auswahl an Lastverteilungsverfahren angeboten (darunter Anfrage-Spiegelung, automatisierte Wiederholungen, die Begrenzung der Anfrage-Rate und vieles mehr), sowie eine detaillierte \u00dcberwachung des Datenverkehrs und von Ausf\u00e4llen. F\u00fcr einige k\u00f6nnte ein wesentlicher Nachteil das Fehlen von Sticky Sessions sein (obwohl dies m\u00f6glicherweise nicht f\u00fcr alle von Bedeutung ist). <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/heptio\/contour\/issues\/361\">bereits im Gange sind<\/a><\/noindex>).<\/p>\n<h3>Istio Ingress<\/h3>\n<p>\n<i>Website: <noindex><a rel=\"nofollow\" href=\"https:\/\/istio.io\/docs\/tasks\/traffic-management\/ingress\/\">istio.io\/docs\/tasks\/traffic-management\/ingress<\/a><\/noindex><\/i><br \/>\n<i>Lizenz: Apache 2.0<\/i><\/p>\n<p>Eine umfassende Service-Mesh-L\u00f6sung, die nicht nur als Ingress-Controller fungiert, der den eingehenden Datenverkehr von au\u00dfen verwaltet, sondern auch den gesamten Datenverkehr innerhalb des Clusters kontrolliert. \u2018Unter der Haube\u2019 wird Envoy als Sidecar-Proxy f\u00fcr jeden Dienst verwendet. Im Grunde genommen handelt es sich um eine gro\u00dfe Kombination, die \u2018alles kann\u2019, wobei der Hauptgedanke maximale Steuerbarkeit, Erweiterbarkeit, Sicherheit und Transparenz ist. Mit seiner Hilfe k\u00f6nnen Sie die Verkehrsrouting, die Zugriffautorisierung zwischen den Diensten, Lastverteilung, \u00dcberwachung, Canary-Releases und vieles mehr im Detail anpassen. Weitere Informationen \u00fcber Istio finden Sie in einer Reihe von Artikeln.<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/438426\/\">Zur\u00fcck zu Microservices mit Istio<\/a><\/noindex>\u00bb.<\/p>\n<h3>Ambassador<\/h3>\n<p>\n<i>Website: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/datawire\/ambassador\">github.com\/datawire\/ambassador<\/a><\/noindex><\/i><br \/>\n<i>Lizenz: Apache 2.0<\/i><\/p>\n<p>Eine weitere L\u00f6sung, die auf Envoy basiert. Sie bietet sowohl kostenlose als auch kommerzielle Versionen und wird als \u2018vollst\u00e4ndig identisch mit Kubernetes\u2019 positioniert, was entsprechende Vorteile mit sich bringt (enge Integration mit den Methoden und Entit\u00e4ten des K8s-Clusters).<\/p>\n<h2>Vergleichstabelle<\/h2>\n<p>\nDie Kulmination des Artikels ist diese umfangreiche Tabelle:<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/ss\/wh\/lj\/sswhljo-rjkms7nadtyewqkxrdi.png\"><img decoding=\"async\" alt=\"\u00dcberblick und Vergleich von Ingress-Controllern f\u00fcr Kubernetes\" src=\"\/wp-content\/uploads\/2019\/04\/3a6c552df6b8b7b6a88517046fa7a275.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>Sie ist klickbar, um eine detailliertere Ansicht zu erm\u00f6glichen, und auch im Format <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.google.com\/spreadsheets\/d\/1xjff2AMS6QXSdh8E8ay_uNMoUa2OLIanCallvkDvAy0\/edit#gid=0\">Google Sheets<\/a><\/noindex>.<\/p>\n<h2>Zusammenfassend<\/h2>\n<p>\nDas Ziel dieses Artikels ist es, ein umfassenderes Verst\u00e4ndnis daf\u00fcr zu bieten, welche Wahl in Ihrem speziellen Fall getroffen werden sollte. Wie so oft hat jeder Controller seine eigenen Vorz\u00fcge und Nachteile...<\/p>\n<p>Der klassische Ingress von Kubernetes \u00fcberzeugt durch seine Verf\u00fcgbarkeit und Zuverl\u00e4ssigkeit sowie durch ein reichhaltiges Funktionsspektrum \u2014 im Regelfall sollte er vollkommen ausreichend sein. Wenn jedoch h\u00f6here Anforderungen an Stabilit\u00e4t, Feature-Level und Entwicklung gestellt werden, lohnt es sich, Ingress mit NGINX Plus und einem kostenpflichtigen Abonnement in Betracht zu ziehen. Kong bietet eine Vielzahl an Plugins (und somit an Funktionen), wobei in der kostenpflichtigen Version sogar noch mehr zur Verf\u00fcgung stehen. Zudem bietet es umfassende M\u00f6glichkeiten, als API Gateway zu fungieren, dynamische Konfigurationen auf der Basis von CRD-Ressourcen durchzuf\u00fchren und grundlegende Kubernetes-Dienste anzubieten.<\/p>\n<p>Wenn Sie hohe Anforderungen an das Load Balancing und die Autorisierungsmethoden haben, sollten Sie sich Traefik und HAProxy ansehen. Diese Open Source-Projekte sind jahrzehntelang erprobt, \u00e4u\u00dferst stabil und entwickeln sich aktiv weiter. Contour ist seit ein paar Jahren auf dem Markt, wirkt jedoch noch ziemlich jung und bietet nur grundlegende Funktionen, die auf Envoy aufgebaut sind. Wenn es Anforderungen an das Vorhandensein\/Einschlie\u00dfen eines WAF vor der Anwendung gibt, sollten Sie auch das Ingress von Kubernetes oder HAProxy in Betracht ziehen.<\/p>\n<p>Die funktional reichhaltigsten Produkte sind die, die auf Envoy basieren, insbesondere Istio. Es stellt eine umfassende L\u00f6sung dar, die \u201ealles kann\u201c, was jedoch auch bedeutet, dass der Einstieg hinsichtlich Konfiguration\/Start\/Administration deutlich komplexer ist als bei anderen L\u00f6sungen.<\/p>\n<p>Wir haben als Standard-Controller Ingress von Kubernetes ausgew\u00e4hlt, der nach wie vor verwendet wird und etwa 80\u201390 % der Anforderungen abdeckt. Er ist zuverl\u00e4ssig, einfach zu konfigurieren und skalierbar. Im Allgemeinen sollte er den meisten Clustern\/Aus Anwendungen gen\u00fcgen, wenn keine spezifischen Anforderungen bestehen. Als weitere universelle und relativ einfache Produkte k\u00f6nnen Traefik und HAProxy empfohlen werden.<\/p>\n<h2>P.S.<\/h2>\n<p>\nLesen Sie auch in unserem Blog:<\/p>\n<ul>\n<li> \u201eZur\u00fcck zu Microservices mit Istio\u201c: <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/438426\/\">Teil 1 (Einf\u00fchrung in die grundlegenden Funktionen)<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/440378\/\">Teil 2 (Routing, Traffic-Management)<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/443668\/\">Teil 3 (Authentifizierung und Autorisierung)<\/a><\/noindex>;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/445596\/\">Kubernetes Tipps &amp; Tricks: Personalisierte Fehlermeldungsseiten in NGINX Ingress<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/427745\/\">Kubernetes Tipps &amp; Tricks: Zugriff auf Entwicklungsplattformen<\/a><\/noindex>\u00bb.<\/li>\n<\/ul>\n<p>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/447180\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 Kubernetes \u0434\u043b\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043a \u044d\u0442\u043e\u043c\u0443 \u0440\u0435\u0441\u0443\u0440\u0441\u0443 \u0441\u0430\u043c\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0431\u0438\u0437\u043d\u0435\u0441 \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438. \u041f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u044d\u0442\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u043a \u043f\u0440\u0438\u043d\u044f\u0442\u0438\u044e \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u043d\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0438, \u0432 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u043a \u0432\u044b\u0431\u043e\u0440\u0443 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e Ingress-\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430, \u043a\u043e\u0438\u0445 \u043d\u0430 \u0441\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u0438\u0439 \u0434\u0435\u043d\u044c \u0443\u0436\u0435 \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e. \u0427\u0442\u043e\u0431\u044b \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0431\u0430\u0437\u043e\u0432\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0431 \u0438\u043c\u0435\u044e\u0449\u0438\u0445\u0441\u044f \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430\u0445 \u0431\u0435\u0437 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0438\u0437\u0443\u0447\u0430\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":23140,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-31173","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=\"\u041f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 Kubernetes \u0434\u043b\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043a \u044d\u0442\u043e\u043c\u0443 \u0440\u0435\u0441\u0443\u0440\u0441\u0443 \u0441\u0430\u043c\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0431\u0438\u0437\u043d\u0435\u0441 \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438. \u041f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u044d\u0442\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u043a \u043f\u0440\u0438\u043d\u044f\u0442\u0438\u044e \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u043d\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0438, \u0432 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u043a \u0432\u044b\u0431\u043e\u0440\u0443 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e Ingress-\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430, \u043a\u043e\u0438\u0445 \u043d\u0430 \u0441\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u0438\u0439 \u0434\u0435\u043d\u044c \u0443\u0436\u0435 \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e. \u0427\u0442\u043e\u0431\u044b \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0431\u0430\u0437\u043e\u0432\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0431 \u0438\u043c\u0435\u044e\u0449\u0438\u0445\u0441\u044f \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430\u0445 \u0431\u0435\u0437 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0438\u0437\u0443\u0447\u0430\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\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\/obzor-i-sravnenie-kontrollerov-ingress-dlya-kubernetes\" \/>\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\u041e\u0431\u0437\u043e\u0440 \u0438 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u0432 Ingress \u0434\u043b\u044f Kubernetes | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 Kubernetes \u0434\u043b\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043a \u044d\u0442\u043e\u043c\u0443 \u0440\u0435\u0441\u0443\u0440\u0441\u0443 \u0441\u0430\u043c\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0431\u0438\u0437\u043d\u0435\u0441 \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438. \u041f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u044d\u0442\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u043a \u043f\u0440\u0438\u043d\u044f\u0442\u0438\u044e \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u043d\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0438, \u0432 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u043a \u0432\u044b\u0431\u043e\u0440\u0443 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e Ingress-\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430, \u043a\u043e\u0438\u0445 \u043d\u0430 \u0441\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u0438\u0439 \u0434\u0435\u043d\u044c \u0443\u0436\u0435 \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e. \u0427\u0442\u043e\u0431\u044b \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0431\u0430\u0437\u043e\u0432\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0431 \u0438\u043c\u0435\u044e\u0449\u0438\u0445\u0441\u044f \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430\u0445 \u0431\u0435\u0437 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0438\u0437\u0443\u0447\u0430\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/obzor-i-sravnenie-kontrollerov-ingress-dlya-kubernetes\" \/>\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=\"2019-10-31T18:39:53+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:39:53+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\udd47\u00dcberblick und Vergleich von Ingress-Controllern f\u00fcr Kubernetes | ProHoster","description":"Beim Start eines Kubernetes-Clusters f\u00fcr eine bestimmte Anwendung sollten die Anforderungen, die die Anwendung, das Gesch\u00e4ft und die Entwickler an diese Ressource stellen, klar sein. Mit diesen Informationen kann man mit der architektonischen Entscheidung fortfahren und insbesondere den spezifischen Ingress-Controller ausw\u00e4hlen, von denen es mittlerweile viele gibt. Um sich ein grundlegendes Bild der verf\u00fcgbaren Optionen zu machen, ohne zahlreiche Studien durchf\u00fchren zu m\u00fcssen,","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/obzor-i-sravnenie-kontrollerov-ingress-dlya-kubernetes","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\u041e\u0431\u0437\u043e\u0440 \u0438 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u0432 Ingress \u0434\u043b\u044f Kubernetes | ProHoster","og:description":"\u041f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 Kubernetes \u0434\u043b\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043a \u044d\u0442\u043e\u043c\u0443 \u0440\u0435\u0441\u0443\u0440\u0441\u0443 \u0441\u0430\u043c\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0431\u0438\u0437\u043d\u0435\u0441 \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438. \u041f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u044d\u0442\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u043a \u043f\u0440\u0438\u043d\u044f\u0442\u0438\u044e \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u043d\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0438, \u0432 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u043a \u0432\u044b\u0431\u043e\u0440\u0443 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e Ingress-\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430, \u043a\u043e\u0438\u0445 \u043d\u0430 \u0441\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u0438\u0439 \u0434\u0435\u043d\u044c \u0443\u0436\u0435 \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e. \u0427\u0442\u043e\u0431\u044b \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0431\u0430\u0437\u043e\u0432\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0431 \u0438\u043c\u0435\u044e\u0449\u0438\u0445\u0441\u044f \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430\u0445 \u0431\u0435\u0437 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0438\u0437\u0443\u0447\u0430\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/obzor-i-sravnenie-kontrollerov-ingress-dlya-kubernetes","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":"2019-10-31T18:39:53+00:00","article:modified_time":"2019-10-31T18:39:53+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"31173","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":"2026-01-21 04:53:04","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:21:32","updated":"2026-01-21 04:53:04"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/31173","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=31173"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/31173\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/23140"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=31173"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=31173"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=31173"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}