Objective here is to deploy an Sepolia
testnet node and merge it with
lighthouse testnet as a working Sepolia
Eth2
testnet.
Deploying Eth1 Sepolia Node
To get start, first off we will deploy a geth node as instructed in following post: https://furqansiddiqui.com/2023/deploying-an-eth1-geth-node/
I personally prefer to run background processes like geth
and lighthouse
in tmux
instead of a service but this is up to your taste. You can get started by creating a user, preferably called sepolia
using adduser sepolia
command.
Start a tmux
screen to run geth
with custom ports:
tmux new -s geth
geth --sepolia --port 30313 --http --http.port 18545 --http.api eth,net,web3,debug --ws --ws.port 18546 --authrpc.port 18551
If you are unfimiliar with tmux
, you can simply detach from the screen by pressing ctrl+b
and then typing :detach
to exit from tmux
screen without terminating the process.
If you plan to run multiple Ethereum networks in a single server (i.e. a sepolia
testnet and mainnet
), you are therefore required to use custom ports for network and HTTP/RPC functionalities. Ethereum’s default port is 30303
which should be open for all communications, so it can be discovered by other peers.
Deploying Eth2 Sepolia Node
Instructions to install lighthouse
can be found here: https://furqansiddiqui.com/2023/deploying-an-eth2-lighthouse-node/
Start a tmux
screen to run lighthouse
with custom ports:
tmux new -s lighthouse
lighthouse beacon_node --network sepolia --port 19001 --http --http-port 15052 --execution-endpoints http://127.0.0.1:18551 --jwt-secrets ~/.ethereum/sepolia/geth/jwtsecret
and then :detach
simply.
Attach to Console
Simply use following command to attach to geth
console:
geth --sepolia attach
Important Notes
- You can return to your
tmux
sessions using following commands:tmux attach -t geth
tmux attach -t lighthouse
geth
command’s default data directory is~/.ethereum
while same forlighthouse
is~/.lighthouse
. Usels -a
inside user’s home directory to see.- Your
geth
client will not sync, until consensus client which islighthouse
has synced. During this while, you will constantly see following message ingeth
logs:
beacon client online, but never received consensus updates.
- A neat trick to check if your deployed node is syncing properly is to check the size of data directories. For example,
du -h ~/.lighthouse
with interval of few seconds or a minute will help you determine if sync process is going on.
Leave a Reply