Concrete Clouds


Avatar My name is Jean-Louis Fuchs, I work at Adfinis-SyGroup. One of our core competences is monitoring. I see the need for the next-generation monitoring, so I started working on it in my free time in 2014. I want a homogeneous system and extremely high code and testing standards, which is only possible in a open-source project. Every component of the stack is generic and can be used to build any type of cluster software. With the exception of the monitoring modules of course.

Implementation properties:
  • Built on python: 2.7, 3.4+ and PyPy2
  • Based on async IO (libuv) and message passing
  • Minimal dependencies: libuv statically linked and libssl (dynamic)
  • 100% coverage (C and Python)
  • Single command installation
  • Other languages may connect via the C4irp C-library
System properties:
  • Plug-and-play monitoring
    • Start an agent
    • Point it at a cluster node
    • → Most services on the host are monitored
  • Robust like hell (raft cluster)
  • Work is done on the edges (agents), the cluster is only notified on state changes
  • Free federation of multiple monitoring setups
    • Customers can have their own monitoring
    • Send states of certain hosts to the service provider
    • Implemented by routing messages between clusters

Core modules


Highly modular and versatile

Stack Status: Work in progress


Message passing that feels like flying

  • Fully automatic connection setup
  • TLS support
  • Flow control
  • Easy message routing
Status: Alpha

View on Github »


Killer task execution

  • Very thin RPC-layer
  • A method sends a message and returns the answer
  • Async and sync version
  • Build single-threaded worker daemons for clean concurrency
Status: Planning


The consensus algorithm we understand

  • Leader Election
  • Log Replication
  • Optimized Persistence
  • Pluggable state-machines
Status: Prototyping

Exchangeable modules


Generic Raft State-Machine

  • SQLite based
  • Snapshotting and easy backup
  • Preventing non-deterministic queries (adit)
  • Allows unrestricted queries on read-only sqlite connection
Status: Prototyping


Client for Savvy (Raft), making Savvy safe and easy

  • Supports create/drop table, insert, update, delete
  • Strict insert (off by default) and optimistic locking on update (on by default)
  • Preventing non-deterministic queries: Logic implemented here, to distribute the load to the clients.
  • Allows unrestricted queries on read-only sqlite connection
Status: Prototyping