ZooKeeper - Centralized service for maintaining configuration information

  •        0

ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. All of these kinds of services are used in some form or another by distributed applications.

The name space provided by ZooKeeper is much like that of a standard file system. A name is a sequence of path elements separated by a slash (/). Every node in ZooKeeper's name space is identified by a path. ZooKeeper supports the concept of watches. Clients can set a watch on a znodes. A watch will be triggered and removed when the znode changes. It supports replication.

In case of distributed system, there may be multiple servers interacting with each other. Few may need to share some common resources. Consider a scenario, where a application server wants to know the list of database servers, then it could communicate the Zookeeper server and fetch the required information.

http://zookeeper.apache.org/
https://github.com/apache/zookeeper

Tags
Implementation
License
Platform

   




Related Projects

Noah - Lightweight node/service registry inspired by Apache Zookeeper


Noah is a lightweight node/service registry inspired by Apache Zookeeper. It provides support for Service registry, Node registry, Configuration Registry, Group Services, Watches.

Apache Curator - Simplifies using ZooKeeper


The Curator Framework is a high-level API that greatly simplifies using ZooKeeper. It adds many features that build on ZooKeeper and handles the complexity of managing connections to the ZooKeeper cluster and retrying operations. Its features include Automatic connection management, Cleaner API, Leader election, Shared lock, Path cache and watcher, Distributed Queue and lot more.

Consul - Tool for Service Discovery, Monitoring and Configuration


Consul is a tool for service discovery and configuration. Consul is distributed, highly available, and extremely scalable. Consul makes it simple for services to register themselves and to discover other services via a DNS or HTTP interface. Register external services such as SaaS providers as well. It prevents routing requests to unhealthy hosts and enables services to easily provide circuit breakers.

etcd - Distributed reliable key-value store for the most critical data of a distributed system


etcd is a distributed, consistent key-value store for shared configuration and service discovery. It is simple, secure, fast and reliable. it uses the Raft consensus algorithm to manage a highly-available replicated log.

Doozer - A consistent distributed data store


Doozer is a highly-available, completely consistent store for small amounts of extremely important data. When the data changes, it can notify connected clients immediately (no polling), making it ideal for infrequently-updated data for which clients want real-time updates. Doozer is good for name service, database master elections, and configuration data shared between several machines.

constructr-zookeeper - This library enables to use ZooKeeper as cluster coordinator in a ConstructR based cluster


This library enables to use ZooKeeper as cluster coordinator in a ConstructR based node.ConstructR aims at cluster bootstrapping (construction) by using a coordination service and provides etcd as the default one. By means of this library, you will be able to use ZooKeeper as coordination service instead.

ishare - nodejs client for service coordination using zookeeper


nodejs client for service coordination using zookeeper

serf - Service orchestration and management tool


Serf is a decentralized solution for service discovery and orchestration that is lightweight, highly available, and fault tolerant.Serf runs on Linux, Mac OS X, and Windows. An efficient and lightweight gossip protocol is used to communicate with other nodes. Serf can detect node failures and notify the rest of the cluster. An event system is built on top of Serf, letting you use Serf's gossip protocol to propagate events such as deploys, configuration changes, etc. Serf is completely masterless with no single point of failure.

beacon - Service discovery for Docker and etcd.


This section defines service configuration including timeouts and servicelocation. Available parameters are:- `var` - The name of an environment variable on a container to read service configuration from. This defaults to `SERVICES`. The value of this variable is a comma separated list of service definitions. The structure of a service definition is `name:port/protocol` where `name` is the name of the service, `port` is the port the service listens on, and protocol is either `tcp` or `udp`.

Redisson - Redis based In-Memory Data Grid for Java


Redisson - distributed Java objects and services (Set, Multimap, SortedSet, Map, List, Queue, BlockingQueue, Deque, BlockingDeque, Semaphore, Lock, AtomicLong, Map Reduce, Publish / Subscribe, Bloom filter, Spring Cache, Executor service, Tomcat Session Manager, Scheduler service, JCache API) on top of Redis server. Rich Redis client.

galaxya - embeddable peer 2 peer service discovery and configuration


embeddable peer 2 peer service discovery and configuration

locojs - Web service management and discovery for localhost


Web service management and discovery for localhost

nerve - A service registration daemon that performs health checks; companion to airbnb/synapse


Nerve is a utility for tracking the status of machines and services.It runs locally on the boxes which make up a distributed system, and reports state information to a distributed key-value store.At Airbnb, we use Zookeeper as our key-value store.The combination of Nerve and [Synapse](https://github.com/airbnb/synapse) make service discovery in the cloud easy!

Extended WCF Discovery


Extend the WCF discovery to support: 1. Service publish its real service address - such as external IP when service is behind NAT 2. Client discovery over any network topology (behind NAT) Also (in the roadmap): Binding discovery-clients will receive the binding from the s...

zookeeper-leader-election - Implementation of a leader election service with Apache ZooKeeper.


Implementation of a leader election service with Apache ZooKeeper.

OpenNMS


OpenNMS is the world's first enterprise grade network management platform developed under the open source model. A Java/XML-based Distributed Network & Systems Management platform.

OpenStack - Software for building Private and Public Clouds


OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed through a dashboard that gives administrators control while empowering their users to provision resources through a web interface.

zookeeper-experiments - Experiments using the Apache Zookeeper coordination middleware


Experiments using the Apache Zookeeper coordination middleware

nanomsg-service-discovery - Service-discovery pattern implemented with nanomsg.


Service-discovery pattern implemented with nanomsg.