|
Dieses Dokument wurde mithilfe automatisierter maschineller Übersetzungstechnologie übersetzt. Wir bemühen uns um korrekte Übersetzungen, übernehmen jedoch keine Gewähr für die Vollständigkeit, Richtigkeit oder Zuverlässigkeit der übersetzten Inhalte. Im Falle von Abweichungen ist die englische Originalversion maßgebend und stellt den verbindlichen Text dar. |
Istio
|
Rancher-Istio ist seit Rancher v2.12.0 ausgelaufen; wenden Sie sich an die SUSE Application Collection Version von Istio für verbesserte Sicherheit (in SUSE Rancher Prime-Abonnements enthalten). Detaillierte Informationen finden Sie in dieser Ankündigung. |
Istio ist ein Open-Source-Tool, das es DevOps-Teams erleichtert, den Datenverkehr innerhalb eines komplexen Netzwerks von Mikrodiensten zu beobachten, zu sichern, zu steuern und zu beheben.
Wenn sich ein Netzwerk von Mikrodiensten ändert und wächst, können die Interaktionen zwischen ihnen zunehmend schwierig zu verwalten und zu verstehen werden. In einer solchen Situation ist es nützlich, ein Service-Mesh als separate Infrastrukturebene zu haben. Das Service-Mesh von Istio ermöglicht es Ihnen, den Datenverkehr zwischen Mikrodiensten zu steuern, ohne die Mikrodienste direkt zu ändern.
Unsere Integration von Istio ist so konzipiert, dass ein Rancher-Betreiber, wie ein Administrator oder Clusterbesitzer, Istio an ein Team von Entwicklern bereitstellen kann. Dann können Entwickler Istio verwenden, um Sicherheitsrichtlinien durchzusetzen, Probleme zu beheben oder den Datenverkehr für grüne/blaue Bereitstellungen, Canary-Bereitstellungen oder A/B-Tests zu verwalten.
Dieses Kernel-Service-Mesh bietet Funktionen, die unter anderem Folgendes umfassen:
-
Datenverkehrsmanagement wie Eingangs- und Ausgangs-Routing, Circuit-Breaking, Spiegelung.
-
Sicherheit mit Ressourcen zur Authentifizierung und Autorisierung von Datenverkehr und Benutzern, mTLS eingeschlossen.
-
Einblick von Protokollen, Metriken und verteilten Datenverkehrsflüssen.
Nach Einrichten von Istio können Sie die Funktionalität der Steuerungsebene von Istio über die Rancher-Benutzeroberfläche, kubectl, oder istioctl nutzen.
Istio muss von einem cluster-admin eingerichtet werden, bevor es in einem Projekt verwendet werden kann.
Was gibt es Neues in Rancher v2.5
Die Gesamtarchitektur von Istio wurde vereinfacht. Eine einzelne Komponente, Istiod, wurde durch die Kombination von Pilot, Citadel, Galley und dem Sidecar-Injektor erstellt. Die Funktionalität des Node Agents wurde ebenfalls in den istio-agent integriert.
Addons, die zuvor von Istio installiert wurden (cert-manager, Grafana, Jaeger, Kiali, Prometheus, Zipkin), müssen jetzt separat installiert werden. Istio wird die Installation von Integrationen unterstützen, die aus dem Istio-Projekt stammen, und die Kompatibilität mit Integrationen gewährleisten, die nicht aus dem Istio-Projekt stammen.
Eine Prometheus-Integration wird weiterhin über eine Installation von Rancher Monitoring oder durch die Installation Ihres eigenen Prometheus-Operators verfügbar sein. Das Istio-Chart von Rancher wird auch standardmäßig Kiali installieren, um sicherzustellen, dass Sie ein vollständiges Bild Ihrer Mikrodienste sofort erhalten.
Istio hat sich von Helm als Installationsmethode für Istio entfernt und bietet jetzt die Installation über die istioctl-Binärdatei oder den Istio-Operator an. Um die einfachste Interaktion mit Istio zu gewährleisten, wird das Istio von Rancher ein Helm-Chart beibehalten, das die istioctl-Binärdatei verwendet, um Ihre Istio-Installation zu verwalten.
Dieses Helm-Chart wird über die Apps und den Marktplatz in der Benutzeroberfläche verfügbar sein. Ein Benutzer, der Zugriff auf den Katalog der Rancher-Charts hat, muss Istio einrichten, bevor es im Projekt verwendet werden kann.
Werkzeuge, die mit Istio gebündelt sind
Unser Istio Installer umschließt die Befehle der istioctl-Binärdatei in einem praktischen Helm-Chart, einschließlich einer Overlay-Dateioption, um komplexe Anpassungen zu ermöglichen.
Es enthält auch Folgendes:
Kiali
Kiali ist ein umfassendes Visualisierungshilfsmittel, das zur grafischen Darstellung des Datenverkehrsflusses im Service Mesh verwendet wird. Es ermöglicht Ihnen zu sehen, wie sie verbunden sind, einschließlich der Verkehrsraten und Latenzen zwischen ihnen.
Sie können die Gesundheit des Service Mesh überprüfen oder detailliert sehen, welche eingehenden und ausgehenden Anfragen an eine einzelne Komponente gerichtet sind.
|
Für Istio-Installationen |
Jaeger
Unser Istio-Installer enthält eine Kurzanleitung, All-in-One-Installation von Jaeger,, einem Tool, das zum Tracing verteilter Systeme verwendet wird.
Beachten Sie, dass dies keine produktionsqualifizierte Bereitstellung von Jaeger ist. Diese Bereitstellung verwendet eine In-Memory-Speicherkomponente, während für die Produktion eine persistente Speicherkomponente empfohlen wird. Für weitere Informationen zu der Bereitstellungsstrategie, die Sie möglicherweise benötigen, siehe die Jaeger-Dokumentation.
Voraussetzungen
Bevor Sie Istio aktivieren, empfehlen wir, dass Sie bestätigen, dass Ihre Rancher-Worker-Knoten genügend CPU und Arbeitsspeicher haben, um alle Komponenten von Istio auszuführen.
Wenn Sie Istio in einem RKE2-Cluster installieren, sind einige zusätzliche Schritte erforderlich. Für Details siehe diesen Abschnitt.
Einrichtungshandbuch
Siehe die setup guide für Anweisungen, wie Sie Istio einrichten und in einem Projekt verwenden können.
Istio entfernen
Um Istio-Komponenten aus einem Cluster, Namespace oder einer Arbeitslast zu entfernen, verweisen Sie auf den Abschnitt über Istio entfernen.
Zugriff auf Visualisierungen
Standardmäßig haben nur Cluster-Administratoren Zugriff auf Kiali. Für Anweisungen, wie Sie Admin-, Bearbeitungs- oder Ansichtsrollen den Zugriff gewähren können, siehe diesen Abschnitt.
|
Für Istio-Installationen der Version |
Nachdem Istio in einem Cluster eingerichtet ist, sind Grafana, Prometheus und Kiali in der Rancher-Benutzeroberfläche verfügbar.
Um auf die Grafana- und Prometheus-Visualisierungen zuzugreifen,
-
Klicken Sie in der oberen linken Ecke auf ☰ > Clusterverwaltung.
-
Gehen Sie auf der Clusters-Seite zu dem Cluster, in dem Sie die Visualisierungen sehen möchten, und klicken Sie auf Erforschen.
-
Klicken Sie in der linken Navigationsleiste auf Monitoring.
-
Klicken Sie auf Grafana oder eines der anderen Dashboards.
Um auf die Kiali-Visualisierung zuzugreifen,
-
Klicken Sie in der oberen linken Ecke auf ☰ > Clusterverwaltung.
-
Gehen Sie auf der Seite Clusters zu dem Cluster, in dem Sie Kiali sehen möchten, und klicken Sie auf Explore.
-
Klicken Sie in der linken Navigationsleiste auf Istio.
-
Klicken Sie auf Kiali. Von hier aus können Sie auf die Registerkarte Traffic Graph oder die Registerkarte Traffic Metrics zugreifen, um Netzwerkvisualisierungen und Metriken zu sehen.
Standardmäßig werden alle Namespaces von Prometheus erfasst und Daten für Kiali-Diagramme bereitgestellt. Verweisen Sie auf selector/scrape config setup, wenn Sie eine andere Konfiguration für das Scraping von Prometheus-Daten verwenden möchten.
Ihr Zugriff auf die Visualisierungen hängt von Ihrer Rolle ab. Grafana und Prometheus sind nur für cluster-admin Rollen verfügbar. Die Kiali-Benutzeroberfläche ist standardmäßig nur für cluster-admin verfügbar, aber cluster-admin kann anderen Rollen den Zugriff ermöglichen, indem die Istio values.yaml bearbeitet wird.
Architektur
Istio installiert ein Service-Mesh, das Envoy Sidecar-Proxys verwendet, um den Datenverkehr zu jedem Workload abzufangen. Diese Sidecars fangen die Kommunikation zwischen den Diensten ab und verwalten sie, was eine feingranulare Beobachtung und Kontrolle über den Datenverkehr innerhalb des Clusters ermöglicht.
Nur Workloads, die das Istio-Sidecar injiziert haben, können von Istio verfolgt und kontrolliert werden.
Wenn ein Namespace Istio aktiviert hat, erhalten neue Workloads, die im Namespace bereitgestellt werden, automatisch das Istio-Sidecar. Sie müssen Istio manuell in bereits vorhandenen Workloads aktivieren.
Für weitere Informationen zum Istio-Sidecar verweisen Sie auf die Dokumentation zur Istio-Sidecar-Injektion und für weitere Informationen zur Architektur von Istio verweisen Sie auf die Dokumentation zur Istio-Architektur.
Mehrere Ingresses
Standardmäßig hat jeder von Rancher bereitgestellte Cluster einen NGINX-Ingress-Controller, der den Datenverkehr in den Cluster ermöglicht. Istio installiert standardmäßig ein Ingress-Gateway im istio-system Namespace. Das Ergebnis ist, dass Ihr Cluster zwei Ingresses haben wird.
Zusätzliche Istio Ingress-Gateways können über die Overlay-Datei aktiviert werden.
Egress-Unterstützung
Standardmäßig ist das Egress-Gateway deaktiviert, kann jedoch bei der Installation oder beim Upgrade über die values.yaml oder über die Overlay-Datei aktiviert werden.
Zusätzliche Schritte zur Installation von Istio auf einem SUSE® Rancher Prime: RKE2 Cluster
Um Istio auf einem RKE2-Cluster zu installieren, folgen Sie den Schritten in diesem Abschnitt.
Upgrade von Istio in einer Air-Gapped-Umgebung
Die Istio-Pod-Sicherheitsrichtlinie ist jetzt standardmäßig aktiviert. Ein neuer Wert, installer.releaseMirror.enabled, wurde zum rancher-istio-Chart hinzugefügt, um den Server zu aktivieren und zu deaktivieren, der Air-Gapped-Upgrades unterstützt. Beachten Sie, dass installer.releaseMirror.enabled standardmäßig auf false gesetzt ist. Sie können diesen Wert nach Bedarf bei der Installation oder beim Upgrade festlegen. Führen Sie die folgenden Schritte aus:
-
Stellen Sie eine Air-Gapped-Rancher-Instanz und einen Air-Gapped-benutzerdefinierten Cluster in der Rancher-Benutzeroberfläche bereit.
-
Installieren Sie Monitoring im Cluster: Cluster Explorer -> Apps & Marketplace -> Charts -> Monitoring.
-
Ziehen Sie alle erforderlichen Bilder für Istio in das private Repository, das Sie in der Air-Gapped-Umgebung verwenden werden.
-
Installieren Sie Istio im Cluster: Cluster Explorer -> Apps & Marketplace -> Charts -> Istio.
-
Führen Sie ein Upgrade der Istio-Installation durch.
|
Falls Sie es noch nicht getan haben, setzen Sie |