wiki:WikiStart_old

Version 4 (modified by ramonb, 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)

Installing