🐼
Kiln Testnet Staking Guide: Teku + Geth
  • Kiln Testnet Staking Guide: Teku + Geth
  • Universal Firewall
  • Geth Installation
  • Generate Validator Keys
  • Metamask - Kiln ETH
  • Teku Installation
  • Kiln Launchpad
  • How Much Is Enough?
Powered by GitBook
On this page
  • Prerequisites
  • Update The System:
  • Dependent Packages
  • Example: git --version
  • Install Prerequisites:
  • Download Merge Configuration Files:
  • Change Directory:
  • Generate JSON Web Token (JWT):
  • Install Geth
  • Clone Geth Repository:
  • Change Directory:
  • Make Geth:
  • Result:
  • Change Directory (up one into the kiln directory):
  • Configure Initial State:
  • Result:
  • Start Geth:
  • Result:

Geth Installation

PreviousUniversal FirewallNextGenerate Validator Keys

Last updated 3 years ago

Prerequisites

Begin by updating all packages currently installed on your system

Update The System:

sudo apt update && sudo apt upgrade

It may stop and ask you to confirm the updates. Type Y, then press ENTER

Dependent Packages

You need to have the following packages installed: git, make, go, gcc

You can check if a package is installed by running the command, followed by --version

Example: git --version

In this example git is currently installed and will respond with the version number

Install Prerequisites:

If any of the packages are not installed, you can install using the following commands:

sudo apt install git sudo apt install make sudo apt install golang-go

Note: gcc should come preinstalled on Ubuntu 20.04

Once all 4 packages are installed, you can continue with the installation.

Download Merge Configuration Files:

git clone https://github.com/eth-clients/merge-testnets.git

Change Directory:

cd merge-testnets/kiln

Generate JSON Web Token (JWT):

The JWT allows the Execution Layer and Consensus Layer to securely communicate.

openssl rand -hex 32 | tr -d "\n" > "/tmp/jwtsecret"

Install Geth

Clone Geth Repository:

git clone -b merge-kiln-v2 https://github.com/MariusVanDerWijden/go-ethereum.git

Change Directory:

cd go-ethereum 

Make Geth:

make geth

Result:

Change Directory (up one into the kiln directory):

cd ..

Configure Initial State:

./go-ethereum/build/bin/geth init genesis.json  --datadir "geth-datadir"

Result:

Start Geth:

./go-ethereum/build/bin/geth --datadir "geth-datadir" --override.terminaltotaldifficulty 20000000000000 --http --http.api="engine,eth,web3,net,debug" --http.corsdomain "*" --networkid=1337802 --syncmode=full --authrpc.jwtsecret=/tmp/jwtsecret --bootnodes "enode://c354db99124f0faf677ff0e75c3cbbd568b2febc186af664e0c51ac435609badedc67a18a63adb64dacc1780a28dcefebfc29b83fd1a3f4aa3c0eb161364cf94@164.92.130.5:30303" console

Result:

Geth should continue syncing in that terminal window. Allow this window to continue syncing. If you stop the process or close the window, Geth will stop syncing.

Next step is to generate the validator keys we will be using for Kiln.