Eggmonster is a set of daemons and tools for managing Python daemons deployed to a cluster of computers.


Eggmonster has four daemons, which are implemented using the eventful async library (which in turn depends on pyevent and libevent).

  • monster_eggserver -- implements a proprietary cheeseshop-like package repository
  • monster_launchd -- a TCP server with a custom application-level protocol that manages local processes
  • monster_logd -- a TCP server that writes all messages it receives to the filesystem
  • monster_server -- the "eggmonster master," each instance provides service on three different TCP ports


Eggmonster includes four tools:

  • em -- remotely drive a monster_server instance
  • emi -- monster_server uses this to manage processes
  • monster_debug -- calls monster_run under rpdb2
  • monster_run -- call functions within an eggmonster environment