Cluster Man is a web application that is used to manage a Brown Dog Cluster. It is designed to be re-skinned so it could be bundled with Clowder to provide this functionality without an explicit Brown Dog dependency.
It manages configuration around:
With it you can:
There are two views:
Docker Swarm services are represented as running instances of tools. The Service Name is unique, but has no system significance. There can be multiple instances of a tool running since the queue name and service name are unique.
RabbitMQ Exchanges are represented as projects. The exchanges are tagged with the tool type they support. There can be multiple exchanges in a project as long as they support different tool types.
Tool Deployment is a two-step workflow.
In the first step you choose the tool by selecting a tool type and then enteringing the name of the tool. The form will attempt to auto-complete the tool name as you type.
In the second step you can enter deployment parameters. ClusterMan will generate a unique queue name that is based on the defaul queue name specified in the tool defintion.
Clicking Deploy will attempt to deploy the tool to the cluster.
Once the tool has been successfully deployed, the user will be asked to manage bindings for the new tool to the existing projects.
For an extractor they will have some choices to make:
For converters, there is no choice. Remind the user that the new converter has been bound to every project in the cluster.
Authorized users can add new projects to the application when a new exchange is added to RabbitMQ. When the project is created, the user can specifiy which users have administrative rights over this project. They will be entitiled to bind and unbind tools within their project.