Become a METAL Blockchain Validator
Contribute to the METAL blockchain by running a validator node. Validators secure the network.
Here is a great tutorial from the official website.
Also check out Marlon's metalstaking.com.
Video Tutorial: Become a METAL Node Validator
Watch my brief video tutorial on setting up a METAL validator node.
Step 1: Sign up for an Amazon Web Services account (or other VPS providers such as contabo.com)
https://portal.aws.amazon.com/billing/signup#/start/email
(You will need an email, mobile number, and credit card)
Under Services, go to Compute/Lightsail:
Lightsail: Launch and Manage Virtual Private Servers
Step 2: Create your Instance
- Choose your location
- Platform is Linux
- OS: Ubuntu 22.04 LTS (or latest version)
- Use the default SSH key or add/create your own
- Choose Plan: will scale as the network becomes more active
- Identify your instance by giving it a name
- And hit Create
Step 3: Assign a Static IP address and attach to your instance
Setup Firewall setting
For METAL, we need port 9651 open
Port 9651 is used for inter-node communication in the METAL network.
Step 4: Connect using the SSH using Terminal (or web interface) and Run METAL install script
wget -nd -m https://raw.githubusercontent.com/MetalBlockchain/metal-docs/master/scripts/metalgo-installer.sh; chmod 755 metalgo-installer.sh; ./metalgo-installer.sh
Note: You will be prompted:
Where is the node installed:
- 1) residential network (dynamic IP)
- 2) cloud provider (static IP)
Enter your connection type [1,2]:
Choose 2 and it will try to detect your public IP:
Detected ‘x.x.x.x’ as your public IP. Is this correct? [y,n]:
Enter y if detected, n if not, and enter your Static IP address attached to your instance when it prompts you.
It will also prompt:
Do you want the RPC port to be accessible to any or only local network interface? [any, local]:
It is safer to use local.
That’s it! Congratulations, you are running a METAL node.
Some useful commands
Check status:
sudo systemctl status metalgo
Make sure it says: "Active: active (running)" Press q or Control + C to stop
Check to see if bootstrapped:
curl -X POST --data '{ "jsonrpc":"2.0", "id" :1, "method" :"info.isBootstrapped", "params": { "chain":"X" } }' -H 'content-type:application/json;' 127.0.0.1:9650/ext/info
(Your node needs to be bootstrapped before validation rewards are given)
Output should have: ”result”:{“isBootstrapped”:true},”id”:1}
Get your NodeID, publicKey, and proofOfPossession:
curl -X POST --data '{ "jsonrpc":"2.0", "id" :1, "method" :"info.getNodeID" }' -H 'content-type:application/json;' 127.0.0.1:9650/ext/info
The output will be as follows:
jsonrpc”:”2.0″,”result”:{“nodeID”:”NodeID-AVLJCKZXMJDug241XuTjep43DQrqPz8Qh ”}"nodePOP":{"publicKey":"0x8............................","proofOfPossession":"0x9..............."}},"id":1}
Copy your NodeID as you will need that to become a METAL Node validator (along with >2000$METAL to stake).
Also, you can find your publicKey and your proofOfPossession key from this command. You will need both of these when you go to validate your node.
Updating Your Metal Node
./metalgo-installer.sh
Stake METAL to Our Validator Nodes
Don't want to run a validator? Delegate (stake) METAL to our nodes using your WebAuth wallet.
Also see Blocksforge's How to stake your METAL BLOCKCHAIN tokens.
-
magic 🇨🇦 NodeID-AVLJCKZXMJDug241XuTjep43DQrqPz8Qh
-
magic 2 🇨🇦 NodeID-2hkaGRAWUQ7ek32rBMPDaMxqHgpAuDix4