So you are new to
After thinking a while you decide to run it on an Amazon AWS VPS instance, but you are not sure how to set everything up – well you’ve come to the right place.
After registering, setting up your account and logging in for the first time you are presented with this AWS Management Console screen.
Scroll down a bit and select “Launch a virtual machine“.
Then in the search bar type “ubuntu” and hit enter.
Aeternity has a node release for ubuntu so Ubuntu 18.04 will be best suitable for the purpose of launching our own node without much headaches.
After the search loads, we select Ubuntu Server 18.04 (the first one).
As you may know, Amazon gives you 12 months of free tier usage for some of its services and as it happens t2.micro tier
It is worth mentioning that if we choose the free tier we won’t have enough CPU time (
So we now have a few options here:
- proceed with the free t2.micro tier, sync the blockchain on our local pc and then upload it to the AWS instance
- proceed with the free t2.micro tier, set everything up and then upgrade the tier when we hit the CPU time limit
- or the easiest one – just select t3.nano or above we are good to go (it won’t cost
usmuch, as it charges only on usage).
For the purpose of this tutorial I will be proceeding with the second option as it will give you a better overview of the whole procedure than the rest.
After selecting the tier type we click “Review and Launch” button to continue.
Then we click the “Launch” button. We are being asked to choose a keypair that will be used for SSH-ing into the instance or create a new one.
Select “Create a new key pair” and then name it as you like. I named mine
aeternity, so if you’ve selected another name, adjust the next commands accordingly.
Download the key pair and click “Launch instance”.
Our new vps instance is now launching.
Our AWS instance is already up and running. Now we need to connect to it via SSH and start setting up our aeternity node.
Select the instance and click “Connect”.
We are now provided with instructions on how to connect to our vps via SSH. If you are using Windows machine – you can use PuTTY or another SSH client that you are used to.
I’m running on OSx, so I will proceed with the tutorial via Mac’s terminal. It should be the same so don’t worry.
Amazon asks us to change the
chmodlevel of the file so the first thing we do is:
chmod 400 aeternity.pem
Note that the key pair file I’ve downloaded to my home folder so if you’ve downloaded your somewhere else – adjust this accordingly to your path.
The next command also should be adjusted according to your
.pem file location and the public DNS that Amazon provided for your instance.
You should be able to see the exact commands on the screen above.
ssh -i "aeternity.pem" firstname.lastname@example.org
Now we are into our fresh launched Amazon AWS instance.
In order for us to run aeternity node on Ubuntu 18.04 we need to install a few libraries beforehand.
sudo apt-get install libsodium23
sudo apt-get install libssl1.0.0
Then we download the latest node release from the aeternity’s github that we checked in the beginning.
We need to create a directory where our aeternity node will be placed:
and then extract the release archive in it:
tar -xvzf aeternity-5.5.0-ubuntu-x86_64.tar.gz -C aeternity
Enter the directory via
We now can start our aeternity node via:
As you can see we can get a warning related to the maximum number of open files, so we execute
ulimit -n 24576 and then start again.
For stopping the node we execute
If we want to see if our node is up and running we can make a simple
If you get some JSON like this – it means we are good to go.
As you can notice the Aeternity node is working on TCP port
3013 so we need to allow that in our instance’s network settings.
We select the instance then click “Actions” and navigate to “Networking” -> “Change Security Groups”.
Then we add this to our instance.
We can check if it’s working by accessing it in our browser at the following address:
You now have a running Aeternity node on AWS. Cheers ! 🙂
Also published on Medium.