Installation - Airgapped Environments

Anaconda Adam can be used to install the Anaconda platform in airgapped environments.

Currently, Anaconda Adam can install the remote conda management functionality in an airgapped environment using artifacts from Anaconda Repository. In future versions of Anaconda Adam, airgapped installations of all Anaconda platform components will be fully supported.

Anaconda Repository

After installing Anaconda Repository, you’ll need to configure it for the Anaconda Adam installation on the nodes.

  • Mirror the anaconda and anaconda-adam channels onto your local Anaconda Repository
  • Copy the latest versions of the Anaconda and Miniconda installers to the /static/extras/ folder on the Anaconda Repository web server

Cluster Profile

Create a cluster profile at ~/.continuum/adam/profile.d/profile.yaml with the following contents:

name: profile
provider: bare

bare:
  username: centos
  # password: password  # Optional
  port: 22
  keypair: ~/.ssh/my-private-key
  nodes:
  - host: node1.company.com
  - host: node2.company.com
  - host: node3.company.com
  - host: node4.company.com

plugins:
  conda:
    anaconda_hash: md5=d72add23bc937ccdfc7de4f47deff843
    anaconda_url: http://local.anaconda.repository.address:8080/static/extras/Anaconda2-4.4.0-Linux-x86_64.sh
    channel_alias: http://local.anaconda.repository.address:8080/conda/
    channels:
    - http://local.anaconda.repository.address:8080/conda/anaconda
    - http://local.anaconda.repository.address:8080/conda/anaconda-adam
    enabled: true
    miniconda_hash: md5=7097150146dd3b83c805223663ebffcc
    miniconda_url: http://local.anaconda.repository.address:8080/static/extras/Miniconda2-4.3.21-Linux-x86_64.sh
    rootdir: /opt/continuum
    ssl_verify: False

security:
  flush_iptables: false
  selinux_context: false
  selinux_permissive: false

In the profile, edit the username, SSH port, and IP addresses or hostnames of the nodes in the cluster. The first node in the list of nodes will be defined as the head node, and the remaining nodes will be defined as compute nodes.

You will need to specify the location of your private SSH key (keypair) to use. Verify that you have SSH access to all of the cluster nodes, and that the specified username has sudo privileges.

Set the location of the local.anaconda.repository.address to the address of your Anaconda Repository. Configure the anaconda_hash and miniconda_hash to match the hashes of your Anaconda and Miniconda installers.