X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/01698bea4703ce073425e2080c7cad83e2f873cc..6b1a602cf1de1b6488c7d6b55e8d99ca8f707160:/doc/install/crunch2/install-compute-node-singularity.html.textile.liquid diff --git a/doc/install/crunch2/install-compute-node-singularity.html.textile.liquid b/doc/install/crunch2/install-compute-node-singularity.html.textile.liquid index 52b2612a5e..e61b6cbe37 100644 --- a/doc/install/crunch2/install-compute-node-singularity.html.textile.liquid +++ b/doc/install/crunch2/install-compute-node-singularity.html.textile.liquid @@ -10,26 +10,66 @@ SPDX-License-Identifier: CC-BY-SA-3.0 {% endcomment %} {% include 'notebox_begin_warning' %} -This page describes the requirements for a compute node in a Slurm or LSF cluster that will run containers dispatched by @crunch-dispatch-slurm@ or @arvados-dispatch-lsf@. If you are installing a cloud cluster, refer to "Build a cloud compute node image":/install/crunch2-cloud/install-compute-node.html. +This page describes the requirements for a compute node in a Slurm or LSF cluster that will run containers dispatched by @crunch-dispatch-slurm@ or @arvados-dispatch-lsf@. If you are installing a cloud cluster, refer to "Build a cloud compute node image":{{ site.baseurl }}/install/crunch2-cloud/install-compute-node.html. {% include 'notebox_end' %} {% include 'notebox_begin_warning' %} -These instructions apply when Containers.RuntimeEngine is set to @singularity@, refer to "Set up a Slurm compute node with Docker":install-compute-node-docker.html when running @docker@. +These instructions apply when Containers.RuntimeEngine is set to @singularity@, refer to "Set up a compute node with Docker":install-compute-node-docker.html when running @docker@. {% include 'notebox_end' %} # "Introduction":#introduction +# "Install python-arvados-fuse and crunch-run and squashfs-tools":#install-packages # "Set up Singularity":#singularity -# "Update fuse.conf":#fuse -# "Install'python-arvados-fuse and crunch-run":#install-packages +# "Singularity mksquashfs configuration":#singularity_mksquashfs_configuration h2(#introduction). Introduction -This page describes how to configure a compute node so that it can be used to run containers dispatched by Arvados, with Slurm on a static cluster. These steps must be performed on every compute node. +Please refer to the "Singularity":{{site.baseurl}}/architecture/singularity.html documentation in the Architecture section. + +This page describes how to configure a compute node so that it can be used to run containers dispatched by Arvados on a static cluster. These steps must be performed on every compute node. + +{% assign arvados_component = 'python-arvados-fuse crunch-run squashfs-tools' %} + +{% include 'install_packages' %} + +{% include 'install_cuda' %} h2(#singularity). Set up Singularity -See "Singularity container runtime":../singularity.html +Follow the "Singularity installation instructions":https://sylabs.io/guides/3.7/user-guide/quick_start.html. Make sure @singularity@ and @mksquashfs@ are working: -{% assign arvados_component = 'python-arvados-fuse crunch-run' %} + +
$ singularity version
+3.7.4
+$ mksquashfs -version
+mksquashfs version 4.3-git (2014/06/09)
+[...]
+
+
-{% include 'install_packages' %} +Then update @Containers.RuntimeEngine@ in your cluster configuration: + + +
      # Container runtime: "docker" (default) or "singularity"
+      RuntimeEngine: singularity
+
+
+ +{% include 'singularity_mksquashfs_configuration' %} + +h2(#singularity_loop_device_errors). Singularity loop device errors + +With singularity v3.9.1 and earlier, containers may fail intermittently at startup with an error message similar to the following in the container log's @stderr.txt@ (line breaks added): + + +
FATAL:   container creation failed:
+ mount /proc/self/fd/3->/usr/local/var/singularity/mnt/session/rootfs error:
+ while mounting image /proc/self/fd/3:
+ failed to find loop device:
+ could not attach image file to loop device:
+ failed to set loop flags on loop device:
+ resource temporarily unavailable
+
+
+ +This problem is addressed in singularity v3.9.2. For details, please see "Arvados issue #18489":https://dev.arvados.org/issues/18489 and "singularity PR #458":https://github.com/sylabs/singularity/pull/458.