AIT cluster

Cluster specs


Access the cluster

The EngageSKA cluster locates at the Datacenter of Institute of Telecommunication (IT) in Aveiro. To have access to the cluster, it is required to be inside the facilities or have VPN credentials to access the IT network remotely.

Access to the network using VPN

At the moment, VPN credentials are sent individually and is required to send an email to Dzianis Bartashevich ( with the knowledge from Marco Bartolini (

You will receive an .ovpn key to access the private network.

In order to connect you will need an OpenVPN client:

Now just drag or add the .ovpn file to VPN the client. The follow tutorial is for tunnelblick, but it is similar to the other VPN clients.

../_images/openvpn_open.png ../_images/openvpn_more.png

Now that you have configured the VPN credentials click on the VPN client icon located at the toolbar and connect to the private network.


If all went okay, you are successfully connected.


Access to the OpenStack platform (Virtualization)


The OpenStack platform requires authentication in order to use it.

At the moment, OpenStack credentials are sent individually and it is required to send an email to Dzianis Bartashevich ( with the knowledge from Marco Bartolini ( In the next phase, OpenStack could support GitHub authentication.

To access the OpenStack platform go to (require VPN) and login with your credentials.

Virtual machine deployment

  • At the sidebar, go to Project -> Compute -> Instances and click on the “Launch Instance” button:
  • At this stage a menu will pop-up and will ask to specify virtual machine caracteristics, chose an name for virtual machine:
  • Select the Operating System you want your VM to have:

NOTE: Please choose the option “Yes” at “Delete Volume on Instance Delete” so when you decide to delete the instance the volume will be also deleted and not occupy unnecessary space

../_images/openstack_vm_os.png ../_images/openstack_vm_os2.png
  • Select the flavor which you want your VM to have:
../_images/openstack_flavor.png ../_images/openstack_flavor2.png
  • Select private network (int-net):
../_images/openstack_network.png ../_images/openstack_network2.png
  • Create or use ssh key to enable ssh access to the VM:
  • In the end press on “Launch Instance” button at the bottom. This initiates the virtual machine deployment. It could take a while:
  • When the Power State become “Running”, the virtual machine has been successfully deployed and is ready to be used:
  • Since the VM is deployed inside private network you will need to associate Floating IP from your network have the access:
../_images/openstack_running_intance.png ../_images/openstack_floating_choose.png ../_images/openstack_floating_add.png ../_images/openstack_floating_add2.png ../_images/openstack_floating_ip.png
  • Now using any SSH client connect to the instance through VPN using the Floating IP address

Docker machine deployment

Official docker-machine documentation:

2. Configuration

In order to use the OpenStack integration you need to export OpenStack Authentication credentials.

For the future use, create an executable file which will export environmental variables automatically. For example you can call file “openstackrc” and the content of the file be:

export OS_SSH_USER=ubuntu
export OS_IMAGE_NAME=Ubuntu1604
export OS_FLAVOR_NAME=m1.medium
export OS_FLOATINGIP_POOL=ext_net
export OS_SECURITY_GROUPS=default
export OS_NETWORK_NAME=int_net

export OS_DOMAIN_NAME=default
export OS_TENANT_NAME=geral
export OS_AUTH_URL=
Default ssh user, usually it is ubuntu (if operating system is ubuntu)
OS image to be used during virtual machine deployment

Virtual machine specification (vCPU, RAM, storage, …)

Flavor vCPU Root Disk RAM
m1.tiny 1 0 0.5GB
m1.smaller 1 0 1GB
m1.small 1 10GB 2GB
m1.medium 2 10GB 3GB
m1.large 4 10GB 8GB
m1.xlarge 8 10GB 8GB
ska1.full 46 10GB 450GB
Floating IP external network pool is the “ext_net”
Security groups, default is “default”
Private network, default is “int_net”
OpenStack domain region, default is “default”
OpenStack username
OpenStack password
OpenStack project name, default is “geral”
OpenStack Auth URL, default is “

3. Usage

Complete documentation about docker-machine CLI commands can be found here:

3.1 Run the enviromental variable file
$ . openstackrc
3.2 Create docker-machine

Create a machine. Requires the –driver flag to indicate which provider (OpenStack) the machine should be created on, and an argument to indicate the name of the created machine.

$ docker-machine create --driver=openstack MACHINE-NAME

Creating CA: /root/.docker/machine/certs/ca.pem
Creating client certificate: /root/.docker/machine/certs/cert.pem
Running pre-create checks...
Creating machine...
(MACHINE-NAME) Creating machine...
Waiting for machine to be running, this may take a few minutes...
Detecting operating system of created instance...
Waiting for SSH to be available...
Detecting the provisioner...
Provisioning with ubuntu(systemd)...
Installing Docker...
Copying certs to the local machine directory...
Copying certs to the remote machine...
Setting Docker configuration on the remote daemon...
Checking connection to Docker...
Docker is up and running!
To see how to connect your Docker Client to the Docker Engine running on this virtual machine, run: docker-machine env MACHINE-NAME

In this step docker-machine will create VM inside OpenStack. As soon as the ssh connection to VM is available the Docker service will be installed.

3.3 Set docker-machine environment

Set environment variables to dictate that docker should run a command against a particular machine.

$ docker-machine env MACHINE-NAME

export DOCKER_HOST="tcp://"
export DOCKER_CERT_PATH="/root/.docker/machine/machines/MACHINE-NAME"
# Run this command to configure your shell:
# eval $(docker-machine env MACHINE-NAME)
3.4 Configure shell to use your docker-machine

After this, when you execute “docker” command it will be executed remotely

$ eval $(docker-machine env MACHINE-NAME)

Now if you run “docker-machine ls” you see that your machine is active and ready to use.

$ docker-machine ls

NAME           ACTIVE   DRIVER      STATE     URL                        SWARM   DOCKER     ERRORS
MACHINE-NAME   *        openstack   Running   tcp://           v18.09.0
3.5 Use “docker” command to remotely deploy docker containers
$ docker run -d -p 80:80 nginx

Unable to find image 'nginx:latest' locally
latest: Pulling from library/nginx
a5a6f2f73cd8: Pull complete
67da5fbcb7a0: Pull complete
e82455fa5628: Pull complete
Digest: sha256:98b06873ea9c87d5df1bb75b650926cfbcc4c53f675dfabb158830af0b115f99
Status: Downloaded newer image for nginx:latest
3.6 Remove docker-machine

Remove a machine. This removes the local reference and deletes it on the cloud provider or virtualization management platform.

$ docker-machine rm MACHINE-NAME (-f if need force)
3.7 Docker-machine IP

Get the IP address of one or more machines

$ docker-machine ip MACHINE-NAME
3.8 Docker-machine list

List currently deployed docker-machines

$ docker-machine ls

NAME           ACTIVE   DRIVER      STATE     URL                        SWARM   DOCKER     ERRORS
MACHINE-NAME   *        openstack   Running   tcp://           v18.09.0
3.9 Docker-machine upgrade

Upgrade a machine to the latest version of Docker. How this upgrade happens depends on the underlying distribution used on the created instance.

$ docker-machine upgrade MACHINE-NAME

Waiting for SSH to be available...
Detecting the provisioner...
Upgrading docker...
Restarting docker...
3.10 Docker-machine stop

Stops running docker-machine

$ docker-machine stop MACHINE-NAME

Stopping "MACHINE-NAME"...
Machine "MACHINE-NAME" was stopped.
3.11 Docker-machine restart

Restarts docker-machine

$ docker-machine restart MACHINE-NAME

Restarting "MACHINE-NAME"...
Waiting for SSH to be available...
Detecting the provisioner...
Restarted machines may have new IP addresses. You may need to re-run the `docker-machine env` command.
3.12 Docker-machine start

Starts docker-machine

$ docker-machine start MACHINE-NAME

Starting "MACHINE-NAME"...
Machine "MACHINE-NAME" was started.
Waiting for SSH to be available...
Detecting the provisioner...
Started machines may have new IP addresses. You may need to re-run the `docker-machine env` command.
3.13 Docker-machine ssh

Log into or run a command on a machine using SSH.

$ docker-machine ssh MACHINE-NAME

Welcome to Ubuntu 16.04.4 LTS (GNU/Linux 4.4.0-116-generic x86_64)

* Documentation:
* Management:
* Support:

Get cloud support with Ubuntu Advantage Cloud Guest:

153 packages can be updated.
81 updates are security updates.

New release '18.04.1 LTS' available.
Run 'do-release-upgrade' to upgrade to it.


Access to the bare metal

In this stage, this option is very restrictive and only in a well-justified situation is allowed.