DIET WebBoard is a Java/Jsp web interface designed to manage all aspects of the decrypthon grid.
Working with a MySQL database, it stores and updates in real time the state of each object in the grid : storage spaces, data, jobs and results, computing nodes, requests to DIET, users...
DIET WebBoard also implements the functionallities of the GoDIET software : it is capable of launching the whole DIET architecture, and also stops it when necessary. It includes a page for viewing the state of installed and running applications servers on the grid.
And finally its code can be used to write a dedicated web interface for an application, as it includes minimal but working demonstrations for submitting jobs for Docking, MS2PH and SpikeOMatic and viewing/downloading the corresponding results.
Diet WebBoard can be used on an http or an https server.
Each account is linked to a MySQL user with the proper permissions. In order to log in the DIET WebBoard's interface, you must use your account name and your password.
Once it is done, you will have access to the DIET WebBoard's main page or the database selection page, if you have the permission to connect on multiple databases.
DIET WebBoard's main page.
The DIET WebBoard's main page is a list of links to all the functionalities it implements. Managing the daemons, application examples, databases objects lists, monitoring and statistics, all these links are only enabled if the user has the right permissions.
Example with full permissions :
Example with limited permissions :
DIET WebBoard's Daemons.
The DIET WebBoard application can run three daemons.
The DataBaseManager threads, which contains informations for jobs submission and monitoring (so that results can be registered even when no user is logged in), it also checks periodically the database for errors, and finally it is able to submit again a job or a workunit with expired walltime.
The GoDiet Thread, which is capable of launching the DIET platform, and stops it when necessary. It uses the GoDIET software. It also provides methods to call GoDIET functions such as "check", as shown in the following example.
The DIET test thread, this thread will launch many Jobs randomly on the grid, for testing purpose.
The page also contains a link to the Database errors list and DIET clients log files.
DIET WebBoard's permissions system.
The DIET WebBoard application grants different levels of permissions for its users.
Administrator permissions : the possibility to edit any item in the database (users, devices, jobs, results, ...), to launch and stop the daemons...
User management : the possibility to edit users properties (change their passwords, their permissions).
Devices management : the possibility to edit the devices and storages properties.
Statistics viewing : the possibility to access the lists of the databases objects, and the statistics pages.
Application related : each application installed on the grid require a special permission for launching jobs. This permission can also be used to connect on the stand alone web interface for applications end users.
Default : grants the possibility to connect on the interface.
The root account properties cannot be edited as he always has full permissions, and only the root user can add new users, for security reasons.
DIET WebBoard : objects lists.
The DIET WebBoard can display lists of any type of objects in its database. The list takes the form of a table, filled with the identifier (ID) of these objects, their creation time, and many properties of the object, such as the application_ID for jobs, the workunit_ID for results etc...
You can sort the lists by ascending or descending order just by clicking on the column head, select how much items displaying per page, navigate through pages.
Most of the properties are displayed as links themselves, targeting other filtered lists, or details pages
Example of the devices list (computing nodes and the DIET Master Agent).
Example of the jobs list (a job is a group of workunits).
Example of filtered list : results for the Job 17. Note that the path is a link to download the result file.
DIET WebBoard : objects details.
The object lists cannot show every aspect of the databases objects : this is the aim of the details pages. you also have the possibility, if you have the permissions, to edit, delete or interact with the objects.
The application is one of the simplest object in the databases :
The result detail : displays the full path of the result on the storage. You can move the result to another storage of your choice by clicking on the link :
The job details : also lists the workunits and gives some statistics information
DIET WebBoard : installed and running applications.
The DIET WebBoard has the possibility to check on the nodes running DIET Server Daemons (SeD) which applications are installed, which versions (according to their naming convention) and to detect which applications can run on each SeD. You also have the list of disabled nodes and worker nodes used only through batch scheduler (LoadLeveler, OAR,...).
In this example the SeD of regatta from Bordeaux was not running.
DIET WebBoard : Grid usage statistics
The grid statistics consists in two kinds of charts : repartition charts and evolution charts. You can select different pre-defined period and scales for your charts or use your own user defined parameters.
Example : custom evolution chart. You can generate three statistics charts using this page :
The time spent on the worker nodes by the workunits
The number of results produced.
The memory size of produced results.
You only have to fill the following form : you can filter your results by application or by device, select a starting and ending date and time for the charts, and even choose the size of the pictures displayed.
You can also display stacked bar charts, just by selecting the nature of the data you want to be stacked (applications, devices or device groups).
when pressing submit you obtain your charts :
Example of stacked chart :
Example of pie chart :
Using the calendar to select a period for viewing statistics : You can select a day, a month or a year.
You can finally display the gantt chart of the grid usage for a day.
DIET WebBoard : Using multiple databases
The DIET WebBoard can be linked to more than one DIET platform. The root user can add new platforms that will use their own configuration files (WebBoard configuration file, Godiet.xml, ...) and their own daemons ( Database manager Daemon, Godiet daemon etc...). If you receive permissions on more than one database, you will be sent to the database selection page when connecting. The root user is always redirected there at connection, as he can create a new platform from this page.
DIET WebBoard : Viewing currently running jobs.
You have two pages that allow you to see which jobs and which workunits are running on the diet platform.
List of these workunits :
List of the running jobs :
The blue part of the bar represents the completed workunits, the green one is the running workunits.
From this page you can access the priority editor, to alter the maximal number of running workunits for each job, and their priority :
DIET WebBoard : Stand alone web applications for end users.
The diet WebBoard application is made in two parts : The Diet Manager Web Interface, which uses the DietWebManagerCore library.
End users don't need a complex interface such as Diet WebBoard's, and you can write a simple job submission / results retrieval web interface, using the DietWebManagerCore library.
In the following example you can see that DIET_manager and Diet_WEB_Docking (simple Web application dedicated to the Decrypthon Docking project users) both use the DietWebManagerCore library.
DIET WebBoard : Storage browser.
You have the possibility to view the list of the files on the main directory of any Storage element.
This list is matched with the lists of Datas and Results stored in the database to determine if the files are used or not. Files that have no more use are provided a link to a jsp page that will delete them.
Example :
DIET WebBoard : Databases dump manager.
This section is reserved to the root user.
It is possible to save the totality of the databases, or to load a previously saved state using this tool.
Example :
DIET WebBoard : Data directory cleaner.
Privilegied users can access this page to check file size usage of the DIET WebBoard data directory.
This tool is capable of displaying the list of files and directories in the main data folder, provides links to delete them (if they are not needed anymore, just click on the cross) or simply shows information about these files.
Example :
DIET WebBoard : DIET Client log file.
Whenever a request is sent to DIET via the diet client, the output of the client is saved and stored in individual files.
This tool is capable of displaying the list of these files, delete them, or show the text they contain. The list also show the "Request ID" generated, when the client request is successfull.
Example :