ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.
It exposes common services – such as naming, configuration management, synchronization, and group services – in a simple interface so you don’t have to write them from scratch. You can use it off-the-shelf to implement consensus, group management, leader election, and presence protocols. And you can build on it for your own, specific needs.
This is free and open source software.
Key Features
- Simple – allows distributed processes to coordinate with each other through a shared hierarchical namespace which is organized similarly to a standard file system.
- Intended to be replicated over a set of hosts called an ensemble.
- Ordered – stamps each update with a number that reflects the order of all ZooKeeper transactions. Subsequent operations can use the order to implement higher-level abstractions, such as synchronization primitives.
- Runs on thousands of machines, performing best where reads are more common than writes, at ratios of around 10:1.
- Sequential Consistency – Updates from a client will be applied in the order that they were sent.
- Atomicity – Updates either succeed or fail. No partial results.
- Single System Image – A client will see the same view of the service regardless of the server that it connects to. i.e., a client will never see an older view of the system even if the client fails over to a different server with the same session.
- Reliability – Once an update has been applied, it will persist from that time forward until a client overwrites the update.
- Timeliness – The clients view of the system is guaranteed to be up-to-date within a certain time bound.
Website: zookeeper.apache.org
Support:
Developer: Apache Software Foundation
License: Apache License 2.0
ZooKeeper is written in Java. Learn Java with our recommended free books and free tutorials.
Related Software
| Service Discovery | |
|---|---|
| etcd | Distributed reliable key-value store |
| Consul | Offers service discovery, service mesh, traffic management, and more |
| Nacos | Dynamic service discovery, configuration management, and service governance |
| Eureka | RESTful (Representational State Transfer) service |
| ZooKeeper | Centralized service for maintaining configuration information |
| dnsdock | DNS server for automatic docker container discovery |
Read our verdict in the software roundup.
| Configuration Management | |
|---|---|
| Ansible | Software provisioning, configuration management, and application deployment |
| Salt | Python-based configuration management software and remote execution engine |
| Chef | Automate IT Infrastructure for Hardened, Consistent Configuration |
| Puppet | Centralized configuration management for networks |
| CFEngine | IT infrastructure automation and Continuous Operations framework |
| Juju | Simple, secure devops tooling |
| pyinfra | Automates infrastructure super fast at massive scale. |
| Rudder | Continuous configuration for effective compliance |
| Quattor | Complex set of tools for automated machine management |
| cdist | Configuration management tool that uses the Bourne Shell for scripting |
| ZooKeeper | Centralized service for maintaining configuration information |
| Rex | Friendly automation framework |
| Bcfg2 | Produce a consistent, reproducible, and verifiable description |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

