💾Node Installation

Pylons Mainnet guide

  • Minimum hardware requirements:

Node TypeCPURAMStorage

Mainnet

8

16GB

250GB

1) Auto_install script

wget -O pylonsm https://raw.githubusercontent.com/111STAVR111/props/main/Pylons/pylonsm && chmod +x pylonsm && ./pylonsm

2) Manual installation

Preparing the server

sudo apt update && sudo apt upgrade -y
sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential bsdmainutils git make ncdu gcc git jq chrony liblz4-tool -y

GO 1.21.6

ver="1.21.6"
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz"
rm "go$ver.linux-amd64.tar.gz"
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
source $HOME/.bash_profile
go version

Build 02.03.23

cd $HOME && mkdir -p go/bin/
git clone https://github.com/Pylons-tech/pylons
cd pylons
git checkout v1.1.4
make build && make install

pylonsd version --long | grep -e commit -e version

  • version: 1.1.4

  • commit: 5d0e6bcfce19e17b777caf94fa6328e78adb6474

Initiation

pylonsd init STAVR_guide --chain-id=pylons-mainnet-1
pylonsd config chain-id pylons-mainnet-1

Create/recover wallet

pylonsd keys add <walletname>
           OR
pylonsd keys add <walletname> --recover

Download Genesis

curl -s https://raw.githubusercontent.com/Pylons-tech/pylons/main/networks/pylons-mainnet-1/genesis.json > ~/.pylons/config/genesis.json

sha256sum $HOME/.pylons/config/genesis.json

  • c985e1c989c1cb864a4a6c7284aac0c21cfe5a400b3216be8b1fb50b77f02322

Set up the minimum gas price and Peers/Seeds/Filter peers/MaxPeers

sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0.0ubedrock\"/;" ~/.pylons/config/app.toml
sed -i -e "s/^filter_peers *=.*/filter_peers = \"true\"/" $HOME/.pylons/config/config.toml
external_address=$(wget -qO- eth0.me) 
sed -i.bak -e "s/^external_address *=.*/external_address = \"$external_address:26656\"/" $HOME/.pylons/config/config.toml
peers=""
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$peers\"/" $HOME/.pylons/config/config.toml
seeds=""
sed -i.bak -e "s/^seeds =.*/seeds = \"$seeds\"/" $HOME/.pylons/config/config.toml
sed -i 's/max_num_inbound_peers =.*/max_num_inbound_peers = 50/g' $HOME/.pylons/config/config.toml
sed -i 's/max_num_outbound_peers =.*/max_num_outbound_peers = 50/g' $HOME/.pylons/config/config.toml

Pruning (optional)

pruning="custom"
pruning_keep_recent="1000"
pruning_keep_every="0"
pruning_interval="10"
sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" $HOME/.pylons/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"$pruning_keep_recent\"/" $HOME/.pylons/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = \"$pruning_keep_every\"/" $HOME/.pylons/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"$pruning_interval\"/" $HOME/.pylons/config/app.toml

Indexer (optional)

indexer="null" &&
sed -i -e "s/^indexer *=.*/indexer = \"$indexer\"/" $HOME/.pylons/config/config.toml

Download addrbook

wget -O $HOME/.pylons/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Pylons/addrbook.json"

Create a service file

sudo tee /etc/systemd/system/pylonsd.service > /dev/null <<EOF
[Unit]
Description=Pylons
After=network-online.target

[Service]
User=$USER
ExecStart=$(which pylonsd) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

StateSync Pylons Mainnet

SOON

SnapShot Mainnet updated every 5 hours

SOON

Start

sudo systemctl daemon-reload
sudo systemctl enable pylonsd
sudo systemctl restart pylonsd && sudo journalctl -fu pylonsd -o cat

Create validator

pylonsd tx staking create-validator \
--amount 1000000ubedrock \
--from <walletname> \
--commission-max-change-rate "0.10" \
--commission-max-rate "0.20" \
--commission-rate "0.10" \
--min-self-delegation "1" \
--identity="" \
--details="" \
--website="" \
--pubkey $(pylonsd tendermint show-validator) \
--moniker STAVR_guide \
--chain-id pylons-mainnet-1 \
--gas="auto" \
--fees 100ubedrock -y

Monitoring

You can set up your node status alarm here - Monitoring

Security

You can create secure management of your wallet and your node by following this links.

TMKMS Wallet Security

Delete node

sudo systemctl stop pylonsd
sudo systemctl disable pylonsd
rm /etc/systemd/system/pylonsd.service
sudo systemctl daemon-reload
cd $HOME
rm -rf .pylons
rm -rf pylons
rm -rf $(which pylonsd)

Last updated