Configuration Management

ZooKeeper – distributed coordination

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
etcdDistributed reliable key-value store
ConsulOffers service discovery, service mesh, traffic management, and more
NacosDynamic service discovery, configuration management, and service governance
EurekaRESTful (Representational State Transfer) service
ZooKeeperCentralized service for maintaining configuration information
dnsdockDNS server for automatic docker container discovery

Read our verdict in the software roundup.

Configuration Management
AnsibleSoftware provisioning, configuration management, and application deployment
SaltPython-based configuration management software and remote execution engine
ChefAutomate IT Infrastructure for Hardened, Consistent Configuration
PuppetCentralized configuration management for networks
CFEngineIT infrastructure automation and Continuous Operations framework
JujuSimple, secure devops tooling
pyinfraAutomates infrastructure super fast at massive scale.
RudderContinuous configuration for effective compliance
QuattorComplex set of tools for automated machine management
cdistConfiguration management tool that uses the Bourne Shell for scripting
ZooKeeperCentralized service for maintaining configuration information
RexFriendly automation framework
Bcfg2Produce a consistent, reproducible, and verifiable description

Read our verdict in the software roundup.


Best Free and Open Source Software 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.