July 3rd, 2018

Cloud Deployment

Recently, I stated that cloud deployment of an OriginTrail incentivized node exhibited lower risk than any other deployment method (for reference see here). Yet, many users otherwise inexperienced in cloud computing may find it difficult to deploy an OriginTrail node on the cloud.

I will be releasing a platform-specific setup, rather than providing all setups simultaneously, as I have had feedback that the latter option causes confusion.

I would like to point out something before we begin. It is not necessary to deploy the testnet node on the cloud. I do believe, however, for anyone unfamiliar with the process, the time to get started on becoming familiar with these setups is now. When real tokens are being staked, you’ll want the confidence that only experience can bring, or you may age much faster than your friends, worrying about if you have a proper set up.

Let’s begin.

Digital Ocean

  • Digital Ocean 
  • Sign up and enter billing information, as prompted
  • Once account is verified and billing information has been provided, navigate to the ‘Droplets’ tab
  • Select ‘Create Droplet’
  • Navigate to the ‘One-click apps’ tab
  • Select the current Docker release
  • Select the appropriate store and compute size for the server
    • As the current requirements stated for testnet are 2 GB RAM and 5 GB HDD, I have chosen the most inexpensive option that meets the criteria suggested by the OriginTrail team. You can, of course, buy more capacity, but I do not recommend it. The option I have selected works.

  • Select the appropriate geographic server region.

  • As different geographic locations offer different features across different services, it is possible that there may be more informed choices to be made for mainnet. For now, however, I recommend choosing the location nearest you.
  • Finalize and Create

  • Wait for node initialization to complete

While the server is initializing, you should see something like the following image.

When the server has completed initialization, you should be able to access the droplet, and it should look something like the following image.

  • Check the email you registered with Digital Ocean for a username and password specific to the root credentials on your droplet (server)
  • Access the console

  • Connect using username and password provided to you by Digital Ocean at your inbox associated with Digital Ocean registration. You will be required to generate a new password, after logging in for the first time.

  • To avoid using the ‘sudo’ credential every time you interact with Docker, add yourself (root) to the docker user group
sudo usermod -aG docker $USER
  • Verify Docker is installed and working properly by running the Docker Hello, World sequence

Provide the following command:

docker run hello-world

If Docker has been successfully set up, you should be provided the following response from Docker’s Hello, World! sequence.

  • Pull the node setup code to initiate running the node

Provide the following command:

docker run -it -d --network host --name otnode --mount source=otnode-vol,destination=/ot-node origintrail/ot-node 

Be patient with this step, and wait until you are provided the following response from the console.

  • Run the node with Docker

Provide the following command:

docker start -i otnode 
  • Verify node is operational

Provide the following command:

docker ps

If the node setup has been successful, you should be provided a status from Docker, stating something very similar to the following.

This completes the section concerning cloud deployment with Digital Ocean.

4 Replies to “How To: OriginTrail Testnet Cloud Deployment (Digital Ocean)”

  1. thanks for the post I was able to install the node, but cant login into Houston. I tried following this document but had no luck.

    ALL CHANGES TO PREVIOUS VERSIONS HIGLIGHTED IN YELLOW
    For those that want to import data into Houston and are using Digital Ocean
    SSH into Digital Ocean to make things easier, you can use putty for this https://www.putty.org/
    Login using DO ipv4 and your login credentials that you set when creating your node on DO
    You will make changes to your .env file typing command, docker exec -it otnode bash
    Type, nano .env
    Now using the arrow keys navigate to the IMPORT_WHITELIST= and delete the existing IP address using the backspace key
    Using google search “what’s my IP” to find your external IP, add this IP to IMPORT_WHITELIST= e.g. IMPORT_WHITELIST=192.168.0.1
    CTRL+X and then Y to save and exit
    Type, npm run config (If it asks for permission to update this is not required)
    Type docker restart otnode

    Following the guide above will reset your Houston password and block access to Houston by closing port 3000. If you had successfully followed the guide below prior, to access Houston again you will need to complete the steps below again.
    If you do not wish to import data yet or at all, please skip the steps above and follow the steps below.
    For those that cannot login to Houston due to the “Login” button not working
    SSH into Digital Ocean to make things easier, you can use putty for this https://www.putty.org/
    Login using DO ipv4 and your login credentials that you set when creating your node on DO
    Type, docker stop otnode
    docker run -it –network host –name=otnode –mount source=otnode-vol,destination=/ot-node –mount source=arango-vol,destination=/var/lib/arangodb3 origintrail/ot-node
    It will then output saying the container is used and give you another one, it should be a string of numbers and characters, copy them all
    Type, docker rm THE STRING FROM POINT 5 SHOULD GO HERE
    The next line should show a repeat of the above string
    Type, docker run -it –network host –name=otnode –mount source=otnode-vol,destination=/ot-node –mount source=arango-vol,destination=/var/lib/arangodb3 origintrail/ot-node
    This time it should start the node
    CTRL+C
    Type, ufw allow 5278,5279,8900,8529,3000,3010,4043,80,443/tcp
    Now start node as normal typing, docker start -i otnode
    Login to Houston using ipv4 from DO, Port 3000, Password = Houston password displayed in the cli written in green.

    Once logged into Houston and you have taken the steps to import data, the sample XML files can be found here.
    You are free to use any of the files in the folders and can do so by;
    Navigating to the required file
    Click Raw, this should open a new webpage with plain text
    Right click anywhere on the text and “Save as” saving the file to your computer
    In Houston navigate to the imports page and click “Import XML”
    Locate the file/s you saved to your computer and open
    If you have the CLI open while doing this, you will notice a message output confirming success and “Import complete”
    Feel free to “Create Offer” with parameters you choose, the team will be providing an update shortly that will prefill these options so for now have fun with.

    For access to your private key please refer to this page the .env file also contains other configuration fields so please take due care when accessing this file.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

*

*

This site uses Akismet to reduce spam. Learn how your comment data is processed.