LAUNCH A FULL NODE WITH ERIGON ON BINANCE SMART CHAIN WITH ERIGON | |||||||
---|---|---|---|---|---|---|---|
Description | A tutorial demonstrating the process of deploying connecting to a remote server running Linux Ubuntu, setting up and running a full nodeonBinance Smart Chain using the Erigon client. | ||||||
Assignee | |||||||
Key Resource | |||||||
Document Status |
|
...
00 PREREQUISITES
0.1 – System Requirements
Specification | Minimum Requirement | Used for Demo |
---|---|---|
Hardware | Linux / Mac / Windows system running the latest OS version | MacBook Pro running MacOS Monterey 12.2 |
SSD / NVMe Storage | ≥ 2 TB | 7.68 TB |
RAM | ≥ 16 GB | 256 GB |
Server OS | Linux OS (64-bit) | Ubuntu Server 20.04.3 |
Network Settings |
|
0.2 – Hardware & Software
Linux, Mac, or Windows computer running the latest operating system (OS) version.
(For Demo: MacBook Pro + MacOS Monterey 12.2)Terminal Emulator / SSH Client
Mac: Terminal || Windows: PuTTy || Linux: Ubuntu Server
Login credentials for the server being accessed.
0.3 –
...
Enabling / Disabling Secure Shell (SSH)
To access the server remotely, the user must enable Secure Shell (SSH) on their home system.
Enter the following command/s in Terminal to enable or / disable SSH on the system:
Code Block language bash sudo systemsetup -setremotelogin on Password: {Admin Password}
0.3.2 Disabling SSH
Following the session - and anytime the server is not being accessed - it is best practice to disable SSH on the home system for ensured security.
Disable SSH by running this Terminal command/s:
Code Block language bash #Enable SSH sudo systemsetup -setremotelogin off #Disable SSH Password: {Admin Password}[?] #System password
...
01 SETTING UP THE
...
REMOTE SERVER
1.1 –
...
Connecting to the Remote Server
...
To access the server with SSH, run the following Terminal command/s (replacing the details inside the {brackets} with your provided credentials):
Code Block language bash ssh {user}@{server.ip} #Server access login Password: {User Password}
...
[?] #Access password #Use [CTRL+D] at anytime to suspend the connection.
1.2 –
...
Optimize the Server for Node
...
Operations
Once you’re connected to the server with SSH, follow the steps below to setup and install the dependencies required for your node.
Update the Ubuntu System and upgrade the OS components.
Code Block language bash sudo apt update #Downloads Linux package updates. sudo && apt upgrade && #Installs upgradeable OS components.
Important: When prompted to enter (Y/n) to continue, type 'y' and hit Enter.
autoremove -y
Install the latest version of GoLang.
Check and remove the existing GoLang version.
Code Block language bash go version #displays the existing version sudo apt purge golang* #removes the existing Go version
Use purge to remove the existing version; then, use wget to install the latest version.
Code Block language bash sudo apt purge golang* #Removes the existing Go version. sudo wget https://go.dev/dl/go1.17.7.linux-amd64.tar.gz #Installs the current version (go1.17.7 as of 2022-02-14). sudo tar -C /usr/local -xzf go1.11.4.linux-amd64.tar.gz #Extracts Go in the /usr/local folder mkdir ~/.go
Set the environmental variables and $PATH location.
Code Block language bash GOROOT=/usr/local/go GOPATH=~/.go PATH=$PATH:$GOROOT/bin:$GOPATH/bin
Update the Go command.
Code Block language bash sudo update-alternatives --install "/usr/bin/go" "go" "/usr/local/go/bin/go" 0 sudo update-alternatives --set go /usr/local/go/bin/go
Confirm Go was updated to the latest version.
Code Block language bash go version
Code Block go version
...
02 Install Dependencies
2.1 Viewing and Verifying the Server’s Components
...
What is Erigon? [Gnosis :: Medium]
How to Run a Fullnode on Binance Smart Chain [Binance Chain Docs]
How to Run a BSC Node on Erigon [Ankr Docs]
Shell Draft
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
:'BINANCE SMART CHAIN FULL NODE WITH ERIGON CLIENT SETUP INSTRUCTIONS' # February 2022 # C. Wooten # Enable admin privileges for the user. sudo rm /var/lib/apt/lists/lock sudo rm /var/cache/apt/archives/lock sudo rm /var/lib/dpkg/lock* sudo dpkg --configure -a # Update the Linux OS. sudo apt update && apt upgrade sudo&& apt automremove -y # Uninstall & reinstall GoLang. go version sudo apt purge golang* sudo apt install snapd | ||||||
Paste code macro | ||||||
| ||||||
sudo apt update && apt upgrade sudo snap install go --classic sudo tar -C /usr/local -xzf go0.00.00linux-amd64.tar.gz # Replace [go0.00.00] with the updated version # Create a new Go directory & set the $PATH location. mkdir ~/.go |
Top-level Updates
The following demonstration will exhibit the step-by-step processes of:
...