Installing Software on Air-Gapped NVIDIA DGX Systems

When installing Red Hat Enterprise Linux on DGX systems, many of the packages that the DGX system requires are downloaded over the internet from both Red Hat and NVIDIA servers. This is not suitable for tightly secured systems which must be “Air-Gapped”; isolated from the internet or outside networks.

Since most DGX software updates are accomplished through an over-the-network process with NVIDIA servers, this section explains how updates can be made when using an over-the-network method is not an option. It includes a process for installing containers as well.

.

Registering Your System

See the Red Hat customer portal knowledge base article How to register and subscribe a system offline to the Red Hat Customer Portal.

Creating a Local Mirror of the NVIDIA Repository

This section presents both a general procedure for copying repositories, and also an example of copying the NVIDIA provided software repository for DGX-specific software.

The Red Hat customer portal provides a knowledge base article for creating a local mirror. Pay particular attention to the instructions under Create a local repo with Red Hat Enterprise Linux 8. The reposync command can now download repository metadata as well, so there is no longer a need to use createrepo after.

The repositories that will need to be mirrored are:

  • rhel-8-for-x86_64-appstream-rpms

  • rhel-8-for-x86_64-baseos-rpms

  • codeready-builder-for-rhel-8-x86_64-rpms

  • nvidia-dgx-8

  • CUDA

Once mirrored, be sure to configure the target system to use your local repository. This can be accomplished by creating file under /etc/yum.repos.d/my_mirror.repo with the following contents:

[nvidia-dgx-8]
name=NVIDIA DGX EL8
baseurl=file://path/to/your/nvidia-dgx-8-repo-mirror/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-dgx-cosmos-support

[CUDA]
name=NVIDIA CUDA for EL8
baseurl=file://path/to/your/CUDA-repo-mirror/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cuda

Note

The instructions assume that you have the repositories enabled on the local machine. See Enabling the DGX Software Repository for instructions on enabling the NVIDIA DGX EL8 repository.

Installing Docker Containers

This method applies to Docker containers hosted on the NGC Container Registry. Most container images are freely available, but some are locked and require that you have an NGC account to access. See the NGC Private Registry User Guide for instructions on accessing locked container images.

  1. Enter the docker pull command, specifying the image registry, image repository, and tag.

    docker pull nvcr.io/nvidia/repository:tag
    
  2. Verify the image is on your system using docker images.

    docker images
    
  3. Save the Docker image as an archive.

    docker save nvcr.io/nvidia/repository:tag > framework.tar
    
  4. Transfer the image to the air-gapped system using removable media such as a USB flash drive.

  5. Load the NVIDIA Docker image.

    docker load -i framework.tar
    
  6. Verify the image is on your system.

    docker images