Difference between revisions of "Slurm-web Installation"

From Supercomputación y Cálculo Científico UIS
 
(19 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
<div class="thumbnail img-thumbnail">http://wiki.sc3.uis.edu.co/images/a/a8/Logo_sc33.png</div>
 
<p><code>__NOTOC__</code></p>
 
<p><code>__NOTOC__</code></p>
 
<p>Back to [[Job Scheduler Slurm]]</p>
 
<p>Back to [[Job Scheduler Slurm]]</p>
<h1>Slurm-web installation</h1>
+
<p>&nbsp;</p>
<p>First, let's review the prerequisites:</p>
+
<div class="btn btn-primary"><em class="fa  fa-long-arrow-left">&nbsp;</em> [[Cursos]]</div>
 +
<p>&nbsp;</p>
 +
<div class="column clearfix">
 +
<div class="col-md-14">
 +
<div class="well well-midnight">
 +
<h5><strong>Slurm-web installation</strong></h5>
 +
</div>
 +
</div>
 +
</div>
 +
<div class="col-md-14">
 +
<div class="panel panel-darker-white-border">
 +
<div class="panel-heading">
 +
<p>First, let's review the pre-requisites:</p>
 
<ul>
 
<ul>
 
<li>python</li>
 
<li>python</li>
Line 13: Line 26:
 
</ul>
 
</ul>
 
<p>all python modules and javascript libraries ought to be installed via apt packages for the slurm-web installation to work</p>
 
<p>all python modules and javascript libraries ought to be installed via apt packages for the slurm-web installation to work</p>
<h2>Installing prerequisites</h2>
+
<h5><strong>Installing pre-requisites</strong></h5>
 
<p>Some previous packages:  {{Command|aptitude install apache2-dev}} {{Command|aptitude install libapache2-mod-wsgi}} {{Command|apt-get install debuild}}</p>
 
<p>Some previous packages:  {{Command|aptitude install apache2-dev}} {{Command|aptitude install libapache2-mod-wsgi}} {{Command|apt-get install debuild}}</p>
<h4><strong>Flask:</strong></h4>
+
<h6><strong>Flask:</strong></h6>
 
<p>{{Command|aptitude install python-flask}}  Test it by the procedure detailed in http://flask.pocoo.org/</p>
 
<p>{{Command|aptitude install python-flask}}  Test it by the procedure detailed in http://flask.pocoo.org/</p>
<h4>ClusterShell:</h4>
+
<h6><strong>ClusterShell:</strong></h6>
 
<p>{{Command|aptitude install clustershell}}  Check the project page for more info http://cea-hpc.github.io/clustershell/</p>
 
<p>{{Command|aptitude install clustershell}}  Check the project page for more info http://cea-hpc.github.io/clustershell/</p>
<h3>PySlurm:</h3>
+
<h6><strong>PySlurm:</strong></h6>
 
<p>The slurm-web package require pyslurm to be provided by a package called python-pyslurm.  In the debian release where this procedure was tested that package didn't exist, so it had to be provided by a dummy package.</p>
 
<p>The slurm-web package require pyslurm to be provided by a package called python-pyslurm.  In the debian release where this procedure was tested that package didn't exist, so it had to be provided by a dummy package.</p>
 
<p>First, install the real pyslurm using pip {{Command|pip install pyslurm}}</p>
 
<p>First, install the real pyslurm using pip {{Command|pip install pyslurm}}</p>
 
<p>Test it using the examples shown in http://www.gingergeeks.co.uk/pyslurm/</p>
 
<p>Test it using the examples shown in http://www.gingergeeks.co.uk/pyslurm/</p>
<p>Then create a dummy package using equivs.  First, install equivs if your system doesn't have it: {{Command|aptitude install equivs}} then create a configuration file for our new package {{Command|equivs-control python-pyslurm}}.&nbsp; Now, we should edit the configuration file for the package to provide python-pyslurm.&nbsp; The package will provide nothing in reality, but the package management system will be fooled into thinking that the package is present. The actual functionality is going to be provided by the pyslurm pip package. The important options are presented below:</p>
+
<p>Then create a dummy package using equivs.  First, install equivs if your system doesn't have it: {{Command|aptitude install equivs}} then create a configuration file for our new package {{Command|equivs-control python-pyslurm}}.&nbsp; Now, we should edit the configuration file for the package to provide python-pyslurm [http://www.brain-dump.org/blog/entry/40/Creating_dummy_packages_to_fullfill_dependencies_in_Debian].&nbsp; The package will provide nothing in reality, but the package management system will be fooled into thinking that the package is present. The actual functionality is going to be provided by the pyslurm pip package. The important options are presented below:</p>
<p>{{File|nano python-pyslurm|<br />&lt;pre&gt;Section: misc<br />Priority: optional<br />Standards-Version: 3.5.10<br /><br />Package: python-pyslurm<br />Provides: python-pyslurm<br />Architecture: all<br /><br />Description: Dummy package whichs only purpose is to provide pyslurm&lt;/pre&gt;<br />}}</p>
+
<p>{{File|nano python-pyslurm|<br />Section: misc<br />Priority: optional<br />Standards-Version: 3.5.10<br /><br />Package: python-pyslurm<br />Provides: python-pyslurm<br />Architecture: all<br /><br />Description: Dummy package whichs only purpose is to provide pyslurm}}</p>
 
<p>Now, build the package: {{Command|equivs-build python-pyslurm}}</p>
 
<p>Now, build the package: {{Command|equivs-build python-pyslurm}}</p>
<p>And, install it: {{Command|</p>
+
<p>And, install it: {{Command|dpkg -i python-pyslurm_1.0_all.deb}}</p>
<p><code>__NOTOC__</code></p>
+
<h6><strong>Bootstrap, jQuery y Float:</strong></h6>
<p>Back to [[Job Scheduler Slurm]]</p>
+
<p>{{Command|aptitude install libjs-bootstrap libjs-jquery-flot libjs-jquery-tablesorter}}</p>
<h1>Slurm-web installation</h1>
+
<p>Now, bootstrap must be activated using: {{Command|a2enconf javascript-common}}</p>
<p>First, let's review the prerequisites:</p>
+
<p>&nbsp;</p>
<ul>
+
<h5><strong>Installation of the main package</strong></h5>
<li>python</li>
+
<p>First, it is required to get the latest snapshot of slurm-web from github: {{Command|git clone https://github.com/edf-hpc/slurm-web.git}}. Then, build the package from the project directory: {{Command|debuild -us -uc}}</p>
<li>pyslurm (python module)</li>
+
<p>Finally, install using dpkg, first the REST api package then the dashboard: {{Command|dpkg -i slurm-web-restapi_1.1.3_amd64.deb}} {{Command|dpkg -i slurm-web-dashboard_1.1.3_amd64.deb}}</p>
<li>Flask (python module)</li>
+
<p>&nbsp;</p>
<li>clusterShell (python module)</li>
+
<h5><strong>Configuration and customisation</strong></h5>
<li>bootstrap (javascript library)</li>
+
<p>In /usr/share/slurm-web/ there is a folder called static.&nbsp; Put a custon logo there.&nbsp; In /etc/slurm-web/ there is a file called racks.xml.&nbsp; That file must be edited. The example for GUANE is presented below, but a more general version is shown in the oficial documentation of slurm-web [http://edf-hpc.github.io/slurm-web/installation.html]</p>
<li>jQuery</li>
+
{{File|nano python-pyslurm|
<li>Flot (jQuery extension for graph drawing)</li>
+
<pre>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
</ul>
+
&lt;!DOCTYPE rackmap SYSTEM "/usr/share/slurm-web/restapi/schema/dtd/racks.dtd"&gt;
<p>all python modules and javascript libraries ought to be installed via apt packages for the slurm-web installation to work</p>
+
&lt;rackmap&gt;
<h2>Installing prerequisites</h2>
+
  &lt;nodetypes&gt;
<p>Some previous packages:  {{Command|aptitude install apache2-dev}}  {{Command|aptitude install libapache2-mod-wsgi}} {{Command|apt-get  install debuild}}</p>
+
    &lt;nodetype id="psl390s-1"
<h4><strong>Flask:</strong></h4>
+
              model="HP Proliant SL390s"
<p>{{Command|aptitude install python-flask}}  Test it by the procedure detailed in http://flask.pocoo.org/</p>
+
              height="4"
<h4>ClusterShell:</h4>
+
              width="0.5"
<p>{{Command|aptitude install clustershell}}  Check the project page for more info http://cea-hpc.github.io/clustershell/</p>
+
              /&gt;
<h3>PySlurm:</h3>
+
    &lt;nodetype id="psl390s-2"
<p>The slurm-web package require pyslurm to be provided by a package  called python-pyslurm.  In the debian release where this procedure was  tested that package didn't exist, so it had to be provided by a dummy  package.</p>
+
              model="HP Proliant SL390s"
<p>First, install the real pyslurm using pip {{Command|pip install pyslurm}}</p>
+
              height="4"
<p>Test it using the examples shown in http://www.gingergeeks.co.uk/pyslurm/</p>
+
              width="0.5"
<p>Then create a dummy package using equivs.  First, install equivs if  your system doesn't have it: {{Command|aptitude install equivs}} then  create a configuration file for our new package {{Command|equivs-control  python-pyslurm}}.&nbsp; Now, we should edit the configuration file for the  package to provide python-pyslurm.&nbsp; The package will provide nothing in  reality, but the package management system will be fooled into thinking  that the package is present. The actual functionality is going to be  provided by the pyslurm pip package. The important options are presented  below:</p>
+
              /&gt;
<p>{{File|nano python-pyslurm|<br />&lt;pre&gt;Section: misc<br />Priority: optional<br />Standards-Version: 3.5.10<br /><br />Package: python-pyslurm<br />Provides: python-pyslurm<br />Architecture: all<br /><br />Description: Dummy package whichs only purpose is to provide pyslurm&lt;/pre&gt;<br />}}</p>
+
  &lt;/nodetypes&gt;
<p>Now, build the package: {{Command|equivs-build python-pyslurm}}</p>
+
  &lt;racks&gt;
<p>And, install it: {{Command|</p>
+
    &lt;!-- Rack A1 --&gt;
<p><code>__NOTOC__</code></p>
+
    &lt;rack id="guane" posx="0"&gt;
<p>Back to [[Job Scheduler Slurm]]</p>
+
      &lt;nodes&gt;
<h1>Slurm-web installation</h1>
+
        &lt;nodeset id="guane[01-16]"
<p>First, let's review the prerequisites:</p>
+
                type="psl390s-1"
<ul>
+
                posx="0"
<li>python</li>
+
                posy="31"
<li>pyslurm (python module)</li>
+
draw="down" /&gt;
<li>Flask (python module)</li>
+
      &lt;/nodes&gt;
<li>clusterShell (python module)</li>
+
    &lt;/rack&gt;
<li>bootstrap (javascript library)</li>
+
&lt;/racks&gt;
<li>jQuery</li>
+
&lt;/rackmap&gt;
<li>Flot (jQuery extension for graph drawing)</li>
+
</pre>
</ul>
+
}}
<p>all python modules and javascript libraries ought to be installed via apt packages for the slurm-web installation to work</p>
+
<p>&nbsp;</p>
<h2>Installing prerequisites</h2>
+
<p>&nbsp;</p>
<p>Some previous packages:  {{Command|aptitude install apache2-dev}}  {{Command|aptitude install libapache2-mod-wsgi}} {{Command|apt-get  install debuild}}</p>
+
<h5><strong>To do:</strong></h5>
<h4><strong>Flask:</strong></h4>
+
<p>Figure out a distribution independent way of installation.&nbsp; Since it only uses javascript and python, it should be possible to install via "sources" and paths.</p>
<p>{{Command|aptitude install python-flask}}  Test it by the procedure detailed in http://flask.pocoo.org/</p>
+
<p>&nbsp;</p>
<h4>ClusterShell:</h4>
+
<p>&nbsp;</p>
<p>{{Command|aptitude install clustershell}}  Check the project page for more info http://cea-hpc.github.io/clustershell/</p>
+
<p>PROBANDO</p>
<h3>PySlurm:</h3>
+
</div>
<p>The slurm-web package require pyslurm to be provided by a package  called python-pyslurm.  In the debian release where this procedure was  tested that package didn't exist, so it had to be provided by a dummy  package.</p>
+
</div>
<p>First, install the real pyslurm using pip {{Command|pip install pyslurm}}</p>
+
</div>
<p>Test it using the examples shown in http://www.gingergeeks.co.uk/pyslurm/</p>
 
<p>Then create a dummy package using equivs.  First, install equivs if  your system doesn't have it: {{Command|aptitude install equivs}} then  create a configuration file for our new package {{Command|equivs-control  python-pyslurm}}.&nbsp; Now, we should edit the configuration file for the  package to provide python-pyslurm.&nbsp; The package will provide nothing in  reality, but the package management system will be fooled into thinking  that the package is present. The actual functionality is going to be  provided by the pyslurm pip package. The important options are presented  below:</p>
 
<p>{{File|nano python-pyslurm|<br />&lt;pre&gt;Section: misc<br />Priority: optional<br />Standards-Version: 3.5.10<br /><br />Package: python-pyslurm<br />Provides: python-pyslurm<br />Architecture: all<br /><br />Description: Dummy package whichs only purpose is to provide pyslurm&lt;/pre&gt;<br />}}</p>
 
<p>Now, build the package: {{Command|equivs-build python-pyslurm}}</p>
 
<p>And, install it: {{Command|</p>
 
<p><code>__NOTOC__</code></p>
 
<p>Back to [[Job Scheduler Slurm]]</p>
 
<h1>Slurm-web installation</h1>
 
<p>First, let's review the prerequisites:</p>
 
<ul>
 
<li>python</li>
 
<li>pyslurm (python module)</li>
 
<li>Flask (python module)</li>
 
<li>clusterShell (python module)</li>
 
<li>bootstrap (javascript library)</li>
 
<li>jQuery</li>
 
<li>Flot (jQuery extension for graph drawing)</li>
 
</ul>
 
<p>all python modules and javascript libraries ought to be installed via apt packages for the slurm-web installation to work</p>
 
<h2>Installing prerequisites</h2>
 
<p>Some previous packages:  {{Command|aptitude install apache2-dev}}  {{Command|aptitude install libapache2-mod-wsgi}} {{Command|apt-get  install debuild}}</p>
 
<h4><strong>Flask:</strong></h4>
 
<p>{{Command|aptitude install python-flask}}  Test it by the procedure detailed in http://flask.pocoo.org/</p>
 
<h4>ClusterShell:</h4>
 
<p>{{Command|aptitude install clustershell}}  Check the project page for more info http://cea-hpc.github.io/clustershell/</p>
 
<h3>PySlurm:</h3>
 
<p>The slurm-web package require pyslurm to be provided by a package  called python-pyslurm.  In the debian release where this procedure was  tested that package didn't exist, so it had to be provided by a dummy  package.</p>
 
<p>First, install the real pyslurm using pip {{Command|pip install pyslurm}}</p>
 
<p>Test it using the examples shown in http://www.gingergeeks.co.uk/pyslurm/</p>
 
<p>Then create a dummy package using equivs.  First, install equivs if  your system doesn't have it: {{Command|aptitude install equivs}} then  create a configuration file for our new package {{Command|equivs-control  python-pyslurm}}.&nbsp; Now, we should edit the configuration file for the  package to provide python-pyslurm.&nbsp; The package will provide nothing in  reality, but the package management system will be fooled into thinking  that the package is present. The actual functionality is going to be  provided by the pyslurm pip package. The important options are presented  below:</p>
 
<p>{{File|nano python-pyslurm|<br />&lt;pre&gt;Section: misc<br />Priority: optional<br />Standards-Version: 3.5.10<br /><br />Package: python-pyslurm<br />Provides: python-pyslurm<br />Architecture: all<br /><br />Description: Dummy package whichs only purpose is to provide pyslurm&lt;/pre&gt;<br />}}</p>
 
<p>Now, build the package: {{Command|equivs-build python-pyslurm}}</p>
 
<p>And, install it: {{Command|</p>
 
<p><code>__NOTOC__</code></p>
 
<p>Back to [[Job Scheduler Slurm]]</p>
 
<h1>Slurm-web installation</h1>
 
<p>First, let's review the prerequisites:</p>
 
<ul>
 
<li>python</li>
 
<li>pyslurm (python module)</li>
 
<li>Flask (python module)</li>
 
<li>clusterShell (python module)</li>
 
<li>bootstrap (javascript library)</li>
 
<li>jQuery</li>
 
<li>Flot (jQuery extension for graph drawing)</li>
 
</ul>
 
<p>all python modules and javascript libraries ought to be installed via apt packages for the slurm-web installation to work</p>
 
<h2>Installing prerequisites</h2>
 
<p>Some previous packages:  {{Command|aptitude install apache2-dev}}  {{Command|aptitude install libapache2-mod-wsgi}} {{Command|apt-get  install debuild}}</p>
 
<h4><strong>Flask:</strong></h4>
 
<p>{{Command|aptitude install python-flask}}  Test it by the procedure detailed in http://flask.pocoo.org/</p>
 
<h4>ClusterShell:</h4>
 
<p>{{Command|aptitude install clustershell}}  Check the project page for more info http://cea-hpc.github.io/clustershell/</p>
 
<h3>PySlurm:</h3>
 
<p>The slurm-web package require pyslurm to be provided by a package  called python-pyslurm.  In the debian release where this procedure was  tested that package didn't exist, so it had to be provided by a dummy  package.</p>
 
<p>First, install the real pyslurm using pip {{Command|pip install pyslurm}}</p>
 
<p>Test it using the examples shown in http://www.gingergeeks.co.uk/pyslurm/</p>
 
<p>Then create a dummy package using equivs.  First, install equivs if  your system doesn't have it: {{Command|aptitude install equivs}} then  create a configuration file for our new package {{Command|equivs-control  python-pyslurm}}.&nbsp; Now, we should edit the configuration file for the  package to provide python-pyslurm.&nbsp; The package will provide nothing in  reality, but the package management system will be fooled into thinking  that the package is present. The actual functionality is going to be  provided by the pyslurm pip package. The important options are presented  below:</p>
 
<p>{{File|nano python-pyslurm|<br />&lt;pre&gt;Section: misc<br />Priority: optional<br />Standards-Version: 3.5.10<br /><br />Package: python-pyslurm<br />Provides: python-pyslurm<br />Architecture: all<br /><br />Description: Dummy package whichs only purpose is to provide pyslurm&lt;/pre&gt;<br />}}</p>
 
<p>Now, build the package: {{Command|equivs-build python-pyslurm}}</p>
 
<p>And, install it: {{Command|</p>
 
<p><code>__NOTOC__</code></p>
 
<p>Back to [[Job Scheduler Slurm]]</p>
 
<h1>Slurm-web installation</h1>
 
<p>First, let's review the prerequisites:</p>
 
<ul>
 
<li>python</li>
 
<li>pyslurm (python module)</li>
 
<li>Flask (python module)</li>
 
<li>clusterShell (python module)</li>
 
<li>bootstrap (javascript library)</li>
 
<li>jQuery</li>
 
<li>Flot (jQuery extension for graph drawing)</li>
 
</ul>
 
<p>all python modules and javascript libraries ought to be installed via apt packages for the slurm-web installation to work</p>
 
<h2>Installing prerequisites</h2>
 
<p>Some previous packages:  {{Command|aptitude install apache2-dev}}  {{Command|aptitude install libapache2-mod-wsgi}} {{Command|apt-get  install debuild}}</p>
 
<h4><strong>Flask:</strong></h4>
 
<p>{{Command|aptitude install python-flask}}  Test it by the procedure detailed in http://flask.pocoo.org/</p>
 
<h4>ClusterShell:</h4>
 
<p>{{Command|aptitude install clustershell}}  Check the project page for more info http://cea-hpc.github.io/clustershell/</p>
 
<h3>PySlurm:</h3>
 
<p>The slurm-web package require pyslurm to be provided by a package  called python-pyslurm.  In the debian release where this procedure was  tested that package didn't exist, so it had to be provided by a dummy  package.</p>
 
<p>First, install the real pyslurm using pip {{Command|pip install pyslurm}}</p>
 
<p>Test it using the examples shown in http://www.gingergeeks.co.uk/pyslurm/</p>
 
<p>Then create a dummy package using equivs.  First, install equivs if  your system doesn't have it: {{Command|aptitude install equivs}} then  create a configuration file for our new package {{Command|equivs-control  python-pyslurm}}.&nbsp; Now, we should edit the configuration file for the  package to provide python-pyslurm.&nbsp; The package will provide nothing in  reality, but the package management system will be fooled into thinking  that the package is present. The actual functionality is going to be  provided by the pyslurm pip package. The important options are presented  below:</p>
 
<p>{{File|nano python-pyslurm|<br />&lt;pre&gt;Section: misc<br />Priority: optional<br />Standards-Version: 3.5.10<br /><br />Package: python-pyslurm<br />Provides: python-pyslurm<br />Architecture: all<br /><br />Description: Dummy package whichs only purpose is to provide pyslurm&lt;/pre&gt;<br />}}</p>
 
<p>Now, build the package: {{Command|equivs-build python-pyslurm}}</p>
 
<p><code>__NOTOC__</code></p>
 
<p>Back to [[Job Scheduler Slurm]]</p>
 
<h1>Slurm-web installation</h1>
 
<p>First, let's review the prerequisites:</p>
 
<ul>
 
<li>python</li>
 
<li>pyslurm (python module)</li>
 
<li>Flask (python module)</li>
 
<li>clusterShell (python module)</li>
 
<li>bootstrap (javascript library)</li>
 
<li>jQuery</li>
 
<li>Flot (jQuery extension for graph drawing)</li>
 
</ul>
 
<p>all python modules and javascript libraries ought to be installed via apt packages for the slurm-web installation to work</p>
 
<h2>Installing prerequisites</h2>
 
<p>Some previous packages:  {{Command|aptitude install apache2-dev}}  {{Command|aptitude install libapache2-mod-wsgi}} {{Command|apt-get  install debuild}}</p>
 
<h4><strong>Flask:</strong></h4>
 
<p>{{Command|aptitude install python-flask}}  Test it by the procedure detailed in http://flask.pocoo.org/</p>
 
<h4>ClusterShell:</h4>
 
<p>{{Command|aptitude install clustershell}}  Check the project page for more info http://cea-hpc.github.io/clustershell/</p>
 
<h3>PySlurm:</h3>
 
<p>The slurm-web package require pyslurm to be provided by a package  called python-pyslurm.  In the debian release where this procedure was  tested that package didn't exist, so it had to be provided by a dummy  package.</p>
 
<p>First, install the real pyslurm using pip {{Command|pip install pyslurm}}</p>
 
<p>Test it using the examples shown in http://www.gingergeeks.co.uk/pyslurm/</p>
 
<p>Then create a dummy package using equivs.  First, install equivs if  your system doesn't have it: {{Command|aptitude install equivs}} then  create a configuration file for our new package {{Command|equivs-control  python-pyslurm}}.&nbsp; Now, we should edit the configuration file for the  package to provide python-pyslurm.&nbsp; The package will provide nothing in  reality, but the package management system will be fooled into thinking  that the package is present. The actual functionality is going to be  provided by the pyslurm pip package. The important options are presented  below:</p>
 
<p>{{File|nano python-pyslurm|<br />&lt;pre&gt;Section: misc<br />Priority: optional<br />Standards-Version: 3.5.10<br /><br />Package: python-pyslurm<br />Provides: python-pyslurm<br />Architecture: all<br /><br />Description: Dummy package whichs only purpose is to provide pyslurm&lt;/pre&gt;<br />}}</p>
 
<p>Now, build the package: {{Command|equivs-build python-pyslurm}}</p>
 
<p>And, install it: {{Command|</p>
 
<p>And, install it: {{Command|</p>
 

Latest revision as of 19:26, 16 October 2015

Logo_sc33.png

Back to Job Scheduler Slurm

 

 

Slurm-web installation

First, let's review the pre-requisites:

  • python
  • pyslurm (python module)
  • Flask (python module)
  • clusterShell (python module)
  • bootstrap (javascript library)
  • jQuery
  • Flot (jQuery extension for graph drawing)

all python modules and javascript libraries ought to be installed via apt packages for the slurm-web installation to work

Installing pre-requisites

Some previous packages:

aptitude install apache2-dev
aptitude install libapache2-mod-wsgi
apt-get install debuild

Flask:

aptitude install python-flask
Test it by the procedure detailed in http://flask.pocoo.org/

ClusterShell:

aptitude install clustershell
Check the project page for more info http://cea-hpc.github.io/clustershell/

PySlurm:

The slurm-web package require pyslurm to be provided by a package called python-pyslurm. In the debian release where this procedure was tested that package didn't exist, so it had to be provided by a dummy package.

First, install the real pyslurm using pip

pip install pyslurm

Test it using the examples shown in http://www.gingergeeks.co.uk/pyslurm/

Then create a dummy package using equivs. First, install equivs if your system doesn't have it:

aptitude install equivs
then create a configuration file for our new package
equivs-control python-pyslurm
.  Now, we should edit the configuration file for the package to provide python-pyslurm [1].  The package will provide nothing in reality, but the package management system will be fooled into thinking that the package is present. The actual functionality is going to be provided by the pyslurm pip package. The important options are presented below:

File: nano python-pyslurm

Section: misc
Priority: optional
Standards-Version: 3.5.10

Package: python-pyslurm
Provides: python-pyslurm
Architecture: all

Description: Dummy package whichs only purpose is to provide pyslurm

Now, build the package:

equivs-build python-pyslurm

And, install it:

dpkg -i python-pyslurm_1.0_all.deb

Bootstrap, jQuery y Float:

aptitude install libjs-bootstrap libjs-jquery-flot libjs-jquery-tablesorter

Now, bootstrap must be activated using:

a2enconf javascript-common

 

Installation of the main package

First, it is required to get the latest snapshot of slurm-web from github:

. Then, build the package from the project directory:
debuild -us -uc

Finally, install using dpkg, first the REST api package then the dashboard:

dpkg -i slurm-web-restapi_1.1.3_amd64.deb
dpkg -i slurm-web-dashboard_1.1.3_amd64.deb

 

Configuration and customisation

In /usr/share/slurm-web/ there is a folder called static.  Put a custon logo there.  In /etc/slurm-web/ there is a file called racks.xml.  That file must be edited. The example for GUANE is presented below, but a more general version is shown in the oficial documentation of slurm-web [2]

File: nano python-pyslurm
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rackmap SYSTEM "/usr/share/slurm-web/restapi/schema/dtd/racks.dtd">
<rackmap>
  <nodetypes>
    <nodetype id="psl390s-1"
              model="HP Proliant SL390s"
              height="4"
              width="0.5"
              />
    <nodetype id="psl390s-2"
              model="HP Proliant SL390s"
              height="4"
              width="0.5"
              />
  </nodetypes>
  <racks>
    <!-- Rack A1 -->
    <rack id="guane" posx="0">
      <nodes>
        <nodeset id="guane[01-16]"
                 type="psl390s-1"
                 posx="0"
                 posy="31"
		 draw="down"	 />
      </nodes>
    </rack>
 </racks>
</rackmap>

 

 

To do:

Figure out a distribution independent way of installation.  Since it only uses javascript and python, it should be possible to install via "sources" and paths.

 

 

PROBANDO