Source

eggmonster / README

The em4 branch has multiple heads

============
 Eggmonster
============

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


Daemons
-------

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


Tools
-----

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


.. _monster_eggserver: monster_eggserver.html
.. _monster_launchd: monster_launchd.html
.. _monster_logd: monster_logd.html
.. _monster_server: monster_server.html

.. _em: em.html
.. _emi: emi.html
.. _monster_debug: monster_debug.html
.. _monster_run: monster_run.html