There are a lot of things to configure to set up an 0L validator. Easy Mode makes assumptions.
You can optionally do Hard Mode, and build from source, and write your own config files.
- A cloud virtual machine running Linux Ubuntu 20.4, with 16GB Ram, and 4 Cores.
Settings for the host:
- You need to set a static IP address for that host.
- You need to open ports 6179, 6180, 8080, 3030 on the host
Export the ~/bins
directory to be in search path, and download the binaries with a script.
export PATH=$PATH:~/bin && echo export PATH=\$PATH:~/bin >> ~/.bashrc
curl -sL https://raw.githubusercontent.com/OLSF/libra/main/ol/util/install.sh | bash
Recommended multiplexer is tmux
.
> tmux
# or `tmux a` to reattach to a previous session
> tmux a
From within your tmux
instance:
onboard keygen
Preferably use a template from a url (usually on another node on the network). Something like:
onboard val -u http://[their-ip-address]
NOTE: Don't forget http://
Your tower
app will produce a proof which is needed to create an account. This will take 10-15 minutes.
The start
subcommand will run pilot
app which continuously checks node and tower state and changes nodes.
# Restore from the latest epoch snapshot instead of syncing the entire chain
> ol restore
# start all 0L services and restore chain from archive
> ol start
# press <ctrl+b> then <d> to detach from tmux without stopping the app. Reattach with `tmux a`
Go to: http://[your-ip-address]:3030
Have someone (with GAS) submit the account creation on chain.
txs create-validator -u http://[your-ip-address]
More details here: (create_account_on_chain.md)