The Shepherd project is an effort to create an open-source enterprise class software platform for managing a "farm" of processing resources (servers with pre-installed software).
Within the Shepherd architecture, pre-configured processes can be executed on a farm of "worker" nodes by calling them via their "resource ID".
The Shepherd architecture includes the following primary software modules...
- farmRcMgr: a process that manages load-balancing of "resource" processes across "worker" nodes, and requests that a "resource" process be executed on a selected "worker" node
- nodeRcMgr: a process that runs on a "worker" node, and manages execution of "resource" processes on that node
- farmStatus: a process accumulates log messages from other processes
- webUI: a web server process that provides the UI for Shepherd
Features
- Cross-platform architecture
- Worker farm process resource management / load distribution
- Security features
- Centralized logging
- SQL based configuration database