etcd bei Multi-Tennancy und Proxy überarbeitet

Der verteilt angelegte Key-Value Store des unter anderem für die Container-Engine rkt bekannten Unternehmens CoreOS kann in version 3.2 mit einigen Änderungen aufwarten, die nicht nur der Performance zugute kommen.

In Pocket speichern vorlesen Druckansicht
etcd verbessert sich in Sachen Multi-Tennancy und Proxy
Lesezeit: 1 Min.
Von
  • Julia Schmidt

CoreOS' Key-Value-Speicher für verteilte Systeme etcd hat einige Änderungen erhalten und liegt nun in Version 3.2 vor. Verbesserungen sollen unter anderem in Bezug auf die Netzwerkkommunikationsschnittstelle, die Nebenläufigkeit im Backend und verteilte Koordinationsdienste eingearbeitet worden sein. So haben die Entwickler des Projekts unter anderem Client- und Proxy-Namespacing als wiederverwendbare Komponenten umgesetzt. Namespaces helfen dabei, etcd-Schlüssel in separaten Keyspaces zu organisieren und ermöglichen so etwa Multi-Tenancy. Sie sind Sichten auf alle Schlüssel mit einem bestimmten Prefix, wobei letzterer nur vom Standard-etcd-Namespace aus sichtbar ist.

Da beim Ändern eines Schlüssels gleich ein Event an alle interessierten Watcher geschickt wird, kann es bei zu vielen Empfängern passieren, dass die Schreibgeschwindigkeit und die Frequenz, in der Events verschickt werden, absinken. Um das zu vermeiden, können gRPC-Proxies nun über eine Schnittstelle Client-Watcher zusammenfassen, die den gleichen Key oder Bereich beobachten und ihnen Events vom etcd-Server weitervermitteln. So soll Letzterer bis zu einer Million Events pro Sekunde verteilen können.

Darüber hinaus exportiert etcd 3.2 verteilte Shared Locks und sogenannte Elections als RPC-Services, was der Perfomance dienlich sein soll und zudem die Koordination vereinfachen. Eine detailliertere Übersicht der Neuerungen ist auf GitHub zu finden, wo sich auch die aktuelle Version beziehen lässt. (jul)