Manual Installation

Azure CycleCloud can be installed using an ARM template, via Azure Marketplace or using a container in the Azure Container Registry. We recommend installing using the Azure Marketplace image, but for some production situations it may be useful to manually install CycleCloud as outlined below.

Note

The CycleCloud product encompasses many pieces, including node configuration software known as Jetpack, and a installable webserver platform called CycleServer. Because of this, you will find CycleServer referenced in many commands and directory names on the machine where the CycleCloud server is installed.

System Requirements

To install CycleCloud, you must have administrator (root) rights. In addition, your system needs to meet the following minimum requirements:

  • A 64-bit Linux distribution
  • Java Runtime Environment (version 8)
  • At least 8GB of RAM (16GB recommended)
  • Four or more CPU cores
  • At least 250GB of free disk space

Note

CycleCloud may be installed on physical or virtualized hardware.

SSH Key

The default SSH key used in CycleCloud is /opt/cycle_server/.ssh/cyclecloud.pem. If this does not already exist, it will be automatically generated upon startup (or restart) of CycleCloud.

Installation

Installing on Debian or Ubuntu

First, install wget and gnupg2 if its not already installed. This will be used to fetch, and install, the Microsoft signing key.

sudo apt update && sudo apt -y install wget gnupg2

Next, download the Microsoft signing key and add to Apt's trusted keyring

wget -qO - https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -

Finally, configure a cyclecloud.list file, update the Apt cache, and install CycleCloud.

sudo echo 'deb https://packages.microsoft.com/repos/cyclecloud stable main' > /etc/apt/sources.list.d/cyclecloud.list
sudo apt update
sudo apt -y install cyclecloud
sudo echo 'deb https://packages.microsoft.com/repos/cyclecloud stable main' > /etc/apt/sources.list.d/cyclecloud.list
sudo apt update
sudo apt -y install cyclecloud8

Note

The CycleCloud Apt repository distribution release for Ubuntu family platform, is a floating "stable" moniker. CycleCloud is officially supported on all Ubuntu LTS releases under support by Canonical. The CycleCloud package files are not specific to a version of GLIBC (GNU C Library) or Ubuntu release.

Installing on Enterprise Linux (RHEL) clones

First, configure a cyclecloud.repo file.

sudo cat > /etc/yum.repos.d/cyclecloud.repo <<EOF
[cyclecloud]
name=cyclecloud
baseurl=https://packages.microsoft.com/yumrepos/cyclecloud
gpgcheck=1
gpgkey=https://packages.microsoft.com/keys/microsoft.asc
EOF

Finally, install cyclecloud with yum or dnf.

sudo yum -y install cyclecloud
sudo yum -y install cyclecloud8

Installing from the Microsoft Download center

Download the Azure CycleCloud install file from the Microsoft Download Center and install using a package manager.

For the .rpm install file:

yum install <filename.rpm>

For the .deb install file:

dpkg -i <filename.deb>

Note

You must have write permission to the /opt directory. The CycleCloud installer will create a cycle_server user and unix group, install into the /opt/cycle_server directory by default, and assign cycle_server:cycle_server ownership to the directory.

Once the installer has finished running, you will be provided a link to complete the installation from your browser. Copy the link provided into your web browser and follow the configuration steps.

Insider Builds

CycleCloud insider builds are available for pre-release feature testing. Insider builds may contain unresolved issues.

Enterprise Linux (RHEL) insider builds are located at: https://packages.microsoft.com/yumrepos/cyclecloud-insiders/

Debian/Ubuntu insider builds are located at: https://packages.microsoft.com/repos/cyclecloud-insiders/pool/main/c/cyclecloud8/

Notes on Security

The default installation of CycleCloud uses non-encrypted HTTP running on port 8080. We strongly recommend configuring SSL for all installations.

Do not install CycleCloud on a shared drive, or any drive in which non-admin users have access. Anyone with access to the CycleCloud group will gain access to non-encrypted data. We recommend that non-admin users not be added to this group.

Note

The default CycleCloud configuration may be customized for specific environments using settings in the $CS_HOME/config/cycle_server.properties file.

Configuration

Once installed, you can configure CycleCloud through your web browser. The login screen will load after the webserver has fully initialized, which can take several minutes.

Step 1: Welcome

Welcome Screen

Welcome Screen

Enter a Site Name then click Next.

Step 2: License Agreement

License Screen

License Screen

Accept the license agreement and then click Next.

Step 3: Administrator Account

Administrator Account setup

Administrator Account setup

You will now set up the local administrator account for CycleCloud. This account is used to administer the CycleCloud application - it is NOT an operating system account. Enter a User ID, Name and Password, then click Done to continue.

Note

All CycleCloud account passwords must be between 8 and 123 characters long, and meet at least 3 of the following 4 conditions:

  • Contain at least one upper case letter
  • Contain at least one lower case letter
  • Contain at least one number
  • Contain at least one special character: @ # $ % ^ & * - _ ! + = [ ] { } | \ : ' , . ?

Step 4: Set Your SSH Key

Once you have set up your administrator account, you can set your SSH public key so that you can easily access any Linux machines started by CycleCloud. To set your SSH public key, go to My Profile under the user menu in the top right and choose Edit Profile. Learn about creating SSH keys here.

Update CycleCloud

See the Update Azure CycleCloud page.