Zum Inhalt springen

Bibliotheken und Werkzeuge

Eine Übersicht über etcd-Werkzeuge und Clientbibliotheken

Die unten aufgeführten Bibliotheken und Werkzeuge von Drittanbietern, die nicht unter https://github.com/etcd-io gehostet werden, werden vom etcd-Team weder getestet noch gepflegt. Es wird empfohlen, sich vor der Verwendung darüber zu informieren und sie zu prüfen.

Werkzeuge

  • etcdctl - Ein Befehlszeilenclient für etcd
  • etcd-dump - Befehlszeilenwerkzeug zum Exportieren und Wiederherstellen von etcd.
  • etcd-fs - FUSE-Dateisystem für etcd
  • etcddir - Echtzeitsynchronisierung zwischen etcd und einem lokalen Verzeichnis. Funktioniert unter Windows und Linux.
  • etcd-browser - Ein webbasierter Schlüssel-Wert-Editor für etcd mit AngularJS
  • etcd-lock - Implementierung von Master-Wahl und verteilten Lese-/Schreibsperren mit etcd – Unterstützt v2
  • etcd-console - Ein webbasierter Schlüssel-Wert-Editor für etcd mit PHP
  • etcd-viewer - Ein in Java geschriebener Editor und Betrachter für den etcd-Schlüssel-Wert-Speicher
  • etcdtool - etcd-Verzeichnisse als JSON/YAML/TOML exportieren, importieren und bearbeiten sowie mit JSON-Schema validieren
  • etcdloadtest - Ein Befehlszeilenclient für Lasttests mit etcd ab Version 3.0.
  • etcd-tui - Eine moderne Terminaloberfläche (TUI) für die Interaktion mit einer etcd-Datenbank. Durch Schlüssel navigieren, Werte anzeigen, Daten filtern und den etcd-Cluster direkt im Terminal verwalten.
  • etcdfinder - Eine sehr schnelle, moderne Weboberfläche (UI) für etcd mit Sofortsuche. Unterstützt sowohl etcd v2 als auch v3.
  • lucas - Ein webbasierter Betrachter für Schlüssel-Wert-Paare in Kubernetes-Clustern mit etcd3.0+.
  • etcd-manager - Eine moderne, effiziente, plattformübergreifende und kostenlose GUI samt Clientwerkzeug für etcd 3.x. Verfügbar für Windows, Linux und Mac.
  • etcd-backup-restore - Werkzeug für regelmäßige inkrementelle Backups und die Wiederherstellung von etcd.
  • etcd-druid - Ein Kubernetes-Operator zum Bereitstellen von etcd-Clustern und zur Verwaltung des laufenden Betriebs (day-2).
  • etcdadm - Ein Befehlszeilenwerkzeug zum Betreiben eines etcd-Clusters.
  • etcd-defrag - Ein einfacher bedienbares und intelligenteres Werkzeug zur Defragmentierung von etcd.
  • etcdhelper - Ein etcd-Plugin für die IntelliJ-Plattform.

Bibliotheken

Die folgenden Abschnitte führen etcd-Clientbibliotheken nach Programmiersprache auf.

Go

  • etcd/client/v3 - Der offiziell gepflegte Go-Client für v3
  • go-etcd - Der veraltete offizielle Client. Kann für ältere etcd-Versionen (<2.0.0) nützlich sein.
  • encWrapper - encWrapper ist ein Verschlüsselungs-Wrapper für die Keys API/KV des etcd-Clients.

Java

Scala

  • maciej/etcd-client - Unterstützt v2. Vollständig asynchroner Client auf Basis von Akka HTTP
  • eiipii/etcdhttpclient - Unterstützt v2. Asynchroner HTTP-Client auf Basis von Netty und Scala Futures.
  • mingchuno/etcd4s - Unterstützt v3 über gRPC, mit optionaler Unterstützung für Akka Stream.

Perl

Python

Node

Ruby

C

C++

Clojure

Erlang

Elixir

.NET

PHP

Haskell

R

Nim

Tcl

Rust

Gradle

Lua

Werkzeuge zur Bereitstellung

Chef-Integrationen

Chef-Cookbooks

BOSH-Releases

Projekte, die etcd verwenden

  • Nutzer von etcd-Raft - Projekte, die die Raft-Bibliotheksimplementierung von etcd verwenden.
  • Apache APISIX - Ein API-Gateway, das etcd als Konfigurationsspeicher verwendet.
  • apache/celix - Eine für C und C++ angepasste Implementierung der OSGi-Spezifikation
  • binocarlos/yoda - etcd + ZeroMQ
  • blox/blox - Eine Sammlung von Open-Source-Projekten zur Containerverwaltung und -orchestrierung mit AWS ECS
  • calavera/active-proxy - Ein mit etcd konfigurierter HTTP-Proxy
  • chain/chain - Software zum Betreiben hochskalierbarer zugangsbeschränkter Blockchain-Netzwerke und zum Herstellen von Verbindungen zu ihnen
  • derekchiang/etcdplus - Eine Sammlung verteilter Synchronisationsprimitive auf Basis von etcd
  • go-discover - Diensterkennung in Go
  • gleicon/goreman - Zweig des Go-Foreman-Klons mit etcd-Unterstützung
  • garethr/hiera-etcd - Puppet-hiera-Backend mit etcd
  • mattn/etcd-vim - Schlüssel mit SET und GET direkt in vim schreiben und lesen
  • mattn/etcdenv - „env“-Shebang mit etcd-Integration
  • kelseyhightower/confd - Lokale Anwendungskonfigurationsdateien mit Vorlagen und Daten aus etcd verwalten
  • configdb - Eine relationale REST-Abstraktion über beliebigen Datenbank-Backends zum Speichern von Konfigurationen und Inventaren.
  • kubernetes/kubernetes - Von Google eingeführte Verwaltung für Containercluster.
  • mailgun/vulcand - HTTP-Proxy, der etcd als Konfigurations-Backend verwendet.
  • duedil-ltd/discodns - Einfacher DNS-Nameserver, der etcd als Datenbank für Namen und Einträge verwendet.
  • skynetservices/skydns - RFC-konformer DNS-Server
  • xordataexchange/crypt - Werte mit GPG-Verschlüsselung sicher in etcd speichern
  • spf13/viper - Go-Konfigurationsbibliothek; liest Werte aus ENV, pflags, Dateien und etcd, mit optionaler Verschlüsselung
  • lytics/metafora - Go-Bibliothek für verteilte Aufgaben
  • ryandoyle/nss-etcd - Ein GNU-libc-NSS-Modul zur Namensauflösung aus etcd.
  • Gru - Orchestrierung mit Go leicht gemacht
  • Vitess - Vitess ist ein Datenbank-Clustersystem zur horizontalen Skalierung von MySQL.
  • lclarkmichalek/etcdhcp - DHCP-Server, der etcd für Persistenz und Koordination verwendet.
  • openstack/networking-vpp - Ein Netzwerktreiber, der die FD.io-VPP-Datenebene programmiert, um virtuelle Cloud-Netzwerke für OpenStack bereitzustellen
  • OpenStack - OpenStack-Dienste können etcd als Basisdienst verwenden.
  • CoreDNS - CoreDNS ist ein DNS-Server mit verketteten Plugins und Teil von CNCF und Kubernetes
  • Uber M3 - M3: Ubers Open-Source-Metrikplattform für Prometheus im großen Maßstab
  • Rook - Speicherorchestrierung für Kubernetes
  • Patroni - Eine Vorlage für PostgreSQL-Hochverfügbarkeit mit ZooKeeper, etcd oder Consul
  • Trillian - Trillian implementiert einen Merkle-Baum, dessen Inhalte aus einer Datenspeicherschicht bereitgestellt werden, um die Skalierung auf extrem große Bäume zu ermöglichen.
  • purpleidea/mgmt - Verteilte, ereignisgesteuerte, parallele Konfigurationsverwaltung der nächsten Generation!
  • Portworx/kvdb - Die interne kvdb zum Speichern der Portworx-Clusterkonfiguration.
  • Apache Pulsar - Apache Pulsar ist eine quelloffene, verteilte Messaging- und Streaming-Plattform für die Cloud.