Register your node
Network details
Here are the coordinates to the Arthera Mainnet
- RPC Endpoint:
https://rpc.arthera.net
- WebSocket Endpoint:
wss://ws.arthera.net
- Chain ID:
10242
- Explorer: https://explorer.arthera.net
- Wallet: https://wallet.arthera.net
Running a validator node
1. Get a Linux machine that meets the requirements
2. Install Docker
See the Docker Installation Guide
3. Pull the latest Arthera node image
docker pull arthera/arthera-node:1.2.1-rc.3
4. Create a folder to hold your Arthera node data
mkdir $HOME/arthera
5. Create a wallet for your validator
docker run -it -v $HOME/arthera:/data arthera/arthera-node:1.2.1-rc.3 account new
Enter a password for the new account and you will get an output similar to the one below:
Your new key was generated
Public address of the key: 0x0bEdA7aAB9cFAa963443e27e30a8F04A79f099C3
Path of the secret key file: /data/keystore/UTC--2023-07-18T21-48-46.572871703Z--088dc563b8184107010c947c4b94bbc856992985
- You can share your public address with anyone. Others need it to interact with you.
- You must NEVER share the secret key with anyone! The key controls access to your funds!
- You must BACKUP your key file! Without the key, it's impossible to access account funds!
- You must REMEMBER your password! Without the password, it's impossible to decrypt the key!
6. Create the validator identity
docker run -it -v $HOME/arthera:/data arthera/arthera-node:1.2.1-rc.3 validator new
Enter a password for the validator account and you will get an output similar to the one below:
Your new key was generated
Public key: 0xc004c1edab0ed2b77a316c81114177bb071bbc94ec2674a3ccb42c59fe539dd301c1868b919a7cd208d1e8798af141cf2fc41994c35cf4dfc3dd7df74f431f086022
Path of the secret key file: /data/keystore/validator/c004c1edab0ed2b77a316c81114177bb071bbc94ec2674a3ccb42c59fe539dd301c1868b919a7cd208d1e8798af141cf2fc41994c35cf4dfc3dd7df74f431f086022
- You can share your public key with anyone. Others need it to validate messages from you.
- You must NEVER share the secret key with anyone! The key controls access to your validator!
- You must BACKUP your key file! Without the key, it's impossible to operate the validator!
- You must REMEMBER your password! Without the password, it's impossible to decrypt the key!
7. Register your validator
This step requires that you submit the validator's wallet address created in step 5. Create a wallet for your validator and the Public Key created in 6. Create the validator identity to Arthera, so we can delegate the required coins to your validator (the minimum stake of 100,000 AA).
8. View your validator in the Arthera Wallet
While you wait for us to delegate the required coins to your validator, you can register your account it in the Arthera wallet.
- Configure MetaMask to connect to the Arthera Mainnet (see Network details)
- Import you wallet JSON file (which name starts with UTC) created in step 5. Create a wallet for your validator into Metamask
- Go to
https://wallet.arthera.net
- Login with Metamask and select the imported account
- Under the Account menu you should see your new validator (after we delegate the required coins to it)
9. Create a password file
Run the command below and replace YOUR_PASSWORD
with the password entered in step 6. Create the validator identity
echo "YOUR_PASSWORD" | sudo tee $HOME/arthera/keystore/validator/password
10. Generate your node key
Run the command below to generate your unique node key:
docker run -it -v $HOME/arthera:/data arthera/arthera-node:1.2.1-rc.3 p2p genkey /data/node.key
Check to see if the key was generated successfully by running:
docker run -it -v $HOME/arthera:/data arthera/arthera-node:1.2.1-rc.3 p2p enodeurl /data/node.key
You should see an output similar to the one below:
enode://f2927b8b1bc1b05997acf60f713cda3c776300cdac52b80d8dbfb2b434ef0e7283f8d3ca891d832bab3927b03c52593e575d48d9916804af5bf66a75b5b1288a@127.0.0.1:6534
The output above is your node's enode
URL.
11. Download the latest Mainnet genesis file
Run the command below to download the mainnet.g
genesis file:
curl -o $HOME/arthera/mainnet.g https://s3.eu-central-1.amazonaws.com/release.arthera-net/epoch8131.g
12. Test your node
Replace the following variables and run the command below to start your validator:
YOUR_PUBLIC_IP
with your actual Public IP address.ID_FROM_STEP_8
with the Validator ID obtained from step 8. View your validator in the Arthera WalletVALIDATOR_PUBLIC_KEY_FROM_STEP_6
with the Public key of your validator from step 6. Create the validator identity
docker pull arthera/arthera-node:1.2.1-rc.3
docker run --name arthera-validator --network host -v $HOME/arthera:/data arthera/arthera-node:1.2.1-rc.3 \
--port 6533 \
--genesis /data/mainnet.g --genesis.allowUnknown \
--syncmode full \
--nodekey /data/node.key \
--verbosity 4 \
--cache 4000 \
--nat extip:YOUR_PUBLIC_IP \
--validator.id ID_FROM_STEP_8 \
--validator.pubkey "VALIDATOR_PUBLIC_KEY_FROM_STEP_6" \
--validator.password "/data/keystore/validator/password"
Check the output to have the following info:
INFO [12-25|06:00:50.553] Applying genesis state
INFO [12-25|06:00:50.553] - Reading epochs
INFO [12-25|06:00:50.554] - Reading blocks
INFO [12-25|06:00:50.556] - Reading EVM data
INFO [12-25|06:00:50.815] Applied genesis state name=main id=10242 genesis=0x993417afae15968aa185376537e2c633844b5e624444812b64e0241a3289d8be
INFO [12-25|06:00:50.928] Bootnode url=enode://c4138ac86c0cd7607231601afeb24d2d0b7aaf4c8e1de28978aab6fdbca1af2ec41307b33529e64da72b9e592782840aa1552bda5b1f700eefbdba2a662c4ecc@51.91.11.86:6533
INFO [12-25|06:00:50.928] Bootnode url=enode://91a72a01ba3eb7994c681d2e0212a8239d51fffe9dfdb38af373af2cb9612bf1f2f9514fea1b099a2d1e2bb83afa9c4487af7c7f05bcb5f0c6c63f8f757c7fcd@51.83.129.213:6533
INFO [12-25|06:00:50.928] Bootnode url=enode://c3c05932654c6a92a8f544857491073f96715fa394476edee07931bf4da00d76eeb1b256d0a68d0404a8b37e8dec7e038c18f1a4cdbde0da91ef45d04c243de1@57.128.172.20:6533
INFO [12-25|06:00:50.928] Bootnode url=enode://0ccae9dd3d8f6033929c9cf8371c4dd96f27c602e2cf9b363196a22557f8f36ca02b6ee64d20d230cb6b60d4a473066f9a4e6b0551d6ca67c797250c9bb3db20@217.182.60.41:6533
INFO [12-25|06:00:50.929] Bootnode url=enode://946ec02182a11adb2c93851303ca8c6a6ef5041d84e7f695f3dd6a574f1891b879c5bde1c19cafa1ad91a9057e7d6830b8def76dede45bda350a9deb4e0c152c@51.195.103.104:6533
....
INFO [08-12|05:23:22.805] New block ....
INFO [08-12|05:23:22.805] New block ....
If you get messages like New block
it means your node is syncing and working properly.
You can now stop the node with Ctrl+C
, clean the output folder with rm -rf $HOME/arthera/arthera-node $HOME/arthera/chaindata
and remove the docker container with docker container rm arthera-validator
and move to the next step.
13. Run your node
Replace the following variables and run the command below to start your validator:
YOUR_PUBLIC_IP
with your actual Public IP address.ID_FROM_STEP_8
with the Validator ID obtained from step 8. View your validator in the Arthera WalletVALIDATOR_PUBLIC_KEY_FROM_STEP_6
with the Public key of your validator from step 6. Create the validator identity
docker container rm arthera-validator # remove any existing containers just to be sure
docker pull arthera/arthera-node:1.2.1-rc.3
docker run -d --restart unless-stopped --name arthera-validator --network host -v $HOME/arthera:/data arthera/arthera-node:1.2.1-rc.3 \
--port 6533 \
--genesis /data/mainnet.g --genesis.allowUnknown \
--syncmode full \
--gcmode full \
--nodekey /data/node.key \
--metrics --metrics.addr 127.0.0.1 \
--verbosity 3 \
--cache 4000 \
--nat extip:YOUR_PUBLIC_IP \
--validator.id ID_FROM_STEP_8 \
--validator.pubkey "VALIDATOR_PUBLIC_KEY_FROM_STEP_6" \
--validator.password "/data/keystore/validator/password"
Check the node was started with docker ps
:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d6ac0f5fdf14 arthera/arthera-node:1.2.1-rc.3 "arthera-node --data…" 2 seconds ago Up 1 second arthera-validator
and check the logs of the container with docker logs -f arthera-validator
. You should see the following output:
INFO [08-12|05:57:39.972] New block ....
INFO [08-12|05:57:39.972] New block ....
INFO [08-12|05:57:39.972] New block ....
INFO [08-12|05:57:39.973] New block ....
INFO [08-12|05:57:39.973] New block ....
INFO [08-12|05:57:39.973] New block ....
Troubleshooting
1. Node is not syncing
The most common problems are firewalls and incorrectly provided external IP address.
2. Cleanup node data and restart validator
- Stop the doocker container with
docker container stop arthera-validator
- Remove the database with
rm -rf $HOME/arthera/arthera-node $HOME/arthera/chaindata
- Start the docker container with
docker container start arthera-validator