Introduction

Software Contributor Documentation Table of Contents

beginning

IML stands for Integrated Manager for Lustre.

IML is responsible for the installation, configuration, monitoring, and overall management of Lustre®.

The Lustre® file system is an open-source, parallel file system, generally used for large-scale cluster computing.

Below are some screen shots of IML:

Login Screen

iml_login.png

Server Screen

iml_spa.png

Source Code

Before accessing our source code repository for the first time, new contributors should have a good understanding of the tools and processes in place.

Frontend Code and Backend Code

IML consists of a Frontend GUI that is written primarily in Node JS and server-side Backend code that is written primarily in python. The codebase relies on many external dependencies and uses many services and APIs.

iml_flow

The IML codebase consists of many repositories due to the varying needs and varying dependencies.

The primary IML repos of importance for a contributor are:

Repo Name Description
integrated-manager-for-lustre Consider this as the Top level repo populated mostly with python code.
GUI The Graphical User Interface for the Single Page Application, IML. This is primarily nodejs code with angular and inferno libraries.
manager-for-lustre-dependencies Dependencies needed for IML that are not available elsewhere.
view-server Server client-side files.
socket-worker Off main thread data munging.
realtime WebSocket Proxy over RESTful API.
Vagrantfiles Configuration used to generate a virtual lustre clustre with vagrant and virtualBox.

Dependencies for IML

High level python dependencies include:

IML Services

IML uses the following services:

Service Name Description
supervisor A client/server system that allows its users to monitor and control a number of processes on UNIX-like operating systems.
corosync A group communication system with additional features for implementing high availability within applications.
gunicorn ‘Green Unicorn’ is a Python WSGI HTTP Server for UNIX.
http_agent Communicates with the agent daemon on storage servers.
   

Other Services:


Top of page