Service-Mesh: Kuma und Kong Mesh 2.2 öffnen sich für OpenTelemetry

Erweiterte Funktionen für das Rate-Limiting sowie für Logging und Tracing zeichnen Version 2.2 von Kong Mesh und Kuma aus.

In Pocket speichern vorlesen Druckansicht
Imaginative,Visual,Of,Smart,Digital,City,With,Globalization,Abstract,Graphic

(Bild: Blue Planet Studio/Shutterstock.com)

Lesezeit: 2 Min.

Das Softwareunternehmen Kong Inc. hat sein Open-Source-Service-Mesh Kuma sowie das darauf aufbauende Enterprise-Produkt Kong Mesh auf Version 2.2 aktualisiert. Laut Ankündigung wurden dabei von Anwenderinnen und Anwendern schon lange gewünschte Features integriert, darunter eine Policy für das Global Rate Limiting sowie die Option, einen OpenTelemetry-Kollektor für Traces und Zugriffs-Logs zu nutzen.

Das neue Minor Release liefert neben Fehlerbereinigungen auch einige Verbesserungen, die vor allem zu mehr Flexibilität, Skalierbarkeit und Sicherheit beim Einsatz des Service-Meshs beitragen sollen. Darüber hinaus legt das Kong-Entwicklungsteam aber auch neue Funktionen wie etwa eine Policy für das Global Rate Limiting vor. Bisher standen nur Richtlinien für ein RateLimit zur Verfügung, die über den Inbound Listener auf einzelne lokale Services beschränkt waren. In Version 2.2 lassen sich nun auch übergreifende Begrenzungen definieren, die Aufrufe an alle kombinierten Instanzen eines Dienstes beschränken – beispielsweise in Multizonen-Installationen mit externen Redis-Stores. Details zu Einsatz und Konfiguration der MeshGlobalRateLimit-Policy, die als Betafunktion noch dem Kong Mesh vorbehalten ist, lassen sich der Dokumentation entnehmen.

Auf tatkräftige Unterstützung aus der Community geht laut Ankündigung eine weitere wichtige Neuerung für die MeshAccessLog- und MeshTrace-Richtlinien zurück: Für beide lässt sich ab sofort ein OpenTelemetry-Kollektor als Ziel definieren, sobald ein OpenTelemetry-Backend nach dem Muster im folgenden Listing eingerichtet wurde.

apiVersion: kuma.io/v1alpha1
kind: MeshAccessLog
metadata:
  name: default
  namespace: kong-mesh-system
  labels:
    kuma.io/mesh: default
spec:
  targetRef:
    kind: Mesh
  from:
    - targetRef:
        kind: Mesh
      default:
        backends:
          - file:
              path: /tmp/access.log
              format:
                plain: '[%START_TIME%]'
          - openTelemetry:
              endpoint: otel-collector:4317
              attributes:
                - key: "start_time"
                  value: "%START_TIME%"

Im Hinblick auf Hochverfügbarkeit und mehr Resilienz in Kubernetes-Deployments können Anwenderinnen und Anwender von Kong Mesh und Kuma ab Version 2.2 nicht mehr nur etcd als Persistenzebene für Policy- und Konfigurations-Objekte einbinden, sondern alternativ auch eine externe Postgres-Datenbank verwenden. Fortgeführt hat das Kong-Team zudem die schrittweise Überarbeitung des UI des Service-Meshs, insbesondere die Navigationsseitenleiste, sowie den Bereich Role-Based Access Control, in dem nun vorhandene Rollen und deren Bindungen einfacher zu erkennen sein sollen.

Weiterführende Informationen finden sich im Blogeintrag auf der Kong-Website sowie im Changelog von Kong Mesh.

(map)