Version 10 (modified by sil, 12 years ago) (diff) |
---|
CMT -- Cluster Management Tool
CMT is a Cluster Management Tool originally created at SARA Computing and Networking Services, which is based in Amsterdam and known as SARA nowadays. It once started as a single script, went through some reincarnations, and now it consists of a Django-powered backend on the server-side, and a CLI for the client-side.
The main reason behind CMT's existence is that we needed a tool that's capable of generating configuration-files for certain software running on our clusters. CMT has a database, where we store information about our hardware, which is used to (let CMT) generate configuration-files, based on templates. At SARA it's used in production, to generate configuration-files for services like for example dhcpd and bind. At the moment we're busy to make Python packages, to make it easy to install.
Features
Some features of CMT are:
- Dynamically extendable data model
- Server-side Django-powered easy-to-use web-interface
- Client-side powerful CLI, to use CMT from shellscripts, or interactive from shell
- Automagic generation of configuration files, with templates extended on Django Templates
- Export stored data to, and import from JSON
- Support for multiple clusters, networks, interfaces, etc...
- Easy to install package for the client-side functionalities (planned for initial release)
Wished features for future releases are:
- Import the client as a Python-module
- Split server- and client-functionalities as much as possible, and develop as packages apart from each other
- Build an API to make it easier to integrate CMT in other software/scripts
Requirements
- Django>=1.2, <1.3
- IPy==0.75
- django-extensions==0.4
- django-tagging==0.3.1
- psycopg2==2.4.4
Besides these Python-packages, the following software should be installed on your system:
- Python>=2.6
- header files and a static library for Python
- header files for libpq (PostgreSQL library)
Setup & Usage
Documentation of CMT is divided into several pages.
- Quickstart
- This will give you a quick introduction on how to prepare your environment, and get started with the CMT client.
- User documentation
- Further details about how to use CMT as a user. This describes how to manage the information you store in CMT, and how to do this by using the interfaces it has.
.
Contact
Existing bugs and feature requests for CMT can be found in our overview of active tickets. If you have any issues with CMT, which aren't listed as a ticket yet, please create a new ticket or send us an email about it.