etcd
Apache ZooKeeper
etcd | Apache ZooKeeper | |
---|---|---|
78 | 39 | |
48,169 | 12,328 | |
0.5% | 0.5% | |
9.9 | 8.4 | |
3 days ago | 9 days ago | |
Go | Java | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
etcd
-
I Stopped Using Kubernetes. Our DevOps Team Is Happier Than
> https://github.com/etcd-io/etcd/issues/9771
> stale bot marked this as completed (by fucking closing it)
Ah, yes, what would a Kubernetes-adjacent project be without a fucking stale bot to close issues willy nilly
-
The Double-Edged Sword of Microservices: Balancing Abstraction and Complexity
Using a service discovery mechanism: A service discovery mechanism, such as etcd or ZooKeeper, can help to manage the complexity of microservices by providing a centralized registry of available services and their instances.
-
Designing a fault-tolerant etcd cluster
etcd is an open-source leader-based distributed key-value datastore designed by a vibrant team of engineers at CoreOS in 2013 and donated to Cloud Native Computing Foundation (CNCF) in 2018. Since then, etcd has grown to be adopted as a datastore in major projects like Kubernetes, CoreDNS, OpenStack, and other relevant tools. etcd is built to be simple, secure, reliable, and fast (benchmarked 10,000 writes/sec), it is written in Go and uses the Raft consensus algorithm to manage a highly-available replicated log. etcd is strongly consistent because it has strict serializability, which means a consistent global ordering of events, to be practical, no client subscribed to an etcd database will ever see a stale database (this isn't the case for NoSQl databases the eventual consistency of NoSQL databases ). Also unlike traditional SQL databases, etcd is distributed in nature, allowing high availability without sacrificing consistency.
-
Announcing Integration between Apache APISIX and open-appsec WAF
ETCD_VERSION='3.5.4' wget https://github.com/etcd-io/etcd/releases/download/v${ETCD_VERSION}/etcd-v${ETCD_VERSION}-linux-amd64.tar.gz tar -xvf etcd-v${ETCD_VERSION}-linux-amd64.tar.gz && cd etcd-v${ETCD_VERSION}-linux-amd64 cp -a etcd etcdctl /usr/bin/ nohup etcd >/tmp/etcd.log 2>&1 & etcd
-
Boost Kubernetes Efficiency: Upgrade to v1.14 in 11 Easy Steps!
ETCD_VER=v3.3.15 # choose either URL GOOGLE_URL=https://storage.googleapis.com/etcd GITHUB_URL=https://github.com/etcd-io/etcd/releases/download DOWNLOAD_URL=${GOOGLE_URL} rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz rm -rf /usr/local/etcd && mkdir -p /usr/local/etcd curl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz -o /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz tar xzvf /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz -C /usr/local/etcd --strip-components=1 rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz /usr/local/etcd/etcd --version ETCDCTL_API=3 /usr/local/etcd/etcdctl version # start etcd server /usr/local/etcd/etcd -name etcd-1 -listen-peer-urls http://10.0.1.1:2380 -listen-client-urls http://10.0.1.1:2379,http://127.0.0.1:2379 -advertise-client-urls http://10.0.1.1:2379,http://127.0.0.1:2379
-
Kubernetes Cluster Architecture
Etcd is a key value store for all cluster data. It is an etcd data store. So, It is highly available, reliable, and distributed.
- Etcd: A Distributed, Reliable Key-Value Store for Critical System Data
-
Jepsen: Jetcd 0.8.2
Look at the code for the watcher client[1] and lease management[2].
[1]: https://github.com/etcd-io/etcd/blob/main/client/v3/watch.go
[2]: https://github.com/etcd-io/etcd/blob/main/client/v3/lease.go
- How to Build Your Own Distributed KV Storage System Using the etcd Raft Library (2)
-
Show HN: WAL Implementation in Golang
Did I miss it or is there no call to os.File.Sync() anywhere?
Since you mention etcd/wal:
https://github.com/etcd-io/etcd/blob/v3.3.27/wal/wal.go#L671
https://github.com/etcd-io/etcd/blob/v3.3.27/pkg/fileutil/sy...
Apache ZooKeeper
-
The Double-Edged Sword of Microservices: Balancing Abstraction and Complexity
Using a service discovery mechanism: A service discovery mechanism, such as etcd or ZooKeeper, can help to manage the complexity of microservices by providing a centralized registry of available services and their instances.
-
Building a Scalable URL Shortener with Node.js (Part 1/2)
Apache ZooKeeper: A centralized service to generate unique IDs and prevent race conditions between instances.
- Capítulo 9 - Consistencia y Consenso
-
On Implementation of Distributed Protocols
Apache ZooKeeper — a distributed coordination, synchronization, and configuration service (written in Java);
-
Easy Guide to Integrating Kafka: Practical Solutions for Managing Blob Data
To use Kafka, we also need to deploy a service that keeps configuration informations such as Zookeeper.
-
Fault Tolerance in Distributed Systems: Strategies and Case Studies
Failure Detection and Recovery It’s not enough to have backup systems. It’s also crucial to detect failures quickly. Modern systems employ monitoring tools and rely on distributed coordination systems such as Zookeeper or etcd to identify faults in real-time: once detected, recovery mechanisms are triggered to restore the service.
-
Reddit System Design/Architecture
zookeeper: is (was?) used for secrets management. it was also used as a basic health check, but has been since been replaced.
-
Analysing Github Stars - Extracting and analyzing data from Github using Apache NiFi®, Apache Kafka® and Apache Druid®
You can install Kafka from https://kafka.apache.org/quickstart. Because Druid and Kafka both use Apache Zookeeper, I opted to use the Zookeeper deployment that comes with Druid, so didn’t start it with Kafka. Once running, I created two topics for me to post the data into, and for Druid to ingest from:
-
Use AWS CloudFormation to create ShardingSphere HA clusters
Please note that we use Zookeeper as the Governance Center.
-
How to choose the right API Gateway
Next, review deployment complexity such as DB-less versus database-backed deployments. For example, Kong does require running Cassandra or Postgres. Apigee requires Cassandra, Zookeeper, and Postgres to run, while other solutions like Express Gateway and Tyk only require Redis. Apache APISIX uses etcd as its data store, it stores and manages routing-related and plugin-related configurations in etcd in the Data Plane.
What are some alternatives?
consul - Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.
Hazelcast - Hazelcast is a unified real-time data platform combining stream processing with a fast data store, allowing customers to act instantly on data-in-motion for real-time insights.
minio - MinIO is a high-performance, S3 compatible object store, open sourced under GNU AGPLv3 license.
kubernetes - Production-Grade Container Scheduling and Management
Vault - A tool for secrets management, encryption as a service, and privileged access management
JGroups - The JGroups project
nsq - A realtime distributed messaging platform
Zuul - Zuul is a gateway service that provides dynamic routing, monitoring, resiliency, security, and more.
traefik - The Cloud Native Application Proxy
Akka - A platform to build and run apps that are elastic, agile, and resilient. SDK, libraries, and hosted environments.
CoreDNS - CoreDNS is a DNS server that chains plugins
Atomix - A Kubernetes toolkit for building distributed applications using cloud native principles