Prerequisites
Prerequisites for installing and running Initia
Hardware/OS Requirements
The minimum hardward requirements for running an Initia node:
CPU: 4 cores
Memory: 16GB RAM
Disk: 1 TB SSD Storage
Bandwidth: 100 Mbps
It is recommended to use Linux OS to run Initia nodes. Running Initia node has not been tested on other OS environments, and same environment settings and running conditions cannot be guaranteed.
Node Operators guide is also based on Ubuntu Linux 20.04 LTS or Ubuntu Linux 22.04 LTS.
Installing Initia can be done in 2 different ways.
Downloading the source and directly building Initia. (Go to Building Initia)
Using prebuilt binaries (Go to Using prebuilt Initia)
Oracle Requirements
Running an Initia node requires you to run an oracle sidecar as well.
You can install the oracle sidecar binary via one of the following:
Building from source (Go to Building From Source)
Prebuilt binaries (Go to Binaries)
For complete information on the oracle, please see Oracle
Building Initia
This section describes how to run Initia by downloading the source and building it.
Build-essential package
To build Initia, essential utilities must be installed. These utilities are provided on Linux distribution, and package components for Ubuntu can be found in the below link:
sudo apt install -y build-essential
Golang
golang v1.19 or above is required. Refer to the link to find out how to install golang.
The below command should print the current go version
.
make --version # 3.8 or later
go version # 1.19 or later
Initia
Clone and build the Initia source code repo.
# please execute following commands to access private repos
# $ gh auth login
# or
# $ git config --global url."https://x-access-token:{personal-access-token}@github.com/".insteadOf "https://github.com/"
# $ export GOPRIVATE="github.com/initia-labs/initiavm,github.com/initia-labs/OPinit"
git clone git@github.com:initia-labs/initia.git
cd initia
git checkout $TAG # Tag the desired version
make install
The below command line can be executed to check if the install has been successful.
If initiad
is not found, run go env
and check if $GOBIN or $GOPATH/bin directories are included in $PATH.
initiad version # Confirm that the correct version is installed
Using prebuilt Initia
You can download pre-built binaries for each of Testnet or Mainnet(TBA) from the network repository. Download the compression file for your OS.
Below is an example of bash command line.
wget https://initia.s3.ap-southeast-1.amazonaws.com/${CHAINID}/initia_${VERSION}_${OS}_${ARCH}.tar.gz
tar -xzf ${CHAINID}/initia_${VERSION}_${OS}_${ARCH}.tar.gz && rm ${CHAINID}/initia_${VERSION}_${OS}_${ARCH}.tar.gz
mv initiad /usr/bin
mv libinitia.${ARCH}.so /usr/lib
initiad version # Confirm tha the correct version is installed
ldd `which initiad` # Confirm that libinitia.x86_64.so is correctly linked
Setup Environment
On Linux, the number of files that can be opened in a single process can be set on configuration. Many Linux distributions limit the number to 1024, which is smaller than the number of files opened by Initia. To use Initia, this configuration has to be modified.
The current value can be checked with ulimit -n
command, and root /etc/security/limits.conf
file can be modified to change this parameter. By adding the below to limits.conf
the maximum for all accounts can be increased to 65535. To only modify the number for the account running Initia, enter the account name instead of *
.
* soft nofile 65535
* hard nofile 65535
Last updated