Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
LAUNCHING

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

C. J. (Unlicensed)

Key Resource

Node Provider Demo - 10 Feb 2022 (Meeting Recording)

Document Status

Status
colourRed
titleDRAFT

...

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

  • SSH enabled

  • TDP / UDP traffic enabled

0.2 – Hardware & Software

  1. Linux, Mac, or Windows computer running the latest operating system (OS) version.
    (For Demo: MacBook Pro + MacOS Monterey 12.2)

  2. Terminal Emulator / SSH Client

  3. 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.

  1. Enter the following command/s in Terminal to enable or / disable SSH on the system:

    Code Block
    languagebash
    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.

  1. Disable SSH by running this Terminal command/s:

    Code Block
    languagebash
      
      #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

...

  1. To access the server with SSH, run the following Terminal command/s (replacing the details inside the {brackets} with your provided credentials):

    Code Block
    languagebash
    ssh {user}@{server.ip}
      #Server access login
      
    Password: {User Password}

...

  1.  [?]
      #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.

  1. Update the Ubuntu System and upgrade the OS components.

    Code Block
    languagebash
    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 

  1. Install the latest version of GoLang.

    1. Check and remove the existing GoLang version.

      Code Block
      languagebash
      go version  
        #displays the existing version
      sudo apt purge golang*  
        #removes the existing Go version

    2. Use purge to remove the existing version; then, use wget to install the latest version.

      Code Block
      languagebash
      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

    3. Set the environmental variables and $PATH location.

      Code Block
      languagebash
      GOROOT=/usr/local/go
      GOPATH=~/.go
      PATH=$PATH:$GOROOT/bin:$GOPATH/bin

    4. Update the Go command.

      Code Block
      languagebash
      sudo update-alternatives --install "/usr/bin/go" "go" "/usr/local/go/bin/go" 0
      sudo update-alternatives --set go /usr/local/go/bin/go
    5. Confirm Go was updated to the latest version.

      Code Block
      languagebash
      go version

  2. Code Block
    go version

...

02 Install Dependencies

2.1 Viewing and Verifying the Server’s Components

...

Shell Draft

Code Block
languagebash
:'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
languagebash
themeRainbow
titleSetting Up an Erigon Node
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:

...