Airchains is een krachtig en flexibel framework waarmee je rollups op maat kunt maken met veel mogelijkheden. Het framework ondersteunt EVM, SVM en CosmWasm gebaseerde ontwikkeling, wat brede horizonten opent voor ontwikkelaars.
Node-type: Testnet
Processor: 4 kernen
RAM: 8 GB
Opslag: 150 GB
Gebruik het automatische installatiescript om het proces te vereenvoudigen:
wget -O airchaint https://raw.githubusercontent.com/111STAVR111/props/main/Airchains/airchaint && chmod +x airchaint && ./airchaint
Server voorbereiding
Eerst moet je de pakketten bijwerken en de vereiste afhankelijkheden installeren:
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 installeren
Go moet worden geïnstalleerd om het framework te laten werken:
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
De volgende stap is het bouwen en installeren van het benodigde pakket:
cd $HOME && mkdir -p go/bin/
wget https://github.com/airchains-network/junction/releases/download/v0.1.0/junctiond
chmod +x junctiond
mv junctiond $HOME/go/bin/
junctiond version --long | grep -e commit -e version
Nu kan de node worden geïnitialiseerd:
junctiond init STAVR_guide --chain-id=junction
Een portemonnee aanmaken of herstellen:
junctiond keys add <walletname>
OF
junctiond keys add <walletname> --recover
Na initialisatie moet je het genesis-bestand downloaden:
wget -O $HOME/.junction/config/genesis.json "https://raw.githubusercontent.com/111STAVR111/props/main/Airchains/genesis.json"
sha256sum $HOME/.junction/config/genesis.json
Stel vervolgens de minimale gasprijs in en stel de verbindingen in:
sed -i 's/minimum-gas-prices =.*$/minimum-gas-prices = "0.001amf"/' $HOME/.junction/config/app.toml
external_address=$(wget -qO- eth0.me)
sed -i.bak -e "s/^external_address *=.*/external_address = "$external_address:26656"/" $HOME/.junction/config/config.toml
Peers instellen:
peers="48887cbb310bb854d7f9da8d5687cbfca02b9968@35.200.245.190:26656,2d1ea4833843cc1433e3c44e69e297f357d2d8bd@5.78.118.106:26656,de2e7251667dee5de5eed98e54a58749fadd23d8@34.22.237.85:26656,1918bd71bc764c71456d10483f754884223959a5@35.240.206.208:26656,ddd9aade8e12d72cc874263c8b854e579903d21c@178.18.240.65:26656,eb62523dfa0f9bd66a9b0c281382702c185ce1ee@38.242.145.138:26656,0305205b9c2c76557381ed71ac23244558a51099@162.55.65.162:26656,086d19f4d7542666c8b0cac703f78d4a8d4ec528@135.148.232.105:26656,3e5f3247d41d2c3ceeef0987f836e9b29068a3e9@168.119.31.198:56256,8b72b2f2e027f8a736e36b2350f6897a5e9bfeaa@131.153.232.69:26656,6a2f6a5cd2050f72704d6a9c8917a5bf0ed63b53@93.115.25.41:26656,e09fa8cc6b06b99d07560b6c33443023e6a3b9c6@65.21.131.187:26656"
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.junction/config/config.toml
Een servicebestand maken:
sudo tee /etc/systemd/system/junctiond.service > /dev/null <<EOF
[Unit]
Description=junction
After=network-online.target
[Service]
User=$USER
ExecStart=$(which junctiond) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
Toepassen en uitvoeren:
sudo systemctl daemon-reload
sudo systemctl enable junctiond
sudo systemctl restart junctiond && sudo journalctl -fu junctiond -o cat
Snapshot kan worden gebruikt om knooppunten te synchroniseren. Het wordt elke 5 uur bijgewerkt:
cd $HOME
sudo systemctl stop junctiond
curl -o - -L https://airchains-t.snapshot.stavr.tech/airchain-snap.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.junction --strip-components 2
sudo systemctl restart junctiond && journalctl -fu junctiond -o cat
De netwerkstatus kan worden gesynchroniseerd met StateSync:
SNAP_RPC=https://airchains.rpc.t.stavr.tech:443
SEEDS="bb26fc8cef05cee75d4cae3f25e17d74c7913967@airchains-t.seed.stavr.tech:4476"
cp $HOME/.junction/data/priv_validator_state.json $HOME/.junction/priv_validator_state.json.backup
sed -i -e "/seeds =/ s/= .*/= "$SEEDS"/" $HOME/.junction/config/config.toml
LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height);
BLOCK_HEIGHT=$((LATEST_HEIGHT - 1000));
TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash)
echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH
Informatie over knooppuntstatus:
junctiond status 2>&1 | jq .NodeInfo
Logboeken bekijken:
sudo journalctl -fu junctiond -o cat
Servicebeheer:
sudo systemctl restart junctiond
Een nieuwe sleutel maken of herstellen:
junctiond keys add Wallet_Name
OF
junctiond keys add Wallet_Name --recover
Een validator aanmaken:
junctiond tx staking create-validator $HOME/.junction/validator.json --from WalletName --fees 200amf --chain-id junction -y
Het platform ondersteunt veel handige tools en services om je node efficiënt te beheren en veilig te laten werken.