Accounting
From WikiOAR
Contents |
Accounting engine and interface
Engine part
The main part of the project is centered on the monitoring/reporting of the cluster for the needs of administrators and users.
In fact in the project we will have go beyond monitoring/reporting for energy consumption. We want to treat cases like monitoring of memory usage or network communication performance for specific jobs or users for specific time periods. We could then want to be able to provide specific accounting and even invoicing (facturation) per user or per project. It is obvious that we will be needing to exploit and evolve the accounting functionalities of OAR as well. Perhaps the notion of "karma" introduced in OAR for the use upon the -fair sharing- scheduling, can be used and/or integrated on the whole context.
Interface and visualization part
A visualization tool is also needed to display results for example with graphs. So far as we can, this tool will be independent from any technology other than javascript.
OAR has a REST API. This API should be used for this project.
What is needed to start
- The state of the art of other systems concerning accounting/monitoring/reporting... Especially SLURM, PBSpro, kaspied and KaspiedNG (used in Grid'5000) and perhaps Condor and Torque
- Understand the already existed mechanism of accounting (Tables of accounting in the database that use karma) and monitoring (oarmonitor command). Moreover we need to check out kaspied (an accounting tool written in Ruby, which is used in Grid'5000). Perhaps the integration of kaspied inside OAR can be interesting. We need to see if we have to evolve the already existing functionalities or if we need to redefine a new framework.
- Create all interesting use cases and try to define different levels of complexities. Our approach has to be general so that we can be flexible enough to integrate complex use cases in the future. But we will deal with only the simpler cases in the beginning.
Difficulty
Medium
Skills
- Linux
- Perl/Ruby
- JavaScript
- Mysql/PostgreSQL
References
"Accounting in SLURM" https://computing.llnl.gov/linux/slurm/accounting.html
"Kaspied (need a Grid'5000 account)" https://www.grid5000.fr/kaspied
"Raphaël-JS, a JavaScript library that draws SVG vector graphics for web sites" http://raphaeljs.com/
"Highcharts, a charting library written in pure JavaScript, offering an easy way of adding interactive charts for web site or web application" http://www.highcharts.com/
"JavaScript InfoVis Toolkit (ex: javascript treemap)" http://thejit.org/home/
Mentors
- Romain Cavagna