How to deploy Arbitrum Node on Akash

Praveen Chaudhary
4 min readMar 19, 2022

In this article, We will learn how to setup Arbitrum node on Akash. Concepts we will learn :-

  • Setting up wallet on Akash Akashlytics.
  • Creating SDL for the deployment.
  • Creating deployment.
  • Monitoring Logs
  • Curl to check the status of deployment
  • Closing the deployment

Setting up wallet on Akash Akashlytics : -

Install the Akashlytics tool. Once Akashlytics is installed, open the tool.

You have the option to create or import the wallet. Make sure Edgenet is selected.

Create certificate if you are missing. Revoke it if needed.

Creating SDL for the deployment : -

For deployment, we require a Stack Definition Language (SDL) which will contain all the necessary information like how much CPU cores, Ram, storage, number of instances and much more. You can get more information by checking out the Akash official documentation.

version: "2.0"services:
arbitrum:
image: offchainlabs/arb-node:v1.2.0-9214e38
expose:
- port: 8547
as: 8547
to:
- global: true
- port: 8548
as: 8548
to:
- global: true
args:
- "--l1.url=https://eth-mainnet.alchemyapi.io/v2/<YOUR-KEY>"
profiles:
compute:
arbitrum:
resources:
cpu:
units: 2
memory:
size: 4Gi
storage:
size: 128Gi
placement:
dcloud:
attributes:
host: akash
pricing:
arbitrum:
denom: uakt
amount: 100
deployment:
arbitrum:
dcloud:
profile: arbitrum
count: 1

Let's understand this SDL : -

  • For docker image, we are already build official docker image from Arbitrum.
  • We are exposing, 8547 port for RPC. It provides a way to communicate with the deployed node and 8548 for interconnection of nodes.
  • For args → l1.url, We require L1 Ethereum node. I am using Alchemyapi. For this you need to create account on Alchemy. Once the account is created, login to dashboard and there you will find API key.
  • In the profile section, we can mention compute instance configuration and the cost.

Creating deployment

On the Akashlytics homepage, click on create deployment.

Akash Deployment Page

Check if everything is fine or not. If you are finding some issues. It might be due to wrong steps being followed.

Click on Continue button.

Select the “From a file” option and choose the file, we had made previously.

Verify your SDL file before preceding next.

Once everything is fine, Click on Create Deployment button.

From the list of bidders, select one bid which suits you and click on Accept Bid.

Once the lease is created. Your deployment will start.

Deploying ARBITRUM node

Monitoring Logs

Click on Logs to monitor the deployment.

Blocks are syncing means the deployment is successful.

Curl to check the status of deployment

To interact with the deployment, we had exposed the port 8547. We need to url with port.

Copy the url from the browser

Open the terminal and paste the following command and make sure you have replace URL with your deployed url

curl <URL> POST --data '{"jsonrpc":"2.0","method":"net_version","params":[],"id":4}' -H 'content-type: application/json'

RESULT

{“jsonrpc”:”2.0",”id”:4,”result”:”42161"}

Closing the deployment

Click “” near the Add Funds option and Select the Close Option.

Summary

We have learned how to set up wallet on Akashlytics, creating SDL, deploying, monitoring Arbitrum node on the Akash Blockchain. To deploy other nodes on Akash all the procedure is same but select the right docker image and expose the required ports will make it easy and fizzy.

--

--

Praveen Chaudhary

SDE at India Today| Rust🦀 and Python🐍 enthusiast | Full stack developer | API & App developer| Performance & Acceptance Tester