Althea - La vision collaborative unique d'Althea pour l'internet fait passer le peering du centre de données au terrain. Elle permet aux communautés de construire des réseaux multipartites plus rapidement et à moindre coût que les modèles de télécommunications traditionnels.
Type de nœud : Réseau principal
CPU : 8
RAM : 16 GO
Stockage : 250 Go
wget -O altheam https://raw.githubusercontent.com/111STAVR111/props/main/Althea/altheam && chmod +x altheam && ./altheam
Préparation du serveur
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
Installation de 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
Version 01.08.24
cd $HOME && mkdir -p go/bin/
git clone https://github.com/AltheaFoundation/althea-L1/
cd $HOME/althea-L1 && git pull
git checkout v1.4.0
make install
Installation de GO 1.21.6
althea init STAVR_guide --chain-id=althea_258432-1
althea config chain-id althea_258432-1
Créer/Restaurer un portefeuille
althea keys add <walletname>
OR
althea keys add <walletname> --recover
Installation de Genesis
wget -O $HOME/.althea/config/genesis.json "https://raw.githubusercontent.com/AltheaFoundation/althea-L1-docs/main/althea-l1-mainnet-genesis.json"
Fixer le prix minimum de l'essence et Peers/Seeds
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = "0.0aalthea"/;" ~/.althea/config/app.toml
external_address=$(wget -qO- eth0.me)
sed -i.bak -e "s/^external_address *=.*/external_address = "$external_address:26656"/" $HOME/.althea/config/config.toml
peers="4d9c73a9e541453b56add8fadf0839fd1442d979@15.235.115.155:17200,a0eca501485cc74e0568973ef502d05023f6500d@
158.247.226.255:17200,ab9a9e6ea747839652dfe4480e66a5eb78a385e8@51.81.167.60:17200,46ad21a616527181ea3d992339268a5a25c771fa
@95.216.38.96:14656"
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.althea/config/config.toml
seeds=""
sed -i.bak -e "s/^seeds =.*/seeds = "$seeds"/" $HOME/.althea/config/config.toml
sed -i 's/max_num_inbound_peers =.*/max_num_inbound_peers = 50/g' $HOME/.althea/config/config.toml
sed -i 's/max_num_outbound_peers =.*/max_num_outbound_peers = 50/g' $HOME/.althea/config/config.toml
Élagage (optionnel)
pruning="custom"
pruning_keep_recent="1000"
pruning_keep_every="0"
pruning_interval="10"
sed -i -e "s/^pruning *=.*/pruning = "$pruning"/" $HOME/.althea/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = "$pruning_keep_recent"/" $HOME/.althea/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = "$pruning_keep_every"/" $HOME/.althea/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = "$pruning_interval"/" $HOME/.althea/config/app.toml
Indexation (facultatif)
indexer="null" &&
sed -i -e "s/^indexer *=.*/indexer = "$indexer"/" $HOME/.althea/config/config.toml
Installation d'addrbook
wget -O $HOME/.althea/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Althea/addrbook.json"
Création d'un fichier de service
sudo tee /etc/systemd/system/althea.service > /dev/null <<EOF
[Unit]
Description=althea
After=network-online.target
[Service]
User=$USER
ExecStart=$(which althea) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
StateSync Althea Mainnet
SNAP_RPC=https://althea.rpc.m.stavr.tech:443
peers="063fec5334040572f55b06f9ff6284d0f2f01ced@althea.peers.stavr.tech:17886"
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.althea/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
sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|1true| ;
s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|1"$SNAP_RPC,$SNAP_RPC"| ;
s|^(trust_height[[:space:]]+=[[:space:]]+).*$|1$BLOCK_HEIGHT| ;
s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|1"$TRUST_HASH"| ;
s|^(seeds[[:space:]]+=[[:space:]]+).*$|1""|" $HOME/.althea/config/config.toml
althea tendermint unsafe-reset-all --home /root/.althea
systemctl restart althea && journalctl -u althea -f -o cat
SnapShot Testnet mis à jour toutes les 5 heures
cd $HOME
apt install lz4
sudo systemctl stop althea
cp $HOME/.althea/data/priv_validator_state.json $HOME/.althea/priv_validator_state.json.backup
rm -rf $HOME/.althea/data
curl -o - -L https://althea.snapshot.stavr.tech/althea-snap.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.althea --strip-components 2
mv $HOME/.althea/priv_validator_state.json.backup $HOME/.althea/data/priv_validator_state.json
wget -O $HOME/.althea/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Althea/addrbook.json"
sudo systemctl restart althea && journalctl -u althea -f -o cat
Démarrage
sudo systemctl daemon-reload
sudo systemctl enable althea
sudo systemctl restart althea && sudo journalctl -fu althea -o cat
Création d'un validateur
althea tx staking create-validator
--commission-rate 0.1
--commission-max-rate 1
--commission-max-change-rate 1
--min-self-delegation "1"
--amount 1000000000000000000aalthea
--pubkey $(althea tendermint show-validator)
--from <wallet>
--moniker="STAVR_guide"
--chain-id althea_258432-1
--gas 300000
--fees 30000000000000000aalthea
--identity=""
--website=""
--details="" -y
Suppression d'un noeud
sudo systemctl stop althea
sudo systemctl disable althea
rm /etc/systemd/system/althea.service
sudo systemctl daemon-reload
cd $HOME
rm -rf althea-chain
rm -rf .althea
rm -rf $(which althea)
Informations
althea status 2>&1 | jq .NodeInfo
althea status 2>&1 | jq .SyncInfo
althea status 2>&1 | jq .ValidatorInfo
Vérifier les journaux de nœuds
sudo journalctl -fu althea -o cat
Vérifier l'état du service
sudo systemctl status althea
Redémarrer le service
sudo systemctl restart althea
Arrêter le service
sudo systemctl stop althea
Démarrage du service
sudo systemctl start althea
Redémarrage/arrêt/activation
sudo systemctl daemon-reload
sudo systemctl disable althea
sudo systemctl enable althea
Votre pair
echo $(althea tendermint show-node-id)'@'$(wget -qO- eth0.me)':'$(cat $HOME/.althea/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')
Nouvelle clé ou Restaurer la clé
althea keys add Wallet_Name
OR
althea keys add Wallet_Name --recover
Vérifier toutes les clés
althea keys list
Vérification de l'équilibre
althea query bank balances althea...addressjkl1yjgn7z09ua9vms259j
Supprimer une clé
althea keys delete Wallet_Name
Exporter une clé
althea keys export wallet
Importer une clé
althea keys import wallet wallet.backup
Modifier le validateur
althea tx staking edit-validator
--new-moniker "Your_Moniker"
--identity "Keybase_ID"
--details "Your_Description"
--website "Your_Website"
--security-contact "Your_Email"
--chain-id althea_258432-1
--commission-rate 0.05
--from Wallet_Name
--gas 350000 -y
Votre adresse Valope
althea keys show Wallet_Name --bech val
Votre adresse Valcon
althea tendermint show-address
Informations sur votre validateur
althea query staking validator altheavaloperaddress......
Informations sur la prison
althea query slashing signing-info $(althea tendermint show-validator)
Unjail
althea tx slashing unjail --from Wallet_name --chain-id althea_258432-1 --gas 350000 -y
Liste des validateurs actifs
althea q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " t " + .description.moniker' | sort -gr | nl
Liste des validateurs inactifs
althea q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_UNBONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " t " + .description.moniker' | sort -gr | nl
Vérifier les clés par rapport au validateur (Gagnant - bon. Perdant - mauvais).
VALOPER=Enter_Your_valoper_Here
[[ $(althea q staking validator $VALOPER -oj | jq -r .consensus_pubkey.key) = $(althea status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "nYou winn" || echo -e "nYou losen"
Retirer toutes les récompenses de tous les validateurs
althea tx distribution withdraw-all-rewards --from Wallet_Name --chain-id althea_258432-1 --gas 350000 -y
Retirer les fonds et les commissions de votre validateur
althea tx distribution withdraw-rewards altheavaloper1amxp0k0hg4edrxg85v07t9ka2tfuhamhldgf8e --from Wallet_Name --gas 350000 --chain-id=althea_258432-1 --commission -y
Déléguer des jetons à votre validateur
althea tx staking delegate Your_altheavalpoer........ "100000000"aalthea --from Wallet_Name --gas 350000 --chain-id=althea_258432-1 -y
Déléguer des jetons à un autre validateur
althea tx staking delegate altheavalpoer........ "100000000"aalthea --from Wallet_Name --gas 350000 --chain-id=althea_258432-1 -y
Transférer des jetons d'un portefeuille à l'autre
althea tx bank send Your_altheaaddress............ altheaaddress........... "1000000000000000000"aalthea --gas 350000 --chain-id=althea_258432-1 -y
Voir toutes les offres
althea query gov proposals
Voir une proposition spécifique
althea query gov proposal 1
Voter pour
althea tx gov vote 1 yes --from Wallet_Name --gas 350000 --chain-id=althea_258432-1 -y
Voter contre
althea tx gov vote 1 no --from Wallet_Name --gas 350000 --chain-id=althea_258432-1 -y
S'abstenir
althea tx gov vote 1 abstain --from Wallet_Name --gas 350000 --chain-id=althea_258432-1 -y
Voter contre avec veto
althea tx gov vote 1 no_with_veto --from Wallet_Name --gas 350000 --chain-id=althea_417834-3 -y
althea tx ibc-transfer transfer transfer channel-2 Your_OSMOaddress............ "100000"aalthea --from Your_Althea_Wallet_Name ---gas 350000 --fees "7000"aalthea --chain-id=althea_258432-1 -y