Skip to content

cybozu-go/sabakan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub release CircleCI GoDoc Go Report Card

Sabakan

sabakan architecture

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.

Features

  • High availability

    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.

  • DHCP service

    Sabakan provides DHCP service that supports UEFI HTTP Boot and iPXE HTTP Boot.

  • HTTP service

    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.

  • Life-cycle management

    Sabakan provides API to change server status for life-cycle management.

  • Audit logs

    To track problems and life-cycle events, sabakan keeps operation logs within its etcd storage.

Programs

This repository contains these programs:

  • sabakan: the network service to manage servers.
  • sabactl: CLI tool for sabakan.
  • sabakan-cryptsetup: a utility to encrypt a block device using dm-crypt.

To see their usage, run them with -h option.

Documentation

docs directory contains tutorials and specifications.

Read getting started first.

License

Sabakan is licensed under MIT license.