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
- coreos/jetcd - Unterstützt v3
- justinsb/jetcd
- cdancy/etcd-rest - Verwendet jclouds für eine vollständige Implementierung der v2-API.
- IBM/etcd-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
- hexfusion/perl-net-etcd - Unterstützt die HTTP-API des gRPC-Gateways für v3
- robn/p5-etcd - Unterstützt v2
Python
- kragniz/python-etcd3 - Client für v3
- jplana/python-etcd - Unterstützt v2
- russellhaering/txetcd - Eine Python-Bibliothek für Twisted
- cholcombe973/autodock - Ein Werkzeug zur Automatisierung von Docker-Bereitstellungen
- lisael/aioetcd - (Python 3.4+) Client mit Asyncio-Koroutinen (Unterstützt v2)
- txaio-etcd - Asynchrone Clientbibliothek ausschließlich für etcd v3, für Twisted (heute) und asyncio (künftig)
- dims/etcd3-gateway - Bibliothek für die etcd-v3-API über das HTTP-gRPC-Gateway
- aioetcd3 - (Python 3.6+) etcd-v3-API für asyncio
- Revolution1/etcd3-py - (python2.7 und python3.5+) Python-Client für etcd v3 über das gRPC-JSON-Gateway
Node
- mixer/etcd3 - Unterstützt v3
- stianeikeland/node-etcd - Unterstützt v2 (mit Coffeescript)
- lavagetto/nodejs-etcd - Unterstützt v2
- deedubs/node-etcd-config - Unterstützt v2
Ruby
- iconara/etcd-rb
- jpfuentes2/etcd-ruby
- ranjib/etcd-ruby - Unterstützt v2
- davissp14/etcdv3-ruby - Unterstützt v3
C
- apache/celix/etcdlib - Unterstützt v2
- jdarcy/etcd-api - Unterstützt v2
- shafreeck/cetcd - Unterstützt v2
C++
- edwardcapriolo/etcdcpp - Unterstützt v2
- suryanathan/etcdcpp - Unterstützt v2 (mit Warteoperationen)
- nokia/etcd-cpp-api - Unterstützt v2
- etcd-cpp-apiv3/etcd-cpp-apiv3 - Unterstützt v3
Clojure
- aterreno/etcd-clojure
- dwwoelfel/cetcd - Unterstützt v2
- rthomas/clj-etcd - Unterstützt v2
Erlang
- marshall-lee/etcd.erl - Unterstützt v2
- zhongwencool/eetcd - Unterstützt v3+ (nur GRPC)
Elixir
- team-telnyx/etcdex - Unterstützt v3+ (nur GRPC)
.NET
- wangjia184/etcdnet - Unterstützt v2
- drusellers/etcetera
- shubhamranjan/dotnet-etcd - Unterstützt v3+ (nur GRPC)
- SimplifyNet/Etcd.Microsoft.Extensions.Configuration
PHP
- linkorb/etcd-php
- activecollab/etcd
- ouqiang/etcd-php - Client für das gRPC-Gateway von v3
Haskell
R
Nim
Tcl
- efrecon/etcd-tcl - Unterstützt v2, außer wait.
Rust
- jimmycuadra/rust-etcd - Unterstützt v2
Gradle
- gradle-etcd-rest-plugin - Unterstützt v2
Lua
- api7/lua-resty-etcd - Unterstützt v2 und v3 (HTTP-API des gRPC-Gateways)
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.