Definition: Service Mesh, plattformunabhängig und quelloffen

Was ist Istio?

| Autor / Redakteur: Stefan Luber / Florian Karlstetter

Service Mesh mit Istio: effizientes Microservice-Management für verteilte Cloud-native-Umgebungen.
Service Mesh mit Istio: effizientes Microservice-Management für verteilte Cloud-native-Umgebungen. (Bild: gemeinfrei (geralt / pixabay) / Pixabay)

Istio stellt ein offenes, plattformunabhängiges Service Mesh zur Verfügung, mit dem sich die Microservices verteilt arbeitender Cloud-native-Anwendungen komfortabel verwalten lassen. Zu den Kernfunktionen gehören das Traffic Management sowie Sicherheits-, Verbindungs- und Monitoring-Funktionen.

Istio steht für effizientes Microservice-Management für verteilte Cloud-native-Umgebungen Das Wort „Istio“ stammt ursprünglich aus dem Griechischen und bedeutet „Segel“. So handelt es sich bei Istio um eine plattformunabhängige, offene Software, mit der sich ein Service Mesh realisieren lässt. Der Begriff Service Mesh beschreibt dabei ein Netzwerk aus Microservices, das die Grundlage für Cloud-native-Anwendungen bildet. Istio stellt Funktionen wie Traffic Management, Sicherheits-, Verbindungs- und Monitoring-Funktionen zur Verfügung, um Microservices verteilt arbeitender Cloud-native-Anwendungen komfortabel zu verwalten und die Kommunikation zu steuern. Dadurch reduziert sich die Komplexität dieser Umgebungen und Microservice-Architekturen lassen sich effizient und sicher betreiben. Istio geht auf Entwicklungsprojekte der Unternehmen Google, Lyft und IBM zurück, die sich zu einer Kooperation zusammengeschlossen haben. Die Software steht unter Apache License 2.0 und war ursprünglich für die Container-Orchestrierungslösung Kubernetes (K8s) vorgesehen. Die erste Version der Software erschien im Jahr 2018. Die aktuelle Version (Stand Juli 2019) ist Istio 1.1.11. Mittlerweile ist Istio auch mit Lösungen wie Nomad und Consul kompatibel. Unterstützte Kubernetes-Plattformen sind beispielsweise die Amazon Web Services (AWS), die Google Kubernetes Engine oder die IBM Cloud Kubernetes Services (IKS). Istio ist sowohl Cloud-basiert als auch on-premises nutzbar.

Die Motivation für Istio

Moderne Anwendungsarchitekturen arbeiten mehr und mehr mit Cloud- und Container-basierten Microservices. Es entsteht ein komplexes Geflecht aus Services, das die Laufzeitzumgebung für die Anwendungen bereitstellt. Nicht selten bestehen Cloud-native-Applikationen aus einer Sammlung von tausenden Microservices, die auf hybriden Cloud-Strukturen in vielen verschiedenen Containern oder virtuellen Maschinen betrieben werden. Die Verwaltung, Skalierung und Sicherung der vielen Services stellt eine Herausforderung dar und erfordert Tools, mit denen sich die wichtigsten Managementaufgaben komfortabel erledigen lassen. Istio agiert als Service Mesh und bietet einen Rahmen zur Verbindung der verschiedenen Services Cloud-basierter Anwendungen. Es entsteht ein zentral managebares Servicesystem für die verteilten, Container-basierten Dienste. Die Logik muss nicht mehr aufwendig in einzelne Applikationen integriert werden, sondern ist mit Istio direkt nutzbar. Entwickler können sich auf die Business Logik ihrer Anwendung konzentrieren und müssen keine Lösungen für das Management und die Steuerung der Kommunikation der Microservices programmieren. Die Design-Ziele von Istio sind:

  • maximale Transparenz
  • einfache Erweiterbarkeit und Portabilität
  • Plattformunabhängigkeit
  • einheitliche Schnittstellen

Funktionsprinzip und Architektur von Istio

Istio unterteilt das Service Mesh in eine Data Plane und eine Control Plane. Innerhalb der Control Plane werden Proxies und Mixer konfiguriert und verwaltet. Aufgabe ist es, Verkehr zu routen, Policies zu überwachen und Telemetriedaten zu sammeln. Die Data Plane besteht aus einer Sammlung intelligenter Proxies (Envoy Proxies), die den Netzwerkverkehr zwischen den Microservices kontrollieren. Wichtige Architekturelemente von Istio sind:

  • Envoy Proxy
  • Mixer
  • Pilot
  • Citadel
  • Galley

Ein Envoy Proxy schaltet sich in die Kommunikation der Microservices ein. Er lässt sich auch nachträglich noch in Anwendungen integrieren, ohne die ursprünglichen Microservices zu verändern. Aufgaben des Envoy Proxies sind unter anderem Load Balancing, dynamisches Service Discovery, TLS-Terminierung, Health Checks oder Fault Injection. Die Microservices bekommen einen Envoy Proxy zugeteilt, der in der Regel direkt im Container des jeweiligen Services agiert. Sämtliche Kommunikation mit dem Service erfolgt über den Proxy. Die Proxies sind in der Lage, Antwortzeiten zu messen und die Anzahl der Requests oder die Menge der übertragenen Daten zu loggen. Der Envoy Proxy kommuniziert darüber hinaus mit dem Mixer und liefert diesem die gewonnenen Daten. Der Mixer sorgt für die Plattformunabhängigkeit des Service Meshs und sendet die Telemetriedaten an die Monitoring-Systeme. Der Pilot versorgt den Envoy Proxy mit den für das Service Discovery benötigten Informationen. Drüber hinaus konvertiert er High-Level-Routing-Vorgaben in durch den Envoy Proxy interpretierbare Konfigurationen und stellt sie diesem zur Verfügung. Citadel ermöglicht eine starke Service- und User-Authentifizierung. Bei Galley handelt es sich um die Istio-Komponente, die Konfigurationen aufnimmt, validiert, verarbeitet und verteilt. Sie sorgt in Bezug auf die Konfiguration für die Isolation der Istio-Komponenten von der zugrundeliegenden Plattform wie Kubernetes.

Die wichtigsten Funktionen von Istio

Für das Service Mesh bietet Istio ein Vielzahl an Funktionen. Zu den wichtigsten Funktionen zählt das Traffic Management. Istio entkoppelt die Verwaltung des Verkehrs von der Infrastruktur. Anfragen lassen sich durch das intelligente Zusammenspiel zwischen Envoy Proxies und Pilot dynamisch verteilen und Lasten ausgleichen. Weitere wichtige Kernfunktionen sind das Logging und das Monitoring. Istio sammelt alle für den Betrieb der Services benötigten Logging-, Tracing- und Monitoring-Informationen des Netzwerks. Die Leistung und der Verkehrsfluss der einzelnen Services lassen sich überwachen und Probleme schnell erkennen. Für einen vollständigen Überblick über das Service Mesh stehen benutzerdefinierte Dashboards zur Verfügung. Die Sicherheitsfunktionen von Istio stellen eine starke Authentifizierung der Services und Clients sicher. Die Authentifizierungsrichtlinien unterstützen eine rollenbasierte Zugriffssteuerung für die verschiedenen Ebenen des Service Meshs. Es lassen sich sowohl die Dienste untereinander als auch Dienste und Clients autorisieren. Ebenfalls integriert ist ein automatisiertes Schlüsselverwaltungssystem, das die Generierung, Zuteilung und Sperrung von Zertifikaten oder Schlüsseln organisiert. Entwickler müssen keine eigenen Sicherheits- oder Verschlüsselungsmechanismen implementieren, sondern können sich auf die Programmierung der Sicherheit auf Anwendungsebene konzentrieren.

Die Plattformunabhängigkeit von Istio

Eine der Designprinzipien von Istio ist die Plattformunabhängigkeit. Istio lässt sich in verschiedenen Umgebungen Cloud-basiert oder on-premises einsetzen. Unterstützt werden unter anderem Kubernetes, Mesos, Nomad und Consul sowie verschiedene Plattformen der Cloud Anbieter wie Amazon, Google oder IBM. Die Dienste des Service Meshs können in einzelnen virtuellen Maschinen, Containern oder auf dedizierten Servern betrieben werden.

Die Vorteile durch den Einsatz von Istio im Service Mesh kurz zusammengefasst

  • Schaffung einer ausfallsicheren und fehlertoleranten Microservice-Architektur
  • nahtlose Verbindung unterschiedlicher Microservices unabhängig von den verwendeten Plattformen und Anbietern
  • höhere Transparenz durch ein umfassendes und einheitliches Monitoring
  • dynamische Verkehrssteuerung und Load Balancing im Service Mesh
  • starke Authentifizierungsmechanismen für Services, Clients und User
  • rollenbasierte Zugriffssteuerung
  • Durchsetzung der Policies

Kommentare werden geladen....

Kommentar zu diesem Artikel abgeben

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Anforderungen an Managed Services und IT-Sourcing

Marcin Zukowski, Netzlink, im Interview

Anforderungen an Managed Services und IT-Sourcing

Die Anforderungen an die IT-Infrastruktur wachsen seit Jahren stetig an. So sind die Aufgaben, die die Infrastrukturen heute zu bewältigen haben, nicht nur mehr geworden, sondern auch deutlich komplexer. Über aktuelle Entwicklungen und welche Herausforderungen damit einher gehen, darüber hat sich Marcin Zukowski von Netzlink Gedanken gemacht. lesen

Google stellt Anthos breiter auf

Management und Migration für VMs, Multi-Cloud mit Azure und AWS

Google stellt Anthos breiter auf

Google macht den Multi-Cloud-Support für Anthos allgemein verfügbar. Zudem sollen Nutzer mit der Plattform nun Policies für VMs verwalten und Anwendungen leichter als bisher auf Anthos migrieren. lesen

Neu gestrickt: Hybrid-Cloud-Technik von Red Hat

Orchestrierung, Automatisierung, Multicloudisierung

Neu gestrickt: Hybrid-Cloud-Technik von Red Hat

Auf dem „Red Hat Summit 2020“, der vergangene Woche virtuell stattfand, hat die Open-Source-Company einige Neuerungen für sein Hybrid-Cloud-Portfolio eingeführt, mit dabei: „Openshift-Virtualisierung“ und „Advanced Cluster Management for Kubernetes“. Der Anspruch: Die Technik und Tools ermöglichen Unternehmen „alles zu entwickeln und überall einzusetzen“, vom Edge bis hin zu Hybrid- und Multi-Cloud-Umgebungen. lesen

So verändert DevOps die Unternehmen

Kommentar zum State of Application Services (SOAS) Report

So verändert DevOps die Unternehmen

DevOps wird zunehmend zum neuen Standard in Unternehmen. Doch mit den integrierten Prozessen für IT-Betrieb und Entwicklung verändern sich auch Strukturen und Abläufe sowie der Umgang mit Anwendungen. lesen

Was ist Envoy?

Definition: Service- und Anwendungs-Proxy für Cloud-native Anwendungen

Was ist Envoy?

Envoy ist ein Graduated Project der Cloud Native Computing Foundation. Es handelt sich um einen Service-Proxy auf der Anwendungsebene (Layer 7), der speziell für Cloud-native Anwendungen und Microservices konzipiert ist. Er bietet unter anderem auch Loadbalancing-Funktionen und erlaubt die Realisierung eines Service Meshs. lesen

Das Rechenzentrum im Irgendwo

Cloud Native Computing Foundation Survey 2019

Das Rechenzentrum im Irgendwo

Zum siebten Mal legt die Cloud Native Computing Foundation (CNCF) ihre Studie „CNCF Survey“ vor. Die Umfrage für das Jahr 2019 zeigt nach Ansicht der Autoren deutlich, dass Cloud Native Computing mittlerweile im Mainstream angekommen ist. lesen

Integrierte Lösungen vom Code zum Kunden

Ein Jahr F5 und NGINX

Integrierte Lösungen vom Code zum Kunden

Durch die Übernahme von NGINX kann F5 Networks nun einheitliche Angebote vom App- und Web-Server über API Gateways, Load Balancer, Security und DNS bis zum Customer Delivery Network (CDN) unterbreiten. Die Bereitstellung von Apps in Multi Cloud-Umgebungen über den gesamten Lebenszyklus hinweg soll künftig durch den NGINX Controller 3.x einfacher werden. Er ist das jüngste Resultat des Zusammenschlusses. lesen

Was ist Google Anthos?

Die Hybrid-Cloud-Plattform von Google

Was ist Google Anthos?

Die Tatsache, dass manche Anwendungen nicht mit jeder Systemumgebung kompatibel sind, führt zur zunehmenden Komplexität von IT-Strukturen. Google hat mit der Cloud-Lösung „Anthos" eine universelle Web-Plattform für die Verwaltung von Hybrid und Multi-Cloud-Umgebungen herausgebracht, die hier näher vorgestellt wird. lesen

1525 Eingaben für Programmplanung der CNCF

KubeCon + CloudNativeCon Europe 2020 in Amsterdam

1525 Eingaben für Programmplanung der CNCF

Das Programm für die KubeCon + CloudNativeCon Europe 2020 steht, wie die Cloud Native Computing Foundation, kurz CNCF, zu Beginn der Woche bekanntgab. Demnach wird die Konferenz über 240 Vorträge, Keynotes, Blitz-Talks und Breakout Sessions umfassen. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 46052901 / Definitionen)