Continuum Analytics: Documentation

# 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
- Cluster Profile

## 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.