Prerequisites
In order to install the Graivo Coordinator you will need the coordinatorsetup2.1.zip
file and access to a server that runs docker.
The coordinatorsetup2.1.zip file contains an environmental building tool and can be downloaded from your Asteria online account:
In this example, we use an Ubuntu Linux server which is hosted on Amazon as an EC2 with a fixed IP address. More specifically, we recommend an Ubuntu 18.04 OS instance with 2 vCPUs and 4GB or more memory. The EC2 instance is set up with a domain so it can be accessed from the public internet at all times.
Copy the coordinatorsetup2.1.zip
to your server and extract it. In this example, we assume that you have extracted the ZIP file to the /home/ubuntu
folder.
Next we install the Docker environment.
Installing the Docker environment
Please follow the instructions from Docker to install the Docker Environment on your Ubuntu machine.
Once installed, check the version of Docker installed
$ sudo docker --version
The output would look similar to this:
Docker version 19.03.10, build 9424aeaee9
Now install Docker-Compose
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose
Note: Please check the Docker site for the latest version of docker-compose and replace the highlighted version string (in this case 1.25.5
) above accordingly.
To check the installed version, enter the command
$ sudo docker-compose --version
which will return something along the lines of
docker-compose version 1.25.5, build 8a1c60f6
Now, it’s time to install the Coordinator.
Installing the Coordinator
Move to the directory where you extracted the coordinatorsetup2.1.zip
file:
$ cd coordinatorsetup2.1
Give execute persmissions to the setupcoordinator_hubkit.sh
file in that directory:
$ chmod 755 setupcoordinator_hubkit.sh
Execute it and set the environment variables required:
$ sudo ./setupcoordinator_hubkit.sh
Launching the Coordinator
Start your coordinator using the docker-compose command:
$ sudo docker-compose up -d
Once the Coordinator is launched, you can access the website on the domain/IP. The first time you access the website, you will see the account creation page. Please follow the instructions to complete your setup.
Stopping the Coordinator
Stop Coordinator using the docker-compose command:
$ sudo docker-compose down
Setting up the SSL Certificate for the Gravio Coordinator
To establish encrypted and trusted connections to the Gravio Coordinator, you need to set up the respective trusted SSL certificates from VeriSign etc:
Using Third Party SSL Certificates
Move to the directory where the certificates are:
$ cd hubkitrepo/coordinator/cert
You will find:
coordinator.crt | The Certificate File |
coordinator.key | The Key File |
You can overwrite those files with the files obtained from your certificate issuer.
Using Self-Signed SSL Certificates
When you install the Gravio Coordinator, a self-signed certificate is set by default.
Port Filtering on the EC2 Instance
To ensure communication, please ensure that ports for HTTPS (443) and HTTP (80) are open. These are required to access the web interface. Also, open the port 8082 when using the Coordinator in a debug environment, however we strongly recommend you also enable IP whitelisting for access to your Coordinator ports to prevent unauthorised access.
Important Note: Please ensure that all unused ports are closed on your server using appropriate security measures such as a firewall and/or IP whitelisting.
Port Filtering of Gravio HubKit
To enable the HubKit Log view from the Gravio Coordinator, please also open the access to the port 29442 of your HubKit.