Metode de plată Abuse

Protocolul poveștii: Configurarea nodului

03.09.2024, 15:51

Story Protocol este o platformă inovatoare pentru crearea și gestionarea proprietății intelectuale pe blockchain. Fonduri importante precum a16z, Polychain Capital și Samsung Next au investit în proiect, strângând peste 134 de milioane de dolari. Acum aveți ocazia să deveniți un validator în noua rețea de testare a Story.

Story Protocol

Cerințe minime pentru server

  1. Procesor: 4 nuclee

  2. RAM: 8 GB

  3. Stocare: 200 GB

Pregătirea serverului

  1. Închiriați un server de la un furnizor de găzduire de încredere (bineînțeles de la THE.Hosting, și folosiți codul promoțional TAXI pentru a activa o reducere de 15% la prima comandă).

  2. Conectați-vă la server prin MobaXterm cu acces root.

Actualizați și instalați pachetele necesare:

sudo apt update && sudo apt upgrade -y
sudo apt install curl git make jq build-essential gcc unzip wget lz4 aria2 -y

Instalați Story-Geth

Descărcați și instalați Story-Geth:

wget https://story-geth-binaries.s3.us-west-1.amazonaws.com/geth-public/geth-linux-amd64-0.9.2-ea9f0d2.tar.gz
tar -xzvf geth-linux-amd64-0.9.2-ea9f0d2.tar.gz
[ ! -d "$HOME/go/bin" ] && mkdir -p $HOME/go/bin
if ! grep -q "$HOME/go/bin" $HOME/.bash_profile; then
echo 'export PATH=$PATH:$HOME/go/bin' >> $HOME/.bash_profile
fi
sudo cp geth-linux-amd64-0.9.2-ea9f0d2/geth $HOME/go/bin/story-geth
source $HOME/.bash_profile
story-geth version

Instalarea Story

Descărcați și instalați Story:

wget https://story-geth-binaries.s3.us-west-1.amazonaws.com/story-public/story-linux-amd64-0.9.11-2a25df1.tar.gz
tar -xzvf story-linux-amd64-0.9.11-2a25df1.tar.gz
[ ! -d "$HOME/go/bin" ] && mkdir -p $HOME/go/bin
if ! grep -q "$HOME/go/bin" $HOME/.bash_profile; then
echo 'export PATH=$PATH:$HOME/go/bin' >> $HOME/.bash_profile
fi
sudo cp story-linux-amd64-0.9.11-2a25df1/story $HOME/go/bin/story
source $HOME/.bash_profile
story version

Inițializați rețeaua și setați monikerul:

story init --network iliad --moniker MONIKER

Crearea și configurarea fișierelor de servicii

Creați un fișier de serviciu pentru Story-Geth:

sudo tee /etc/systemd/system/story-geth.service > /dev/null <<EOF

[Unit]
Description=Story Geth Client
After=network.target
[Service]
User=root
ExecStart=/root/go/bin/story-geth --iliad --syncmode full
Restart=on-failure
RestartSec=3
LimitNOFILE=4096
[Install]
WantedBy=multi-user.target
EOF


Creați un fișier de servicii pentru Story:

sudo tee /etc/systemd/system/story.service > /dev/null <<EOF
[Unit]
Description=Story Consensus Client
After=network.target
[Service]
User=root
ExecStart=/root/go/bin/story run
Restart=on-failure
RestartSec=3
LimitNOFILE=4096
[Install]
WantedBy=multi-user.target
EOF

Reporniți și porniți serviciile:

sudo systemctl daemon-reload && 
sudo systemctl start story-geth && 
sudo systemctl enable story-geth && 
sudo systemctl start story && 
sudo systemctl enable story && 
sudo systemctl status story-geth && 
sudo systemctl status story

Verificați starea nodurilor

Verificați starea sincronizării nodurilor:

curl localhost:26657/status | jq

Pentru primele 5-10 minute starea este true și 0 block_height este normal. După aceea, blocurile vor începe să crească și starea se va schimba în false.

Instalarea snapshot-ului (opțional)

Opriți nodul:

sudo systemctl stop story

sudo systemctl stop story-geth

Descărcați și instalați snapshot-ul pentru a accelera sincronizarea:

cd $HOME
aria2c -x 16 -s 16 https://vps5.josephtran.xyz/Story/Geth_snapshot.lz4 -o Geth_snapshot.lz4
aria2c -x 16 -s 16 https://vps5.josephtran.xyz/Story/Story_snapshot.lz4 -o Story_snapshot.lz4

Ștergeți datele vechi și extrageți datele noi:

rm -rf ~/.story/story/data
rm -rf ~/.story/geth/iliad/geth/chaindata
sudo mkdir -p /root/.story/story/data
lz4 -d Story_snapshot.lz4 | pv | sudo tar xv -C /root/.story/story/
sudo mkdir -p /root/.story/geth/iliad/geth/chaindata
lz4 -d Geth_snapshot.lz4 | pv | sudo tar xv -C /root/.story/geth/iliad/geth/

Reporniți nodul și verificați starea:

sudo systemctl start story
sudo systemctl start story-geth
curl localhost:26657/status | jq

Crearea unui validator

Exportul datelor validatorului:

story validator export

Obținerea unei chei private:

sudo cat /root/.story/story/config/private_key.txt
story validator export --export-evm-ke

Solicitați jetoane $IP de testare de la robinet și creați validatorul:

story validator create --stake 1000000000000000000 --private-key "your_private_key"

Comenzi utile pentru lucrul cu nodul

Oprirea nodului:

sudo systemctl stop story
sudo systemctl stop story-geth

Repornirea unui nod:

sudo systemctl start story
sudo systemctl start story-get

Verificarea stării:

curl localhost:26657/status | jq

Vizualizarea jurnalelor:

sudo journalctl -u story-geth -f -o cat
sudo journalctl -u story -f -o cat

Concluzie

Ați instalat și configurat cu succes nodul Story Protocol. Puteți monitoriza performanța acestuia și puteți crea validatori care să participe la rețeaua de testare.