<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Getting Started with OneSlurm on</title><link>https://docs.opennebula.io/7.4/platform_services/slurm/getting_started/</link><description>Recent content in Getting Started with OneSlurm on</description><generator>Hugo</generator><language>en</language><lastBuildDate>Wed, 07 Oct 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://docs.opennebula.io/7.4/platform_services/slurm/getting_started/index.xml" rel="self" type="application/rss+xml"/><item><title>Overview</title><link>https://docs.opennebula.io/7.4/platform_services/slurm/getting_started/overview/</link><pubDate>Wed, 07 Oct 2026 00:00:00 +0000</pubDate><guid>https://docs.opennebula.io/7.4/platform_services/slurm/getting_started/overview/</guid><description>&lt;p&gt;&lt;a href="https://slurm.schedmd.com/documentation.html"&gt;Slurm&lt;/a&gt; is an open source workload manager and job scheduler for AI and HPC workloads on Linux Clusters. It gives jobs access to compute nodes, starts and monitors them, and keeps pending jobs in a queue.&lt;/p&gt;
&lt;p&gt;OneSlurm deploys a Slurm Cluster on OpenNebula as a OneFlow service. The service has two roles:&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;&lt;strong&gt;Role&lt;/strong&gt;&lt;/th&gt;
 &lt;th&gt;&lt;strong&gt;Appliance&lt;/strong&gt;&lt;/th&gt;
 &lt;th&gt;&lt;strong&gt;What it does&lt;/strong&gt;&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;controller&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;a href="https://marketplace.opennebula.io/appliance/db17c081-969f-45e0-9c8b-e0f7236c15aa"&gt;Service Slurm Controller&lt;/a&gt;&lt;/td&gt;
 &lt;td&gt;Runs &lt;code&gt;slurmctld&lt;/code&gt;, schedules jobs and owns the Slurm configuration. Users log in here to submit jobs&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;code&gt;worker&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;a href="https://marketplace.opennebula.io/appliance/c03f8c40-39bb-42cd-a9d5-781f59846b57"&gt;Service Slurm Worker&lt;/a&gt;&lt;/td&gt;
 &lt;td&gt;Runs &lt;code&gt;slurmd&lt;/code&gt; and executes jobs. You can add or remove workers at any time&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Both roles come together in the &lt;a href="https://marketplace.opennebula.io/appliance/8ce164d5-3cce-42a7-b9a7-0e8133ef92c6"&gt;Service OneSlurm&lt;/a&gt; appliance of the OpenNebula Public Marketplace. The controller publishes the Cluster data through OneGate, and each worker reads it and joins the Cluster without manual steps.&lt;/p&gt;</description></item><item><title>Requirements and Preparation</title><link>https://docs.opennebula.io/7.4/platform_services/slurm/getting_started/requirements/</link><pubDate>Wed, 07 Oct 2026 00:00:00 +0000</pubDate><guid>https://docs.opennebula.io/7.4/platform_services/slurm/getting_started/requirements/</guid><description>&lt;h2 id="requirements"&gt;
 Requirements
 &lt;a class="anchor-link" href="#requirements" aria-label="Link to this section"&gt;
 &lt;i class="fas fa-link fa-xs"&gt;&lt;/i&gt;
 &lt;/a&gt;
&lt;/h2&gt;&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;&lt;strong&gt;Requirement&lt;/strong&gt;&lt;/th&gt;
 &lt;th&gt;&lt;strong&gt;Details&lt;/strong&gt;&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;OpenNebula&lt;/td&gt;
 &lt;td&gt;7.0, 7.2 or 7.4&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;OneFlow&lt;/td&gt;
 &lt;td&gt;Running. OneSlurm is a OneFlow service&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;OneGate&lt;/td&gt;
 &lt;td&gt;Running and reachable from the controller and worker VMs&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;OneGate to OneFlow&lt;/td&gt;
 &lt;td&gt;OneGate can reach the OneFlow API&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Virtual Network&lt;/td&gt;
 &lt;td&gt;One network for the service. The controller and the workers attach to it&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Port 6817/TCP&lt;/td&gt;
 &lt;td&gt;Open from the workers to the controller, for &lt;code&gt;slurmctld&lt;/code&gt; and configless Slurm&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="onegate-details"&gt;
 OneGate Details
 &lt;a class="anchor-link" href="#onegate-details" aria-label="Link to this section"&gt;
 &lt;i class="fas fa-link fa-xs"&gt;&lt;/i&gt;
 &lt;/a&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;The controller publishes the Cluster data through &lt;a href="https://docs.opennebula.io/7.4/product/operation_references/opennebula_services_configuration/onegate/"&gt;OneGate&lt;/a&gt;, and the workers read it. Without OneGate, no worker joins the Cluster.&lt;/li&gt;
&lt;li&gt;The VMs can reach OneGate directly or through the &lt;a href="https://docs.opennebula.io/7.4/product/virtual_machines_operation/virtual_machines_networking/tproxy/"&gt;transparent proxies&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;OneGate must reach the active OneFlow server. The &lt;code&gt;:oneflow_server:&lt;/code&gt; setting in &lt;code&gt;/etc/one/onegate-server.conf&lt;/code&gt; sets it.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To check it, run this command in any VM of the service. It must print the service, not &lt;code&gt;Service &amp;lt;id&amp;gt; not found&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>Quick Start</title><link>https://docs.opennebula.io/7.4/platform_services/slurm/getting_started/quick_start/</link><pubDate>Wed, 07 Oct 2026 00:00:00 +0000</pubDate><guid>https://docs.opennebula.io/7.4/platform_services/slurm/getting_started/quick_start/</guid><description>&lt;p&gt;This guide deploys a Slurm cluster with one controller and one worker, then runs a first job. You can create the service from Sunstone or from the CLI. Check the &lt;a href="https://docs.opennebula.io/7.4/platform_services/slurm/getting_started/requirements/"&gt;Requirements&lt;/a&gt; before proceeding.&lt;/p&gt;
&lt;h2 id="step-1-import-the-appliance"&gt;
 Step 1: Import the Appliance
 &lt;a class="anchor-link" href="#step-1-import-the-appliance" aria-label="Link to this section"&gt;
 &lt;i class="fas fa-link fa-xs"&gt;&lt;/i&gt;
 &lt;/a&gt;
&lt;/h2&gt;&lt;p&gt;Export &lt;code&gt;Service OneSlurm&lt;/code&gt; from the OpenNebula Public Marketplace. This creates the two images, the two VM templates and the OneFlow service template.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;onemarketapp &lt;span class="nb"&gt;export&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;Service OneSlurm&amp;#39;&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;Service OneSlurm&amp;#39;&lt;/span&gt; --datastore default
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;IMAGE
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ID: &lt;span class="m"&gt;34&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ID: &lt;span class="m"&gt;35&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;VMTEMPLATE
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ID: &lt;span class="m"&gt;62&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ID: &lt;span class="m"&gt;63&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;SERVICE_TEMPLATE
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ID: &lt;span class="m"&gt;64&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="step-2-adjust-the-templates-optional"&gt;
 Step 2: Adjust the Templates (Optional)
 &lt;a class="anchor-link" href="#step-2-adjust-the-templates-optional" aria-label="Link to this section"&gt;
 &lt;i class="fas fa-link fa-xs"&gt;&lt;/i&gt;
 &lt;/a&gt;
&lt;/h2&gt;&lt;p&gt;The default parameters are enough for a test Cluster. For real workloads you may need more resources, for example, more CPUs or memory of the workers, or adding a GPU.&lt;/p&gt;</description></item><item><title>Core Concepts</title><link>https://docs.opennebula.io/7.4/platform_services/slurm/getting_started/core_concepts/</link><pubDate>Wed, 07 Oct 2026 00:00:00 +0000</pubDate><guid>https://docs.opennebula.io/7.4/platform_services/slurm/getting_started/core_concepts/</guid><description>&lt;h2 id="controller-and-workers"&gt;
 Controller and Workers
 &lt;a class="anchor-link" href="#controller-and-workers" aria-label="Link to this section"&gt;
 &lt;i class="fas fa-link fa-xs"&gt;&lt;/i&gt;
 &lt;/a&gt;
&lt;/h2&gt;&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;&lt;/th&gt;
 &lt;th&gt;&lt;strong&gt;Controller&lt;/strong&gt;&lt;/th&gt;
 &lt;th&gt;&lt;strong&gt;Worker&lt;/strong&gt;&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Slurm daemon&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;slurmctld&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;slurmd&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Number of VMs&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;1 or more&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Hostname&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;slurm-one-controller&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;The VM name, for example &lt;code&gt;worker-0--service-233&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Role in the Cluster&lt;/td&gt;
 &lt;td&gt;Schedules jobs, keeps the configuration, hosts the optional local LDAP&lt;/td&gt;
 &lt;td&gt;Runs jobs&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Users connect to the controller to compile code and submit jobs with &lt;code&gt;srun&lt;/code&gt; or &lt;code&gt;sbatch&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id="configless-slurm"&gt;
 Configless Slurm
 &lt;a class="anchor-link" href="#configless-slurm" aria-label="Link to this section"&gt;
 &lt;i class="fas fa-link fa-xs"&gt;&lt;/i&gt;
 &lt;/a&gt;
&lt;/h2&gt;&lt;p&gt;The controller is the only VM that has the Slurm configuration files. The workers start &lt;code&gt;slurmd&lt;/code&gt; with &lt;code&gt;--conf-server slurm-one-controller:6817&lt;/code&gt; and download the configuration from the controller. A change on the controller reaches every worker, and new workers need no configuration.&lt;/p&gt;</description></item></channel></rss>