Intermediate
How to run an Avalanche Node with Alibaba Cloud
This tutorial provides step-by-step instructions on how to run an Avalanche node on Alibaba Cloud. The tutorial covers creating an Ubuntu instance on Alibaba Cloud, installing pre-requisites, downloading and starting the Avalanche node, and verifying the connection. The tutorial provides detailed information on each step and what parameters to configure, and includes a reference link on how to open the 9651 port on Alibaba Cloud. The tutorial concludes with a verification process on the connection status of the Avalanche node by using the “info.isBootstrapped” method.
In this step-by-step tutorial, we will help you deploy Avax on Alibaba Cloud.
Step 1: Start an Ubuntu Instance on Alibaba cloud
Go to the Custom Launch tab of the instance buy page.
Note: If you have not created an Alibaba Cloud account, create one first. For more information, see sign up with Alibaba Cloud.
In the Basic Configurations step, configure parameters and click Next.
The following table describes the parameters of which you must take note. For other parameters that are not described in this table, you can use the default values.
In the System Configurations (Optional) step, set the logon password of the instance and click Preview.
In the Preview step, read and select the ECS Terms of Service and Product Terms of Service. Then, click Create Order.
Confirm and pay for the order.
Step 2: Install the Avax
Step 2.1: Login to the Machine:
Step 2.2: Install Pre-requisites and Binary:
apt update && apt install golang -y apt install git -y
Set $GOPATH
environment variable properly for Go to look for Go Workspaces.
Please read this for details. You can verify by running echo $GOPATH
.
Binary
If you want to download a pre-built binary instead of building it yourself, go to our releases page, and select the release you want (probably the latest one.)
Under Assets
, select the appropriate file.
For Ubuntu on Alibaba cloud :
Download: avalanchego-linux-amd64-<VERSION>.tar.gz
wget https://github.com/ava-labs/avalanchego/releases/download/v1.9.1/avalanchego-linux-amd64-v1.9.1.tar.gz
Unzip: tar -xvf avalanchego-linux-amd64-v1.9.1.tar.gz
The resulting folder, avalanchego-v1.9.1-linux
, contains the binaries.
Step 2.3: Start a Node, and Connect to Avalanche
If you are using the pre-built binaries on Linux:
./avalanchego-v1.9.1/avalanchego
By default (without specifying any parameters), this node will connect to the Mainnet which may take much longer time to finish bootstrapping. See this for connecting to Fuji Testnet.
Make sure your 9651 port is open to public
Reference:How to Create a VPC and Configure a Security Group to Protect Your Alibaba Cloud Instances
When the node starts, it has to bootstrap (catch up with the rest of the network). You will see logs about bootstrapping. When a given chain is done bootstrapping, it prints logs like this:
[09-09|17:01:45.295] INFO <C Chain> snowman/transitive.go:392 consensus starting {"lastAcceptedBlock": "2qaFwDJtmCCbMKP4jRpJwH8EFws82Q2yC1HhWgAiy3tGrpGFeb"} [09-09|17:01:46.199] INFO <P Chain> snowman/transitive.go:392 consensus starting {"lastAcceptedBlock": "2ofmPJuWZbdroCPEMv6aHGvZ45oa8SBp2reEm9gNxvFjnfSGFP"} [09-09|17:01:51.628] INFO <X Chain> avalanche/transitive.go:334 consensus starting {"lenFrontier": 1}
This will take time to initialize, make sure the eta time is getting smaller.
Step 3: Verify the Connection
To check if a given chain is done bootstrapping, in another terminal window call [info.isBootstrapped](https://docs.avax.network/apis/avalanchego/apis/info#infoisbootstrapped)
by copying and pasting the following command:
curl -X POST --data '{ "jsonrpc":"2.0", "id" :1, "method" :"info.isBootstrapped", "params": { "chain":"X" } }' -H 'content-type:application/json;' 127.0.0.1:9650/ext/info
If this returns true
, the chain is bootstrapped; otherwise, it returns false
. If you make other API calls to a chain that is not done bootstrapping, it will return API call rejected because chain is not done bootstrapping
. If you are still experiencing issues please contact us on Discord.
Your node is running and connected now. If you want to use your node as a validator on the main net, check out this tutorial to find out how to add your node as a validator using the web wallet.
You can use Ctrl + C
to kill the node.
To be able to make API calls to your node from other machines, when starting up the node include argument --http-host=
(e.g. ./build/avalanchego --http-host=
)
Connect to Fuji Testnet
To connect to the Fuji Testnet instead of the Mainnet, use argument --network-id=fuji
. You can get funds on the Testnet from the faucet.
./avalanchego-v1.9.1/avalanchego --network-id=fuji