Sabakan is an integration service to automate bare-metal server management. It uses etcd as a backend datastore for strong consistency and high availability.
Project Status: Initial development.
Thanks to etcd, sabakan can run multiple instances while maintaining strong consistency. For instance, DHCP lease information are shared among sabakan instances to avoid conflicts.
Machine inventory / IP address management (IPAM)
Machines in a data center can be registered with sabakan's inventory. In addition, sabakan assigns IP addresses automatically to machines.
Sabakan serves OS images to machines via HTTP.
Distributed asset management
In order to help initialization of client servers, sabakan can work as a file server from which clients can download assets via HTTP. Assets are automatically synchronized between sabakan servers.
Encryption key store
Sabakan provides REST API to store and retrieve encryption keys to help automated disk encryption/decryption.
Sabakan provides API to change server status for life-cycle management.
To track problems and life-cycle events, sabakan keeps operation logs within its etcd storage.
This repository contains these programs:
sabakan: the network service to manage servers.
sabactl: CLI tool for
sabakan-cryptsetup: a utility to encrypt a block device using dm-crypt.
To see their usage, run them with
docs directory contains tutorials and specifications.
Read getting started first.
Sabakan is licensed under MIT license.