<?xml version="1.0" encoding="utf-8" ?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:tt="http://teletype.in/" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/"><title>Warrior_Node</title><subtitle>Linux expert. BlockChain tester /testnet master\</subtitle><author><name>Warrior_Node</name></author><id>https://teletype.in/atom/warrior_node</id><link rel="self" type="application/atom+xml" href="https://teletype.in/atom/warrior_node?offset=0"></link><link rel="alternate" type="text/html" href="https://teletype.in/@warrior_node?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=warrior_node"></link><link rel="next" type="application/rss+xml" href="https://teletype.in/atom/warrior_node?offset=10"></link><link rel="search" type="application/opensearchdescription+xml" title="Teletype" href="https://teletype.in/opensearch.xml"></link><updated>2026-10-23T17:07:22.174Z</updated><entry><id>warrior_node:ollo</id><link rel="alternate" type="text/html" href="https://teletype.in/@warrior_node/ollo?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=warrior_node"></link><title>OLLO - Installation Guide , In the Ukrainian language!</title><published>2022-10-15T21:53:33.363Z</published><updated>2022-10-15T21:53:33.363Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img4.teletype.in/files/fa/62/fa62b56b-6dcd-456a-a997-de9686ed5b6f.png"></media:thumbnail><summary type="html">&lt;img src=&quot;https://img1.teletype.in/files/84/37/8437b8f8-6c00-4395-ba96-23491766c587.jpeg&quot;&gt;OLLO Station - Мережа нового покоління та DeFi-центр, створені для автоматизації та сталого розвитку. Автоматизоване управління портфелем і спрощена торгівля книгою замовлень у Cosmos..</summary><content type="html">
  &lt;figure id=&quot;3ztg&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/84/37/8437b8f8-6c00-4395-ba96-23491766c587.jpeg&quot; width=&quot;1920&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;lY3D&quot;&gt;&lt;strong&gt;OLLO Station&lt;/strong&gt; - Мережа нового покоління та DeFi-центр, створені для автоматизації та сталого розвитку. Автоматизоване управління портфелем і спрощена торгівля книгою замовлень у Cosmos..&lt;/p&gt;
  &lt;p id=&quot;dYiL&quot;&gt;Для реєстрації участі в тестеті необхідно зайти в канал #validator-submission і виконати дії, що запитуються командою &lt;strong&gt;/apply - &lt;/strong&gt;вас перекине у бота та там вам потрібно буде дати відповідь на 11-ть запитань&lt;/p&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;4oDB&quot; data-align=&quot;center&quot;&gt;Зміст&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;1j6h&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;1.  Підготовка сервера&lt;br /&gt;2. Встановлення ноди&lt;br /&gt;3. State sync (опціонально)&lt;br /&gt;4. Створення валідатора&lt;br /&gt;5. Видалення ноди&lt;br /&gt;6. Корисні команди&lt;/strong&gt;&lt;/p&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;smy4&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;1.Підготовка сервера&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;Lwkr&quot;&gt;Рекомендації по залізу: 4&lt;strong&gt; CPU, 6 GB RAM, 120 GB SSD&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;M8Qq&quot;&gt;Оновлюємо пакети&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;K3eA&quot;&gt;sudo apt update &amp;amp;&amp;amp; sudo apt upgrade -y&lt;/pre&gt;
  &lt;p id=&quot;0Fnu&quot;&gt;Встановлюємо інструменти розробника та необхідні пакети&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;3YBk&quot;&gt;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&lt;/pre&gt;
  &lt;p id=&quot;YgsQ&quot;&gt;Встановлюємо GO &lt;strong&gt;однією командою&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;sgfi&quot;&gt;wget https://go.dev/dl/go1.18.4.linux-amd64.tar.gz; \
rm -rv /usr/local/go; \
tar -C /usr/local -xzf go1.18.4.linux-amd64.tar.gz &amp;amp;&amp;amp; \
rm -v go1.18.4.linux-amd64.tar.gz &amp;amp;&amp;amp; \
echo &amp;quot;export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin&amp;quot; &amp;gt;&amp;gt; ~/.bash_profile &amp;amp;&amp;amp; \
source ~/.bash_profile &amp;amp;&amp;amp; \
go version&lt;/pre&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;B9pi&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;2.Встановлення ноди&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;3DYr&quot;&gt;Клонуємо репозиторій проекту з нодою, переходимо в папку з проектом та збираємо бінарні файли&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;BYNM&quot;&gt;cd
git clone https://github.com/OLLO-Station/ollo
cd ollo
make install&lt;/pre&gt;
  &lt;p id=&quot;ixaD&quot;&gt;Перевіряємо версію&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;aEBd&quot;&gt;ollod version&lt;/pre&gt;
  &lt;p id=&quot;XUIK&quot;&gt;Висновок має показати &lt;strong&gt;latest&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;s4J1&quot;&gt;Створюємо змінні&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;pnIz&quot;&gt;MONIKER=вводим свое имя
CHAIN_ID=ollo-testnet-0&lt;/pre&gt;
  &lt;p id=&quot;W3lr&quot;&gt;Зберігаємо змінні, перезавантажуємо .bash_profile та перевіряємо значення змінних&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;Wqfo&quot;&gt;echo &amp;quot;export MONIKER=&amp;quot;${MONIKER}&amp;quot;&amp;quot; &amp;gt;&amp;gt; $HOME/.bash_profile
echo &amp;quot;export CHAIN_ID=&amp;quot;${CHAIN_ID}&amp;quot;&amp;quot; &amp;gt;&amp;gt; $HOME/.bash_profile

source $HOME/.bash_profile

echo -e &amp;quot;\nmoniker &amp;gt; ${MONIKER}.\n&amp;quot;
echo -e &amp;quot;\nchain_id &amp;gt; ${CHAIN_ID}.\n&amp;quot;&lt;/pre&gt;
  &lt;p id=&quot;8VWs&quot;&gt;Ініціалізуємо ноду&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;6ryq&quot;&gt;ollod init $MONIKER --chain-id $CHAIN_ID&lt;/pre&gt;
  &lt;p id=&quot;6cS6&quot;&gt;Створюємо гаманець&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;JJqG&quot;&gt;ollod keys add $MONIKER&lt;/pre&gt;
  &lt;p id=&quot;EkPq&quot;&gt;Зберігаємо мнемонік фразу в надійному місці!&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(323, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;DNzW&quot;&gt;Якщо ви брали участь у попередніх тестетах, відновлюємо гаманець командою та вводимо менімонік фразу&lt;/p&gt;
    &lt;pre data-lang=&quot;bash&quot; id=&quot;ijxt&quot;&gt;ollod keys add $MONIKER --recover&lt;/pre&gt;
  &lt;/section&gt;
  &lt;p id=&quot;XKi1&quot;&gt;Запитуємо токени з крана у дискорді &lt;a href=&quot;https://discord.gg/uc4GqhkR&quot; target=&quot;_blank&quot;&gt;#testnet-faucet&lt;/a&gt; , командою !request вашгаманець&lt;/p&gt;
  &lt;p id=&quot;3M2X&quot;&gt;Для зручності створюємо змінну з адресою гаманця&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;dDpO&quot;&gt;WALLET=вводимо адресу гаманця
echo &amp;quot;export WALLET=&amp;quot;${WALLET}&amp;quot;&amp;quot; &amp;gt;&amp;gt; $HOME/.bash_profile
source $HOME/.bash_profile
echo -e &amp;quot;\nwallet &amp;gt; ${WALLET}.\n&amp;quot;&lt;/pre&gt;
  &lt;p id=&quot;rZk6&quot;&gt;Завантажуємо генезис файл&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;Ypdk&quot;&gt;wget -O $HOME/.ollo/config/genesis.json wget -O $HOME/.ollo/config/genesis.json https://raw.githubusercontent.com/obajay/nodes-Guides/main/Ollo/genesis.json&lt;/pre&gt;
  &lt;p id=&quot;jL0E&quot;&gt;Перевіряємо файл генези&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;q9Y0&quot;&gt;sha256sum $HOME/.ollo/config/genesis.json&lt;/pre&gt;
  &lt;p id=&quot;5Oxy&quot;&gt;Коректний висновок - edd83397147598bd203996bd3c4495c1249291a24376028174c32e8bad862f2d&lt;/p&gt;
  &lt;p id=&quot;PB2S&quot;&gt;Налаштовуємо конфіг&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;o4Yx&quot;&gt;sed -i -e &amp;quot;s/^minimum-gas-prices *=.*/minimum-gas-prices = \&amp;quot;0utollo\&amp;quot;/&amp;quot; $HOME/.ollo/config/app.toml
sed -i -e &amp;quot;s/^filter_peers *=.*/filter_peers = \&amp;quot;true\&amp;quot;/&amp;quot; $HOME/.ollo/config/config.toml
external_address=$(wget -qO- eth0.me) 
sed -i.bak -e &amp;quot;s/^external_address *=.*/external_address = \&amp;quot;$external_address:26656\&amp;quot;/&amp;quot; $HOME/.ollo/config/config.toml
peers=&amp;quot;06658ccd5c119578fb662633234a2ef154881b94@172.31.19.104:26656&amp;quot;
sed -i.bak -e &amp;quot;s/^persistent_peers *=.*/persistent_peers = \&amp;quot;$peers\&amp;quot;/&amp;quot; $HOME/.ollo/config/config.toml
seeds=&amp;quot;&amp;quot;
sed -i.bak -e &amp;quot;s/^seeds =.*/seeds = \&amp;quot;$seeds\&amp;quot;/&amp;quot; $HOME/.ollo/config/config.toml
sed -i &amp;#x27;s/max_num_inbound_peers =.*/max_num_inbound_peers = 100/g&amp;#x27; $HOME/.ollo/config/config.toml
sed -i &amp;#x27;s/max_num_outbound_peers =.*/max_num_outbound_peers = 100/g&amp;#x27; $HOME/.ollo/config/config.toml
indexer=&amp;quot;null&amp;quot; &amp;amp;&amp;amp; \
sed -i -e &amp;quot;s/^indexer *=.*/indexer = \&amp;quot;$indexer\&amp;quot;/&amp;quot; $HOME/.ollo/config/config.toml&lt;/pre&gt;
  &lt;p id=&quot;dMr0&quot;&gt;Завантажуємо адресубук&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;Oq6Q&quot;&gt;wget -O $HOME/.ollo/config/addrbook.json &amp;quot;https://raw.githubusercontent.com/obajay/nodes-Guides/main/Ollo/addrbook.json&amp;quot;&lt;/pre&gt;
  &lt;p id=&quot;qAod&quot;&gt;Налаштовуємо прунінг&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;ereA&quot;&gt;pruning=&amp;quot;custom&amp;quot; &amp;amp;&amp;amp; \
pruning_keep_recent=&amp;quot;100&amp;quot; &amp;amp;&amp;amp; \
pruning_keep_every=&amp;quot;0&amp;quot; &amp;amp;&amp;amp; \
pruning_interval=&amp;quot;10&amp;quot; &amp;amp;&amp;amp; \
sed -i -e &amp;quot;s/^pruning *=.*/pruning = \&amp;quot;$pruning\&amp;quot;/&amp;quot; ~/.ollo/config/app.toml &amp;amp;&amp;amp; \
sed -i -e &amp;quot;s/^pruning-keep-recent *=.*/pruning-keep-recent = \&amp;quot;$pruning_keep_recent\&amp;quot;/&amp;quot; ~/.ollo/config/app.toml &amp;amp;&amp;amp; \
sed -i -e &amp;quot;s/^pruning-keep-every *=.*/pruning-keep-every = \&amp;quot;$pruning_keep_every\&amp;quot;/&amp;quot; ~/.ollo/config/app.toml &amp;amp;&amp;amp; \
sed -i -e &amp;quot;s/^pruning-interval *=.*/pruning-interval = \&amp;quot;$pruning_interval\&amp;quot;/&amp;quot; ~/.ollo/config/app.toml&lt;/pre&gt;
  &lt;p id=&quot;A631&quot;&gt;Створюємо сервісний файл&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;EbSS&quot;&gt;printf &amp;quot;[Unit]
Description=ollo
After=network-online.target

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

[Install]
WantedBy=multi-user.target&amp;quot; &amp;gt; /etc/systemd/system/ollod.service&lt;/pre&gt;
  &lt;p id=&quot;lQsf&quot;&gt;Запускаємо сервіс та перевіряємо логи однією командою&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;VpdL&quot;&gt;sudo systemctl daemon-reload &amp;amp;&amp;amp; \
sudo systemctl enable ollod &amp;amp;&amp;amp; \
sudo systemctl restart ollod &amp;amp;&amp;amp; \
sudo journalctl -u ollod -f -o cat&lt;/pre&gt;
  &lt;p id=&quot;BFDZ&quot;&gt;Чекаємо на закінчення синхронізації, перевірити синхронізації можна командою&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;mPJQ&quot;&gt;ollod status 2&amp;gt;&amp;amp;1 | jq .SyncInfo&lt;/pre&gt;
  &lt;p id=&quot;Aygg&quot;&gt;Якщо висновок показує &lt;strong&gt;&lt;u&gt;false&lt;/u&gt;&lt;/strong&gt;, синхронізація завершена.&lt;/p&gt;
  &lt;figure id=&quot;2x42&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/e2/3f/e23fc75c-db5e-429e-aa7d-1237b7349e68.png&quot; width=&quot;747&quot; /&gt;
  &lt;/figure&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;8aLT&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;3.State sync (опціонально)&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;WrQ3&quot;&gt;Для прискорення синхронізації можна використовувати state sync. (однією командою)&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;qP4d&quot;&gt;peers=&amp;quot;6cafaaa5044895ad0a98f138610856611f44137c@5.9.13.162:22046&amp;quot; 
sed -i.bak -e &amp;quot;s/^seeds *=.*/seeds = \&amp;quot;$SEEDS\&amp;quot;/; s/^persistent_peers *=.*/persistent_peers = \&amp;quot;$PEERS\&amp;quot;/&amp;quot; $HOME/.ollo/config/config.toml
SNAP_RPC=&amp;quot;http://ollo.rpc.t.stavr.tech:22047&amp;quot;
LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height); \
BLOCK_HEIGHT=$((LATEST_HEIGHT - 500)); \
TRUST_HASH=$(curl -s &amp;quot;$SNAP_RPC/block?height=$BLOCK_HEIGHT&amp;quot; | jq -r .result.block_id.hash)
echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH

sed -i.bak -E &amp;quot;s|^(enable[[:space:]]+=[[:space:]]+).*$|\1true| ; \
s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|\1\&amp;quot;$SNAP_RPC,$SNAP_RPC\&amp;quot;| ; \
s|^(trust_height[[:space:]]+=[[:space:]]+).*$|\1$BLOCK_HEIGHT| ; \
s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|\1\&amp;quot;$TRUST_HASH\&amp;quot;| ; \
s|^(seeds[[:space:]]+=[[:space:]]+).*$|\1\&amp;quot;\&amp;quot;|&amp;quot; $HOME/.ollo/config/config.toml
ollod tendermint unsafe-reset-all --home $HOME/.ollo
wget -O $HOME/.ollo/config/addrbook.json &amp;quot;https://raw.githubusercontent.com/obajay/nodes-Guides/main/Ollo/addrbook.json&amp;quot;&lt;/pre&gt;
  &lt;p id=&quot;lQEO&quot;&gt;Запускаємо сервіс та перевіряємо логи&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;Ch5k&quot;&gt;sudo systemctl restart ollod &amp;amp;&amp;amp; \
sudo journalctl -u ollod -f -o cat&lt;/pre&gt;
  &lt;p id=&quot;rV6O&quot;&gt;Чекаємо на закінчення синхронізації, перевірити синхронізації можна командою&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;e9uS&quot;&gt;ollod status 2&amp;gt;&amp;amp;1 | jq .SyncInfo&lt;/pre&gt;
  &lt;figure id=&quot;oqSn&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/ba/56/ba56b94b-ace6-4c2a-a1ed-c15333f38a61.png&quot; width=&quot;745&quot; /&gt;
  &lt;/figure&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;7txJ&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;&lt;strong&gt;4.Створення валідатора&lt;/strong&gt;&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;aK2t&quot;&gt;Після завершення синхронізації, створюємо валідатора&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;z5wy&quot;&gt;ollod tx staking create-validator --amount=5000000utollo \
--pubkey=$(ollod tendermint show-validator) --moniker=$MONIKER \
--chain-id=$CHAIN_ID --commission-rate=&amp;quot;0.10&amp;quot; \
--commission-max-rate=&amp;quot;0.20&amp;quot; --commission-max-change-rate=&amp;quot;0.1&amp;quot; \
--min-self-delegation=&amp;quot;1&amp;quot; --from=$WALLET --identity=&amp;quot;&amp;quot; --details=&amp;quot;&amp;quot; \
--website=&amp;quot;&amp;quot; -y&lt;/pre&gt;
  &lt;figure id=&quot;XbHc&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/09/ba/09bae7f0-764c-4861-be7e-43c723d42a2b.png&quot; width=&quot;643&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;d51Q&quot;&gt;Тестнет эксплорер для перевірки вашого валідатора - &lt;a href=&quot;https://testnet.postcapitalist.io/Ollo/staking/ollovaloper186sq9nz8stcrq05ywfhf0wr2lsmvmjr7k0pue5&quot; target=&quot;_blank&quot;&gt;натисни сюди&lt;/a&gt;&lt;/p&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;Qp3q&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;5.Видалення ноди&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;xTuS&quot; data-align=&quot;center&quot;&gt;Щоб видалити ноду, виконайте такі команди&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;96By&quot;&gt;sudo systemctl stop ollod &amp;amp;&amp;amp; sudo systemctl disable ollod &amp;amp;&amp;amp; \
rm /etc/systemd/system/ollod.service &amp;amp;&amp;amp; \
sudo systemctl daemon-reload &amp;amp;&amp;amp; cd $HOME &amp;amp;&amp;amp; \
rm -rf ollo &amp;amp;&amp;amp; rm -rf .ollo &amp;amp;&amp;amp; rm -rf $(which ollod)&lt;/pre&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;Anbi&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;&lt;strong&gt;6.Корисні команди&lt;/strong&gt;&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;k5Wf&quot; data-align=&quot;center&quot;&gt;Рестарт ноди&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;cLms&quot;&gt;sudo systemctl restart ollod&lt;/pre&gt;
  &lt;p id=&quot;mQfU&quot; data-align=&quot;center&quot;&gt;Провірка логів&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;Wiy4&quot;&gt;sudo journalctl -u ollod -f -o cat&lt;/pre&gt;
  &lt;p id=&quot;37uq&quot; data-align=&quot;center&quot;&gt;Дізнатись адресу валідатора&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;vbtt&quot;&gt;ollod keys show $MONIKER --bech val -a&lt;/pre&gt;
  &lt;p id=&quot;fEG9&quot; data-align=&quot;center&quot;&gt;Делегувати токени валідатору&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;jD2J&quot;&gt;ollod tx staking delegate ollovaloper186sq9nz8stcrq05ywfhf0wr2lsmvmjr7k0pue5 50000000utollo --from $MONIKER --chain-id $CHAIN_ID&lt;/pre&gt;
  &lt;p id=&quot;Vt2X&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;W1cr&quot;&gt;&lt;strong&gt;P.S. #мало коду не буває!&lt;/strong&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;blockquote id=&quot;UIzH&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Ali_Warrior / made in Ukraine&lt;/strong&gt;&lt;/blockquote&gt;
  &lt;/section&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;iQ2L&quot; data-align=&quot;center&quot;&gt;Discord - Ali Warrior#8818&lt;/p&gt;
  &lt;/section&gt;
  &lt;p id=&quot;IaUa&quot;&gt;&lt;strong&gt;Посилання на проект:&lt;/strong&gt;&lt;/p&gt;
  &lt;blockquote id=&quot;F7yz&quot;&gt;&lt;a href=&quot;https://www.ollostation.zone/&quot; target=&quot;_blank&quot;&gt;Website&lt;/a&gt;&lt;/blockquote&gt;
  &lt;blockquote id=&quot;8Ui0&quot;&gt;&lt;a href=&quot;https://discord.gg/uc4GqhkR&quot; target=&quot;_blank&quot;&gt;Discord&lt;/a&gt;&lt;/blockquote&gt;
  &lt;blockquote id=&quot;9Wvf&quot;&gt;&lt;a href=&quot;https://twitter.com/OLLOStation&quot; target=&quot;_blank&quot;&gt;Twitter&lt;/a&gt;&lt;/blockquote&gt;

</content></entry><entry><id>warrior_node:announcing-mission-korellias-winners-kyve-s-incent</id><link rel="alternate" type="text/html" href="https://teletype.in/@warrior_node/announcing-mission-korellias-winners-kyve-s-incent?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=warrior_node"></link><title>Оголошення переможців місії Korellia — завершено огляд стимульованої тестової мережі KYVE</title><published>2022-09-30T22:50:53.722Z</published><updated>2022-09-30T22:50:53.722Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img4.teletype.in/files/b6/9f/b69fce6c-aabe-4842-acb3-2febdb0e528d.png"></media:thumbnail><summary type="html">&lt;img src=&quot;https://miro.medium.com/max/1400/1*qo51VZ03XghypHg7gqlzvw.png&quot;&gt; Два місяця кропітливої праці і є результат)  Мені сподобався данний тестнет і я ставлю йому 12 із 12. Все було на надзвичайно високому рівні.  Трохи не дотягнув до 500-ки найкращіх але маємо те що маємо, на всі тестнети не вистачило сил тож я не дуже засмучений) На фото нижче мій результат.</summary><content type="html">
  &lt;figure id=&quot;O9X2&quot; class=&quot;m_custom&quot;&gt;
    &lt;img src=&quot;https://miro.medium.com/max/1400/1*qo51VZ03XghypHg7gqlzvw.png&quot; width=&quot;700&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;626a&quot; data-align=&quot;center&quot;&gt; Два місяця кропітливої праці і є результат)  Мені сподобався данний тестнет і я ставлю йому 12 із 12. Все було на надзвичайно високому рівні.  Трохи не дотягнув до 500-ки найкращіх але маємо те що маємо, на всі тестнети не вистачило сил тож я не дуже засмучений) На фото нижче мій результат.&lt;/p&gt;
  &lt;figure id=&quot;7K2v&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/b7/69/b769b34d-f4fa-4afd-bc12-9c550ccc8d9d.png&quot; width=&quot;1290&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;v6d8&quot;&gt;Тепер що пишуть у офіційній статті - &lt;a href=&quot;https://kyve.medium.com/announcing-mission-korellias-winners-kyve-s-incentivized-testnet-review-complete-22e9196a118&quot; target=&quot;_blank&quot;&gt;ссилка на посилання&lt;/a&gt;.&lt;/p&gt;
  &lt;p id=&quot;62jO&quot;&gt;ре:&lt;/p&gt;
  &lt;p id=&quot;BO0P&quot;&gt;Після того, як 3 серпня цього року заохочувана тестова мережа KYVE завершилася, наша команда Спільноти взяла на себе зобов’язання вдруге переглянути 10 тисяч найкращих користувачів і надіслані ними завдання, щоб переконатися, що не відбулося обману чи неправильного підрахунку балів. Правильно, 10 тисяч найкращих із 43 тисяч+ користувачів у таблиці лідерів отримають винагороду залежно від їхніх зусиль і внесків!&lt;/p&gt;
  &lt;p id=&quot;0aa3&quot;&gt;З понад 26 тисячами раніше прийнятих завдань, надісланими лише 10 тисячами найкращих користувачів, у нас було багато роботи! Але ми раді повідомити, що остаточний перегляд офіційно завершено, і ми готові пояснити рейтинг таблиці лідерів і наступні кроки для розподілу винагород!&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;6f0a&quot; data-align=&quot;center&quot;&gt;Перегляд Топ-10 тис&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;d1b5&quot;&gt;&lt;strong&gt;Загальні бали &lt;br /&gt;&lt;/strong&gt;Протягом періоду перегляду бали в таблиці лідерів коливалися. Тепер, коли це завершено, бали остаточні, і користувачі можуть побачити свої нараховані бали та позицію в таблиці лідерів, відвідавши &lt;a href=&quot;https://app.kyve.network/#/korellia&quot; target=&quot;_blank&quot;&gt;додаток KYVE&lt;/a&gt; або безпосередньо з &lt;a href=&quot;https://arweave.net/xZm4-5JbteX5VPVg0mu03v9qVh85WWAQwVgJUt-r-10&quot; target=&quot;_blank&quot;&gt;Arweave&lt;/a&gt; . Загалом для 10 тисяч найкращих користувачів таблиці лідерів було розподілено 68 946 994 бали Mission Korellia:&lt;/p&gt;
  &lt;ul id=&quot;rlPu&quot;&gt;
    &lt;li id=&quot;d2ec&quot;&gt;Команда інженерів: 35 326 605&lt;/li&gt;
    &lt;li id=&quot;7e7a&quot;&gt;Команда контенту: 14 690 840&lt;/li&gt;
    &lt;li id=&quot;fe85&quot;&gt;Команда спільноти: 18 929 549&lt;/li&gt;
  &lt;/ul&gt;
  &lt;figure id=&quot;9C8f&quot; class=&quot;m_custom&quot;&gt;
    &lt;img src=&quot;https://miro.medium.com/max/1400/0*cOfX4Zr4x87t1MAm&quot; width=&quot;700&quot; /&gt;
    &lt;figcaption&gt;&lt;em&gt;Цей графік відображає активність користувачів у рейтингу від 1 до 1000. Оцінка стосується загальної кількості балів, набраних кожною командою, а рейтинг – рейтингу користувача.&lt;/em&gt;&lt;/figcaption&gt;
  &lt;/figure&gt;
  &lt;figure id=&quot;TW42&quot; class=&quot;m_custom&quot;&gt;
    &lt;img src=&quot;https://miro.medium.com/max/1400/0*yWX9i6plPWZM3Q12&quot; width=&quot;700&quot; /&gt;
    &lt;figcaption&gt;&lt;em&gt;Цей графік відображає загальну активність усіх 10 тис. учасників. Оцінка означає загальну кількість балів, набраних кожною командою, а рейтинг — це місце користувача в топ-10 тисяч.&lt;/em&gt;&lt;/figcaption&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;97f2&quot;&gt;&lt;strong&gt;Нагородження власників значків&lt;/strong&gt;. &lt;br /&gt;Як згадувалося в попередні місяці, спеціальні значки були видані тим, хто експериментував у тестовій мережі KYVE перед Mission Korellia. Наприклад, значок Moonbase надавався користувачам, які мали вузол, що працював на KYVE, коли він базувався на Moonbase Alpha. Значок Cosmos надавався користувачам, у яких був запущений вузол під час поточної версії KYVE, до стимульованої тестової мережі. І, нарешті, значок OGs, який надається користувачам, які подали заявку через кран KYVE, перед стимульованою тестовою мережею.&lt;/p&gt;
  &lt;p id=&quot;c82b&quot;&gt;Щоб винагородити цих відданих користувачів за таку тривалу підтримку, кожному власнику значка було розподілено певні бали: власники значка Cosmos отримали по 150 балів кожен, власники значка Moonbeam — по 100 балів кожен, а власники значка OG — 50 балів. Звичайно, ми хочемо подякувати цим користувачам за їхню підтримку, але ми вирішили залишити суму винагороди досить низькою, щоб дати можливість тим, хто вперше користується KYVE, потрапити до топ-10 тисяч лідерів.&lt;/p&gt;
  &lt;p id=&quot;f580&quot;&gt;Зважаючи на це, перегляньте нижче бали, нараховані власникам значків:&lt;/p&gt;
  &lt;ul id=&quot;PXGX&quot;&gt;
    &lt;li id=&quot;1ce0&quot;&gt;Значок Космосу: 302 значка = 45 300 балів&lt;/li&gt;
    &lt;li id=&quot;4fcf&quot;&gt;Значок Moonbeam: 1180 значків = 118 000 балів&lt;/li&gt;
    &lt;li id=&quot;02cf&quot;&gt;Значок OG: 1958 значків = 97 900 балів&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;1204&quot;&gt;&lt;strong&gt;Повернення певних балів&lt;br /&gt;&lt;/strong&gt;Мета Mission Korellia полягала в тому, щоб наша спільнота об’єдналася та перевірила можливості KYVE, виявила якомога більше проблем або помилок і допомогла забезпечити максимально ефективну роботу протоколу та ланцюжка для основної мережі.&lt;/p&gt;
  &lt;p id=&quot;3863&quot;&gt;Таким чином, протягом цього часу користувачі могли зіткнутися з певними проблемами, такими як неактивні пули або неправильне розрізання. Оскільки це сталося з вини стороннього постачальника, ми компенсували цим користувачам за такі проблеми. Загалом користувачам, які зіткнулися з такими ситуаціями, було розподілено 4 379 500 балів.&lt;/p&gt;
  &lt;p id=&quot;92db&quot;&gt;&lt;strong&gt;Видалення підроблених, шахрайських або видалених облікових записів&lt;br /&gt;&lt;/strong&gt;Під час повторної перевірки кожного користувача та надісланих ним завдань наша команда також слідкувала за будь-якими шахраями чи копіювальниками. Загалом ми видалили понад 1200 підроблених і шахрайських облікових записів із 10 тисяч найпопулярніших, які намагалися скористатися перевагами системи.&lt;/p&gt;
  &lt;p id=&quot;1b25&quot;&gt;Перед початком місії Korellia наша команда узгодила базовий стандарт, необхідний для кожного завдання. Наприклад, включити вашу адресу KYVE у вміст, якісний аудіо- та візуальний матеріал для відео, вміст про KYVE, щоб фактично включати глибоку інформацію про проект, а не просто копіювати та вставляти тощо.&lt;/p&gt;
  &lt;p id=&quot;3cf2&quot;&gt;Інші видалення ґрунтувалися на:&lt;/p&gt;
  &lt;ul id=&quot;XYFd&quot;&gt;
    &lt;li id=&quot;62f7&quot;&gt;Якщо надісланий вміст був пізніше видалений власником;&lt;/li&gt;
    &lt;li id=&quot;c40b&quot;&gt;Якщо поданий вміст було вкрадено в іншого користувача. Наприклад, якщо вміст показував адресу гаманця, відмінну від адреси, яка була використана для його надсилання;&lt;/li&gt;
    &lt;li id=&quot;8273&quot;&gt;Підроблені, шахрайські та/або призупинені облікові записи Twitter. Наша загальна мета за допомогою балів команди спільноти полягала в тому, щоб створити ентузіазм навколо KYVE і допомогти поширити інформацію між спільнотами. Багато користувачів чудово попрацювали над цим, однак деякі створили кілька підроблених облікових записів, щоб просто скористатися перевагами системи, яку ми не підтримуємо.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;1b9e&quot;&gt;Тепер, коли нещодавно оновлений розподіл балів зрозумілий, давайте пояснимо, як саме це перетворюється на нагороди $KYVE…&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;9d10&quot; data-align=&quot;center&quot;&gt;Розподіл винагород&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;bebf&quot;&gt;20 мільйонів токенів $KYVE було виділено для нагородження учасників Mission Korellia. Щоб бути якомога справедливішим, ми дійшли висновку, що найкращим варіантом є розділення фонду винагороди на три частини. Існує пул A, до якого входять 5000 найкращих користувачів у таблиці лідерів, а потім пул B, до якого входять усі користувачі з 10 тис. найкращих. І, нарешті, одна частина присвячена бігунам верхніх вузлів. Нарахування цих винагород починатиметься з 8,33% від TGE протягом наступних 11 місяців, а потім з 8,37% протягом останнього місяця.&lt;/p&gt;
  &lt;p id=&quot;7355&quot;&gt;Дивіться точний розподіл нижче:&lt;/p&gt;
  &lt;ul id=&quot;b4Nw&quot;&gt;
    &lt;li id=&quot;3c03&quot;&gt;0,5% до пулу A для людей, які займають місця від 1 до 5000, розподілених відповідно до рангу;&lt;/li&gt;
    &lt;li id=&quot;76eb&quot;&gt;0,5% до пулу B для людей з 1 до 10 000, розподілених порівну;&lt;/li&gt;
    &lt;li id=&quot;9f09&quot;&gt;1% делеговано провідним виконавцям вузлів, деталі та точні цифри щодо цього будуть оприлюднені найближчими тижнями.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;13d9&quot;&gt;Пул А має певний розподіл за рейтингом:&lt;/p&gt;
  &lt;figure id=&quot;0c4w&quot; class=&quot;m_custom&quot;&gt;
    &lt;img src=&quot;https://miro.medium.com/max/1400/1*1GPlrVkD2clMq5c5_cgqFA.png&quot; width=&quot;700&quot; /&gt;
    &lt;figcaption&gt;&lt;em&gt;Це розбивка лише для винагород Пулу А.&lt;/em&gt;&lt;/figcaption&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;7f75&quot;&gt;У пулі B кожен учасник, який зайняв місце від 1 до 10 000, отримає 500 токенів $KYVE. Наприклад, користувач з рангом 600 отримає загалом 2300 токенів $KYVE (1800 з пулу A + 500 з пулу B). Тоді як хтось із рангом 6500 отримає лише 500 токенів $KYVE.&lt;/p&gt;
  &lt;p id=&quot;165b&quot;&gt;Щодо винагороди за найкращі ноди, ця інформація з’явиться в наступні тижні з більшою точністю та точними деталями.&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;86b8&quot; data-align=&quot;center&quot;&gt;Що буде далі?&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;yswp&quot;&gt;Ми хотіли б подякувати всім, хто брав участь у Місії Кореллія, не лише за вашу підтримку та ентузіазм, але й за ваше терпіння! Остаточний огляд 10 тисяч найпопулярніших завдань зайняв у нас набагато більше часу, ніж очікувалося, однак ми гарантуємо, що кожен учасник отримає належну винагороду, а наша спільнота підтримується всіма можливими способами.&lt;/p&gt;
  &lt;p id=&quot;311c&quot;&gt;Наступним важливим кроком у дорожній карті ІТ стане перевірка KYC, яка гарантує, що кожна особа може належним чином вимагати свої токени. Ми ще раз просимо набратися терпіння, точні відомості про цю подію буде надано найближчим часом, оскільки наша команда гарантує, що процес буде максимально гладким і безпечним.&lt;/p&gt;
  &lt;p id=&quot;8929&quot;&gt;Коротке нагадування: тепер, коли стимульована тестова мережа KYVE закінчилася, KYVE знову в тестовій мережі. Наразі за участь у нашому протоколі не можна отримати винагороди, однак наша команда підготувала кілька подій у майбутньому, щоб винагородити тих, хто продовжує брати участь і допомагати вдосконалювати KYVE до запуску основної мережі. Тому краще залишайтеся з нами!&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(170, 33%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;f703&quot; data-align=&quot;center&quot;&gt;Про KYVE&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;2fed&quot;&gt;&lt;a href=&quot;https://www.kyve.network/&quot; target=&quot;_blank&quot;&gt;KYVE&lt;/a&gt; , рішення озера даних Web3, — це протокол, який дозволяє постачальникам даних стандартизувати, перевіряти та постійно зберігати потоки даних блокчейну. Використовуючи такі рішення для постійного зберігання даних, як Arweave, ланцюжок Cosmos SDK KYVE створює постійні резервні копії та забезпечує масштабованість, незмінність і доступність цих ресурсів з часом.&lt;/p&gt;
  &lt;p id=&quot;720e&quot;&gt;Мережа KYVE підтримується децентралізованими завантажувачами та валідаторами, що фінансуються токенами $KYVE, і в найближчому майбутньому планує працювати як DAO. Минулого року KYVE отримав серйозну підтримку, яку наразі підтримують провідні венчурні капітали, зокрема Hypersphere Ventures, Coinbase Ventures, Distributed Global, Mechanism Capital, CMS Holdings, IOSG Ventures і блокчейни, такі як Arweave, Avalanche, Solana, Interchain і NEAR.&lt;/p&gt;
  &lt;p id=&quot;0078&quot;&gt;Приєднуйтесь до спільноти KYVE: &lt;a href=&quot;https://twitter.com/KYVEnetwork&quot; target=&quot;_blank&quot;&gt;Twitter&lt;/a&gt; | &lt;a href=&quot;https://discord.gg/E73KZwaa4S&quot; target=&quot;_blank&quot;&gt;Розбрат&lt;/a&gt; | &lt;a href=&quot;https://t.me/kyvenet&quot; target=&quot;_blank&quot;&gt;Телеграма&lt;/a&gt;&lt;/p&gt;

</content></entry><entry><id>warrior_node:zfqrRXc9rzo</id><link rel="alternate" type="text/html" href="https://teletype.in/@warrior_node/zfqrRXc9rzo?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=warrior_node"></link><title>NEAR: '' Stakewars III '' / installation Raport guide</title><published>2022-09-03T21:44:27.797Z</published><updated>2024-02-02T09:30:26.871Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img2.teletype.in/files/58/86/5886bb89-be80-45aa-928d-19947ee47668.png"></media:thumbnail><tt:hashtag>копіюємо_public_key_і_натискає</tt:hashtag><summary type="html">&lt;img src=&quot;https://img1.teletype.in/files/48/31/48313dc3-da1e-41cb-9b1d-5b164a9d9e93.png&quot;&gt;Near Protocol запустив третій епізод тестнету Stake Wars, метою якого є децентралізація мережі NEAR шляхом залучення нових честних та совістних валідаторів). Анонсовані нагороди становлять 50к $NEAR на ноду в мейнеті та до 500$NEAR за успішне виконання всіх завдань. Думаю, описувати що таке Near Protocol не має сенсу, тому читаємо інформацію про тестет.</summary><content type="html">
  &lt;figure id=&quot;L3iY&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/48/31/48313dc3-da1e-41cb-9b1d-5b164a9d9e93.png&quot; width=&quot;591&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;iDMB&quot;&gt;&lt;strong&gt;Near Protocol&lt;/strong&gt; запустив третій епізод тестнету Stake Wars, метою якого є децентралізація мережі NEAR шляхом залучення нових честних та совістних валідаторів). Анонсовані нагороди становлять 50к $NEAR на ноду в мейнеті та до 500$NEAR за успішне виконання всіх завдань. Думаю, описувати що таке Near Protocol не має сенсу, тому &lt;a href=&quot;https://near.org/blog/join-stake-wars-to-become-a-chunk-only-producer/&quot; target=&quot;_blank&quot;&gt;читаємо інформацію про тестет&lt;/a&gt;.&lt;/p&gt;
  &lt;p id=&quot;UouT&quot; data-align=&quot;center&quot;&gt;&lt;a href=&quot;https://github.com/near/stakewars-iii/tree/main/challenges&quot; target=&quot;_blank&quot;&gt;Список завдань&lt;/a&gt;&lt;/p&gt;
  &lt;p id=&quot;wypW&quot; data-align=&quot;center&quot;&gt;&lt;a href=&quot;https://docs.google.com/forms/d/e/1FAIpQLScp9JEtpk1Fe2P9XMaS9Gl6kl9gcGVEp3A5vPdEgxkHx3ABjg/viewform&quot; target=&quot;_blank&quot;&gt;Форма для здачі виконаних завдань&lt;/a&gt;&lt;/p&gt;
  &lt;p id=&quot;hWqN&quot;&gt;Гайд актуальний для комміту 03.09.2022 &lt;/p&gt;
  &lt;p id=&quot;Obs5&quot;&gt;Тестнет наближається до свого завершення, нових валідаторів не вдасться створити майте це на увазі!&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Цей гайд мною створенний для Report&lt;/strong&gt; [ &lt;u&gt;та щоб кожен кто захотів встановити собі ноду Near мав таку змогу&lt;/u&gt; ]&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Початок тестнету 13 / липень!&lt;br /&gt;Кінець тестнету 9 / вересень!&lt;/strong&gt;&lt;/p&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;6jWL&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;&lt;code&gt;Зміст&lt;/code&gt;&lt;/strong&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;bbke&quot;&gt;&lt;u&gt;Завдання&lt;/u&gt; 1. Підготовка сервера&lt;u&gt;&lt;br /&gt;Завдання &lt;/u&gt;1.1 Створення гаманця&lt;u&gt;&lt;br /&gt;Завдання &lt;/u&gt;2.  Встановлення ноди&lt;u&gt;&lt;br /&gt;Завдання&lt;/u&gt; 2.1 Активація ноди та створення валідатора&lt;u&gt;&lt;br /&gt;Завдання&lt;/u&gt; 3.  Налаштування стекінг пулу&lt;u&gt;&lt;br /&gt;Завдання&lt;/u&gt; 4. Перевірка та моніторинг&lt;u&gt;&lt;br /&gt;Завдання&lt;/u&gt; 5. Встановлення ноди на сервері Хмари&lt;u&gt;&lt;br /&gt;Завдання&lt;/u&gt; 6. Налаштування автоматичного пінгу&lt;u&gt;&lt;br /&gt;Завдання&lt;/u&gt; 8. Розгортання смарт контракту&lt;u&gt;&lt;br /&gt;Завдання&lt;/u&gt; 9. Аптайм 70% + відкрити порт 3030&lt;u&gt;&lt;br /&gt;Завдання&lt;/u&gt; 10. Аптайм 60% + делегація на ноду від фонду&lt;u&gt;&lt;br /&gt;Завдання&lt;/u&gt; 13. Бекап-нода&lt;br /&gt;&lt;u&gt;Завдання&lt;/u&gt; 14. Автоскріпт резервного копіювання&lt;br /&gt;&lt;u&gt;Завдання&lt;/u&gt; 19. Графана моніторінг&lt;u&gt;&lt;br /&gt;Завдання&lt;/u&gt; 20. Телеграм виклик&lt;u&gt;&lt;br /&gt;Оновлення&lt;br /&gt;Корисні посилання та команди&lt;/u&gt;&lt;/p&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;0XiO&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;&lt;strong&gt;Завдання 1. : Підготовка сервера&lt;/strong&gt;&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;LNqD&quot; data-align=&quot;right&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;khhd&quot; data-align=&quot;center&quot;&gt;Мінімальні вимоги до сервера становлять:&lt;/p&gt;
  &lt;p id=&quot;3HfN&quot; data-align=&quot;center&quot;&gt;CPU: 4-Core, RAM: 8GB DDR4, Storage: 500GB SSD&lt;/p&gt;
  &lt;p id=&quot;tuLm&quot; data-align=&quot;center&quot;&gt;Я встановив на сервері &lt;a href=&quot;https://www.hetzner.com/dedicated-rootserver/ax61-nvme&quot; target=&quot;_blank&quot;&gt;Hetzner &lt;/a&gt;- AX61.  потім переніс на AX51 &lt;/p&gt;
  &lt;p id=&quot;k7cj&quot; data-align=&quot;center&quot;&gt;Вартість оренди сервера - 109.84 євро та 70.54 відповідно&lt;/p&gt;
  &lt;p id=&quot;9XgD&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;І так давайте ж почнемо!&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;wApo&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Перевіряємо вашу машину&lt;/strong&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;0epZ&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;wget -qO- bench.sh | bash&lt;/code&gt;&lt;/p&gt;
  &lt;/section&gt;
  &lt;figure id=&quot;Aynk&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/ec/a9/eca91f9e-5c2f-4b99-a8ae-cd8899fb0c3d.png&quot; width=&quot;574&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;NYT2&quot; data-align=&quot;center&quot;&gt;_Серв з бекап нодою-Валідатором_&lt;/p&gt;
  &lt;figure id=&quot;vRTi&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/d4/a6/d4a6bd6c-d8fc-40f8-86a4-2da20b96334d.png&quot; width=&quot;566&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;CS62&quot;&gt;&lt;u&gt;&lt;strong&gt;Якщо встановлюєте на іншому сервері, перевірте, чи підходить вибраний сервер для встановлення ноди&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;QfM6&quot;&gt;lscpu | grep -P &amp;#x27;(?=.*avx )(?=.*sse4.2 )(?=.*cx16 )(?=.*popcnt )&amp;#x27; &amp;gt; /dev/null \
  &amp;amp;&amp;amp; echo &amp;quot;Supported&amp;quot; \
  || echo &amp;quot;Not supported&amp;quot;&lt;/pre&gt;
  &lt;figure id=&quot;Ey7B&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/2f/ac/2fac2d85-5b03-4e69-889e-3d3a45af4e89.jpeg&quot; width=&quot;971&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;I04C&quot;&gt;Якщо видає &amp;quot;&lt;strong&gt;Supported&lt;/strong&gt;&amp;quot; продовжуємо встановлення&lt;/p&gt;
  &lt;p id=&quot;MSKo&quot;&gt;&lt;strong&gt;Оновлюємо пакети&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;m0oG&quot;&gt;sudo apt update &amp;amp;&amp;amp; sudo apt upgrade -y&lt;/pre&gt;
  &lt;p id=&quot;nHk1&quot;&gt;&lt;strong&gt;Встановлюємо інструменти розробника, Node.js, npm, python3 та інші необхідні пакети&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;vlJA&quot;&gt;sudo apt install -y git binutils-dev libcurl4-openssl-dev zlib1g-dev libdw-dev libiberty-dev cmake gcc g++ python3-pip protobuf-compiler libssl-dev pkg-config llvm cargo
sudo apt install clang build-essential make
sudo apt install curl jq build-essential gcc make -y
curl -sL https://deb.nodesource.com/setup_18.x | sudo -E bash -  
sudo apt install nodejs
PATH=&amp;quot;$PATH&amp;quot;&lt;/pre&gt;
  &lt;p id=&quot;WfsF&quot;&gt;&lt;strong&gt;Перевіряємо версії&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;j1ue&quot;&gt;node -v
#v18.x.x&lt;/pre&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;tkWd&quot;&gt;npm -v
#8.x.x&lt;/pre&gt;
  &lt;p id=&quot;gGZV&quot;&gt;&lt;strong&gt;Встановлюємо NEAR-CLI&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;ZffX&quot;&gt;sudo npm install near-cli&lt;/pre&gt;
  &lt;p id=&quot;jfJc&quot;&gt;Після &lt;strong&gt;встановлення клієнта&lt;/strong&gt; може бути що його потрібно оновити&lt;/p&gt;
  &lt;figure id=&quot;5HWN&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/eb/b4/ebb4b7ff-c778-49a2-85aa-cea04bf3df08.png&quot; width=&quot;589&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;33r8&quot;&gt;В цьому прикладі &lt;strong&gt;версія 8.19.1&lt;/strong&gt; треба зробити оновлення 8.19.2 командою:&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;HdgP&quot;&gt;npm install -g npm@8.19.2&lt;/p&gt;
  &lt;/section&gt;
  &lt;p id=&quot;4W8N&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Встановлюємо Rust&lt;/strong&gt;&lt;/p&gt;
  &lt;section&gt;
    &lt;pre data-lang=&quot;bash&quot; id=&quot;4Kw2&quot;&gt;# завантажуємо настановний скрипт Rust
curl --proto &amp;#x27;=https&amp;#x27; --tlsv1.2 -sSf https://sh.rustup.rs | sh
&lt;/pre&gt;
    &lt;p id=&quot;QBet&quot;&gt;Вибираємо пункт 1) продовжити встановлення (за умовчанням).&lt;/p&gt;
    &lt;figure id=&quot;6Bkf&quot; class=&quot;m_original&quot; data-caption-align=&quot;center&quot;&gt;
      &lt;img src=&quot;https://img2.teletype.in/files/90/00/9000debf-39ab-4593-9458-d7cfa3d1b587.png&quot; width=&quot;535&quot; /&gt;
      &lt;figcaption&gt;Починається встановлення&lt;/figcaption&gt;
    &lt;/figure&gt;
    &lt;figure id=&quot;kwoZ&quot; class=&quot;m_column&quot; data-caption-align=&quot;center&quot;&gt;
      &lt;img src=&quot;https://img4.teletype.in/files/b8/18/b818e5b3-b640-4c85-a864-aa76ad3ed47c.png&quot; width=&quot;989&quot; /&gt;
      &lt;figcaption&gt;Вивід успішного встановлення&lt;/figcaption&gt;
    &lt;/figure&gt;
    &lt;pre id=&quot;ytPM&quot; data-lang=&quot;bash&quot;&gt;
# активуємо середовище Rust для поточної оболонки
source ~/.profile
source ~/.cargo/env&lt;/pre&gt;
  &lt;/section&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;MqvP&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;&lt;strong&gt;Завдання 1.1 : Створення гаманця&lt;/strong&gt;&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;G0Hp&quot; data-align=&quot;right&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;VL4n&quot;&gt;Переходим за посиланням &lt;a href=&quot;https://wallet.shardnet.near.org/&quot; target=&quot;_blank&quot;&gt;https://wallet.shardnet.near.org/&lt;/a&gt; та створюємо гаманець NEAR для тестової мережі. Зберігаємо мнемоніку у надійному місці. Запам&amp;#x27;ятовуємо ім&amp;#x27;я гаманця, він також Account_ID. Наразі є проблеми та не відображається кількість токенів на балансі.&lt;/p&gt;
  &lt;figure id=&quot;8J9j&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/e5/1a/e51a1dc9-7a1f-4ec0-a5fc-29b433cb91cd.png&quot; width=&quot;1131&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;qXdf&quot;&gt;&lt;/p&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;bJCy&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;Завдання 2. : Встановлення ноди&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;qL6o&quot; data-align=&quot;right&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;PQBn&quot;&gt;&lt;strong&gt;Клонуємо репозиторій із нодою&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;r6Ee&quot;&gt;git clone https://github.com/near/nearcore
cd nearcore
git fetch&lt;/pre&gt;
  &lt;p id=&quot;Kg8A&quot;&gt;&lt;strong&gt;Перевіряємо коміт&lt;/strong&gt;. Наразі &lt;u&gt;актуальний коміт&lt;/u&gt; - 1897d5144a7068e4c0d5764d8c9180563db2fe43. &lt;strong&gt;Актуальний коміт&lt;/strong&gt; можна знайти за посиланням &lt;a href=&quot;https://github.com/near/stakewars-iii/blob/main/commit.md&quot; target=&quot;_blank&quot;&gt;https://github.com/near/stakewars-iii/blob/main/commit.md&lt;/a&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;WfYz&quot;&gt;git checkout 1897d5144a7068e4c0d5764d8c9180563db2fe43&lt;/pre&gt;
  &lt;p id=&quot;18NO&quot;&gt;&lt;strong&gt;Збираємо бінарні файли та білдимо Раст&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;FN8M&quot;&gt;cargo build -p neard --release --features shardnet&lt;/pre&gt;
  &lt;figure id=&quot;2rqT&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/b4/b5/b4b5bf74-4446-4d28-ba9e-eed7425d5ea1.png&quot; width=&quot;624&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;KCmW&quot;&gt;&lt;strong&gt;Ініціалізуємо ноду та завантажуємо генезис файл&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;WvR0&quot;&gt;./target/release/neard --home ~/.near init --chain-id shardnet --download-genesis&lt;/pre&gt;
  &lt;figure id=&quot;gloz&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/3a/22/3a22e1ff-fedc-4ea4-b4ab-ecc1c2b037c5.png&quot; width=&quot;1410&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;4zu1&quot;&gt;&lt;strong&gt;Завантажуємо конфіг файл з модифікованими параметрами&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;dCx5&quot;&gt;rm ~/.near/config.json
wget -O ~/.near/config.json https://s3-us-west-1.amazonaws.com/build.nearprotocol.com/nearcore-deploy/shardnet/config.json&lt;/pre&gt;
  &lt;p id=&quot;0u9d&quot;&gt;&lt;strong&gt;Створюємо сервісний файл.&lt;/strong&gt; Я встановлював ноду під суперкористувачем. Якщо ви використовуєте іншого користувача, у сервісному файлі змінюємо root на ім&amp;#x27;я користувача.&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;DMGS&quot;&gt;printf &amp;quot;[Unit]
Description=NEARd Daemon Service

[Service]
Type=simple
User=root
#Group=near
WorkingDirectory=/root/.near
ExecStart=/root/nearcore/target/release/neard run
Restart=on-failure
RestartSec=30
KillSignal=SIGINT
TimeoutStopSec=45
KillMode=mixed

[Install]
WantedBy=multi-user.target&amp;quot; &amp;gt; /etc/systemd/system/neard.service&lt;/pre&gt;
  &lt;p id=&quot;6PqK&quot;&gt;&lt;strong&gt;Запускаємо сервіс&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;wLV8&quot;&gt;sudo systemctl daemon-reload
sudo systemctl enable neard
sudo systemctl restart neard&lt;/pre&gt;
  &lt;p id=&quot;Ve7e&quot;&gt;&lt;strong&gt;Дивимося логи&lt;/strong&gt; &lt;u&gt;та чекаємо поки нода знайде бенкети, завантажить хедери та синхронізується&lt;/u&gt;. &lt;u&gt;Це може тривати більше години&lt;/u&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;XuNR&quot;&gt;journalctl -n 100 -f -u neard&lt;/pre&gt;
  &lt;figure id=&quot;uQwx&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/69/ae/69ae34fb-602e-4e2b-9dac-7b2492ce4cff.png&quot; width=&quot;1405&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;7ILq&quot;&gt;&lt;strong&gt;Перевіряємо синхронізацію&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;BYXL&quot;&gt;curl -s http://127.0.0.1:3030/status | jq .sync_info&lt;/pre&gt;
  &lt;p id=&quot;MJ4n&quot;&gt;Поки йде синхронізація ви побачете приблизно &lt;u&gt;такий вивід&lt;/u&gt; ()&lt;strong&gt;true&lt;/strong&gt;()&lt;br /&gt;&lt;/p&gt;
  &lt;figure id=&quot;VBfC&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/d1/56/d1563856-8e36-4e1c-98dd-2492b9c6f562.png&quot; width=&quot;588&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;cBDF&quot;&gt;Після того як синхронізація пройде буде приблизно &lt;u&gt;такий вивід&lt;/u&gt; ()&lt;strong&gt;false&lt;/strong&gt;()&lt;/p&gt;
  &lt;figure id=&quot;5gAQ&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/f2/8b/f28b1167-db19-4f5d-b61b-d9896ff62b68.jpeg&quot; width=&quot;843&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;ucZ9&quot;&gt;&lt;strong&gt;Додатково: можна додати кольори у виведення логів , патріотичні жовто-блакитні&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;6Us9&quot;&gt;sudo apt install ccze&lt;/pre&gt;
  &lt;p id=&quot;E05l&quot;&gt;&lt;strong&gt;Перевірка логів у кольорі&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;gRg0&quot;&gt;journalctl -n 100 -f -u neard | ccze -A&lt;/pre&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;DtQ9&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;&lt;strong&gt;Завдання 2.1 : Активація ноди та створення валідатора&lt;/strong&gt;&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;PXcY&quot;&gt;&lt;strong&gt;Налаштовуємо оточення. Поточний тестнет проходить у мережі (shardnet) тут в зв&amp;#x27;язку з тим в якій мережі працювати можете замінити на (testnet) або (mainnet). Вводимо назву мережі як змінну&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;rtyc&quot;&gt;export NEAR_ENV=shardnet
echo &amp;#x27;export NEAR_ENV=shardnet&amp;#x27; &amp;gt;&amp;gt; ~/.bashrc&lt;/pre&gt;
  &lt;p id=&quot;6t3b&quot;&gt;&lt;strong&gt;Запускаємо команду для підключення вашого гаманця до shardnet&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;ISG4&quot;&gt;near login&lt;/pre&gt;
  &lt;p id=&quot;UveZ&quot;&gt;Копіюємо посилання (&lt;strong&gt;http:wallet.shardnet.near.org/login/?.......&lt;/strong&gt;) та відкриваємо у браузері, в якому встановлювали гаманець у першому завданні&lt;/p&gt;
  &lt;figure id=&quot;v41S&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/5d/bc/5dbc3eaf-01cd-4f09-b37d-5006208b0010.jpeg&quot; width=&quot;1159&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;gXSC&quot;&gt;&lt;strong&gt;Вводимо Account_ID і даємо всі необхідні дозволи після того, як сторінка видасть помилку з&amp;#x27;єднання, ваш гаманець буде прив&amp;#x27;язаний.&lt;/strong&gt;&lt;/p&gt;
  &lt;figure id=&quot;b0CB&quot; class=&quot;m_custom&quot;&gt;
    &lt;img src=&quot;https://github.com/near/stakewars-iii/raw/main/challenges/images/4.png&quot; width=&quot;768&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;YCV6&quot;&gt;Переходимо в термінал та вводимо ім&amp;#x27;я гаманця (Account_ID).&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(34,  84%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;3Y1G&quot;&gt;#&lt;strong&gt;Після введення гаманця термінал може зависнути і не видати напис успішно&lt;/strong&gt;. &lt;u&gt;В даному випадку алгоритм дій такий&lt;/u&gt;:&lt;/p&gt;
    &lt;pre data-lang=&quot;bash&quot; id=&quot;k4B7&quot;&gt;near generate-key &amp;lt;ACCOUNT_ID&amp;gt; 
#ACCOUNT_ID має бути у форматі xxx.shardnet.near
#Приклад: alex1.shardnet.near&lt;/pre&gt;
    &lt;p id=&quot;4qlh&quot;&gt;Створюється JSON файл, у якому потрібно скопіювати публічний ключ замінити &amp;lt;ACCOUNT_ID&amp;gt; на свій гаманець&lt;/p&gt;
    &lt;tt-tags id=&quot;nMLt&quot;&gt;&lt;/tt-tags&gt;
    &lt;pre data-lang=&quot;bash&quot; id=&quot;u0Sf&quot;&gt;nano /root/.near-credentials/shardnet/&amp;lt;ACCOUNT_ID&amp;gt;.shardnet.near.json&lt;/pre&gt;
    &lt;tt-tags id=&quot;7QSk&quot;&gt;
      &lt;tt-tag name=&quot;копіюємо_public_key_і_натискає&quot;&gt;#копіюємо_public_key_і_натискає&lt;/tt-tag&gt;
    &lt;/tt-tags&gt;
    &lt;figure id=&quot;qjwy&quot; class=&quot;m_original&quot;&gt;
      &lt;img src=&quot;https://img4.teletype.in/files/70/75/7075bff1-25c0-4e67-82d0-1713dc46df98.png&quot; width=&quot;952&quot; /&gt;
    &lt;/figure&gt;
    &lt;p id=&quot;rYqL&quot;&gt;У посиланні нижче замінюємо &amp;lt;public_key&amp;gt; на скопійований ключ і відкриваємо у браузері&lt;/p&gt;
    &lt;p id=&quot;yJUX&quot;&gt;&lt;a href=&quot;https://wallet.shardnet.near.org/login/?referrer=NEAR+CLI&amp;public_key=&quot; target=&quot;_blank&quot;&gt;https://wallet.shardnet.near.org/login/?referrer=NEAR+CLI&amp;amp;public_key=&lt;/a&gt;&lt;strong&gt;&amp;lt;public_key&amp;gt;&lt;/strong&gt;&amp;amp;success_url=&lt;a href=&quot;http://127.0.0.1:5000/&quot; target=&quot;_blank&quot;&gt;http://127.0.0.1:5000/&lt;/a&gt;&lt;/p&gt;
    &lt;p id=&quot;mPYL&quot;&gt;Продовжуємо встановлення&lt;/p&gt;
  &lt;/section&gt;
  &lt;section&gt;
    &lt;p id=&quot;Ehtl&quot;&gt;&lt;strong&gt;Важливо!&lt;/strong&gt; На даний момент отримати токени неможливо&lt;/p&gt;
  &lt;/section&gt;
  &lt;p id=&quot;tU4W&quot;&gt;Для подальшої зручності використання команд створюємо змінні монікера, ID пулу та ID акаунту. Замінюємо &lt;strong&gt;&amp;lt;MONIKER&amp;gt;&lt;/strong&gt; на свій нік.&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;xHyj&quot;&gt;MONIKER=&amp;lt;MONIKER&amp;gt;
POOL=&amp;lt;MONIKER&amp;gt;.factory.shardnet.near
ACCOUNT_ID=&amp;lt;MONIKER&amp;gt;.shardnet.near&lt;/pre&gt;
  &lt;p id=&quot;W3lr&quot;&gt;&lt;strong&gt;Зберігаємо змінні, перезавантажуємо .bash_profile та перевіряємо значення змінних&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;Y9l7&quot;&gt;echo &amp;quot;export MONIKER=&amp;quot;${MONIKER}&amp;quot;&amp;quot; &amp;gt;&amp;gt; $HOME/.bash_profile
echo &amp;quot;export POOL=&amp;quot;${POOL}&amp;quot;&amp;quot; &amp;gt;&amp;gt; $HOME/.bash_profile
echo &amp;quot;export ACCOUNT_ID=&amp;quot;${ACCOUNT_ID}&amp;quot;&amp;quot; &amp;gt;&amp;gt; $HOME/.bash_profile

source $HOME/.bash_profile

echo -e &amp;quot;\nmoniker &amp;gt; ${MONIKER}.\n&amp;quot;
echo -e &amp;quot;\npool &amp;gt; ${POOL}.\n&amp;quot;
echo -e &amp;quot;\naccount_id &amp;gt; ${ACCOUNT_ID}.\n&amp;quot;&lt;/pre&gt;
  &lt;figure id=&quot;XBbu&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/44/a6/44a68579-d584-4ae2-9a1e-310a6a836c4f.png&quot; width=&quot;478&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;14zc&quot;&gt;&lt;strong&gt;Створюємо ключ валідатора&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;MfB5&quot;&gt;near generate-key $POOL&lt;/pre&gt;
  &lt;p id=&quot;t6ql&quot;&gt;Заходимо у файл і змінюємо слово &lt;strong&gt;private_key&lt;/strong&gt; на &lt;strong&gt;secret_key&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;kMid&quot;&gt;nano ~/.near-credentials/shardnet/$POOL.json&lt;/pre&gt;
  &lt;figure id=&quot;WZTm&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/ea/9a/ea9a8227-13f3-4ddc-8197-234b2418897d.png&quot; width=&quot;1032&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;KvGZ&quot;&gt;&lt;strong&gt;Натискаємо Ctrl+X&lt;/strong&gt; та підтверджуємо зміни&lt;/p&gt;
  &lt;p id=&quot;pOUe&quot;&gt;&lt;strong&gt;Копіюємо ключ&lt;/strong&gt; у папку з тестнетом&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;Uaei&quot;&gt;cp ~/.near-credentials/shardnet/$POOL.json ~/.near/validator_key.json&lt;/pre&gt;
  &lt;p id=&quot;q3I9&quot;&gt;&lt;strong&gt;Перезапускаємо ноду&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;gGrF&quot;&gt;sudo systemctl daemon-reload
sudo systemctl enable neard
sudo systemctl restart neard&lt;/pre&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;BjfG&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;&lt;strong&gt;Завдання 3. : Налаштування стекінг пулу&lt;/strong&gt;&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;zMEK&quot; data-align=&quot;right&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;Aiuc&quot;&gt;&lt;strong&gt;Викликаємо стекінг пул&lt;/strong&gt; фектори, створюємо і розгортаємо новий стекінг пул. Важливо! Замінюємо &amp;lt;MONIKER&amp;gt; та &amp;lt;ACCOUNT_ID&amp;gt; (у моєму випадку: &amp;lt;MONIKER&amp;gt; - trdm; &amp;lt;ACCOUNT_ID&amp;gt; - trdm.shardnet.near). Замість &amp;lt;public key&amp;gt; вставляємо ключ із файлу validator_key.json&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;n3lg&quot;&gt;NEAR_ENV=shardnet near call factory.shardnet.near create_staking_pool &amp;#x27;{&amp;quot;staking_pool_id&amp;quot;: &amp;quot;&amp;lt;MONIKER&amp;gt;&amp;quot;, &amp;quot;owner_id&amp;quot;: &amp;quot;&amp;lt;ACCOUNT_ID&amp;gt;&amp;quot;, &amp;quot;stake_public_key&amp;quot;: &amp;quot;&amp;lt;public key&amp;gt;&amp;quot;, &amp;quot;reward_fee_fraction&amp;quot;: {&amp;quot;numerator&amp;quot;: 5, &amp;quot;denominator&amp;quot;: 100}, &amp;quot;code_hash&amp;quot;:&amp;quot;DD428g9eqLL8fWUxv8QSpVFzyHi1Qd16P8ephYCTmMSZ&amp;quot;}&amp;#x27; --accountId=&amp;quot;$ACCOUNT_ID&amp;quot; --amount=30 --gas=300000000000000&lt;/pre&gt;
  &lt;section&gt;
    &lt;p id=&quot;jZ98&quot;&gt;&lt;strong&gt;Додатково&lt;/strong&gt;! Для зміни налаштувань пулу, наприклад зміни комісії, скористаємося наступною командою&lt;/p&gt;
    &lt;pre data-lang=&quot;bash&quot; id=&quot;nMXQ&quot;&gt;NEAR_ENV=shardnet near call $POOL update_reward_fee_fraction &amp;#x27;{&amp;quot;reward_fee_fraction&amp;quot;: {&amp;quot;numerator&amp;quot;: 1, &amp;quot;denominator&amp;quot;: 100}}&amp;#x27; --accountId $ACCOUNT_ID --gas=300000000000000&lt;/pre&gt;
    &lt;p id=&quot;pZsS&quot;&gt;За умови коректного виконання програми, виведеться хеш транзакції та посилання на транзакцію в експлорері.&lt;/p&gt;
  &lt;/section&gt;
  &lt;hr /&gt;
  &lt;p id=&quot;NPbP&quot;&gt;Тепер можемо &lt;strong&gt;застікати ще токенів&lt;/strong&gt;. У моєму випадку 512.&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;0QIz&quot;&gt;NEAR_ENV=shardnet near call $POOL deposit_and_stake --amount 512 --accountId $ACCOUNT_ID --gas=300000000000000&lt;/pre&gt;
  &lt;p id=&quot;vhnu&quot; data-align=&quot;center&quot;&gt;Важливо! Залишіть трохи токенів у гаманці для оплати комісій.&lt;/p&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;bhvj&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;&lt;strong&gt;Завдання 4. : Перевірка та моніторинг&lt;/strong&gt;&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;egcp&quot;&gt;&lt;/p&gt;
  &lt;figure id=&quot;iE6B&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/60/94/6094a816-4726-4d92-b902-206a30471896.jpeg&quot; width=&quot;1160&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;vzFg&quot;&gt;Знайти свого валідатора можна в експлорері за посиланням: &lt;a href=&quot;https://explorer.shardnet.near.org/nodes/validators&quot; target=&quot;_blank&quot;&gt;https://explorer.shardnet.near.org/nodes/validators&lt;/a&gt;&lt;/p&gt;
  &lt;figure id=&quot;a3Yj&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/0d/45/0d45726e-cdc8-4d20-985b-b4e5be1080ee.png&quot; width=&quot;1107&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;fHH7&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;cgmv&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Перевірка логів&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;udO6&quot;&gt;journalctl -n 100 -f -u neard | ccze -A&lt;/pre&gt;
  &lt;figure id=&quot;laP7&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/81/2d/812d54cc-2b08-477d-be74-7be26f9b97ce.png&quot; width=&quot;1317&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;LAhd&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Перевірка логів валідатора&lt;/strong&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;WwRn&quot;&gt;sudo journalctl -n 100 -f -u neard | ccze -A | grep INFO&lt;/p&gt;
  &lt;/section&gt;
  &lt;figure id=&quot;w2NJ&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/de/0e/de0e4a72-381c-4d64-9e36-98532983b4ee.jpeg&quot; width=&quot;1163&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;huS6&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Перевірка версії ноди&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;zSLp&quot;&gt;curl -s http://127.0.0.1:3030/status | jq .version&lt;/pre&gt;
  &lt;figure id=&quot;kguT&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/c5/65/c565c511-18cd-4bff-ae9b-8f6f864d9756.png&quot; width=&quot;590&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;pHS2&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Перевірка делегатора&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;Izkh&quot;&gt;near view $POOL get_accounts &amp;#x27;{&amp;quot;from_index&amp;quot;: 0, &amp;quot;limit&amp;quot;: 10}&amp;#x27; --accountId $ACCOUNT_ID&lt;/pre&gt;
  &lt;p id=&quot;am7p&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;wf1E&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Перевірка вироблених блоків. Замінити &amp;lt;POOL&amp;gt; на адресу свого пулу у форматі &lt;u&gt;xxx.factory.shardnet.near&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;VM3w&quot;&gt;curl -s -d &amp;#x27;{&amp;quot;jsonrpc&amp;quot;: &amp;quot;2.0&amp;quot;, &amp;quot;method&amp;quot;: &amp;quot;validators&amp;quot;, &amp;quot;id&amp;quot;: &amp;quot;dontcare&amp;quot;, &amp;quot;params&amp;quot;: [null]}&amp;#x27; -H &amp;#x27;Content-Type: application/json&amp;#x27; 127.0.0.1:3030 | jq -c &amp;#x27;.result.current_validators[] | select(.account_id | contains (&amp;quot;&amp;lt;POOL&amp;gt;&amp;quot;))&amp;#x27;&lt;/pre&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;figure id=&quot;JW2e&quot; class=&quot;m_original&quot;&gt;
      &lt;img src=&quot;https://img1.teletype.in/files/01/0f/010f942c-0917-4675-91ea-d5a89643a7c9.png&quot; width=&quot;1143&quot; /&gt;
    &lt;/figure&gt;
  &lt;/section&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;ru6A&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;&lt;code&gt;Завдання 5. Встановлення ноди на сервері Хмарі&lt;/code&gt;&lt;/strong&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;bL28&quot; data-align=&quot;right&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;A0z3&quot;&gt;&lt;strong&gt;У цьому завдання Вам потрібно написати статтю в Medium, Github або Teletype, в якій описується інформація про сервер (провайдер, характеристики, вартість і т.д.), а також всі ваші дії з виконання 1-4 завдань з покроковим описом і скріншотами .&lt;/strong&gt;&lt;/p&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;DFke&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;&lt;strong&gt;Завдання 6. : Налаштування автоматичного пінгу&lt;/strong&gt;&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;hezh&quot; data-align=&quot;right&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;zDTK&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Створюємо скрипт для автоматичного пінгу:&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;mRQH&quot;&gt;mkdir logs
mkdir scripts
cat &amp;gt; /root/scripts/ping.sh
#!/bin/sh
# Ping call to renew Proposal added to crontab

export NEAR_ENV=shardnet
export POOL=$POOL
export ACCOUNT_ID=$ACCOUNT_ID
export MONIKER=$MONIKER
export LOGS=/root/logs

echo &amp;quot;---&amp;quot; &amp;gt;&amp;gt; $LOGS/all.log
date &amp;gt;&amp;gt; $LOGS/all.log
near call $POOL ping &amp;#x27;{}&amp;#x27; --accountId $ACCOUNT_ID --gas=300000000000000 &amp;gt;&amp;gt; $LOGS/all.log
near proposals | grep $MONIKER &amp;gt;&amp;gt; $LOGS/all.log
near validators current | grep $MONIKER &amp;gt;&amp;gt; $LOGS/all.log
near validators next | grep $MONIKER &amp;gt;&amp;gt; $LOGS/all.log

# натискаємо CTRL+D для збереження та виходу з редактора&lt;/pre&gt;
  &lt;p id=&quot;YGXg&quot;&gt;&lt;strong&gt;Створюємо новий crontab, який запускає наш скрипт кожні 2 години&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;66Dh&quot;&gt;crontab -e&lt;/pre&gt;
  &lt;p id=&quot;CAOw&quot;&gt;&lt;strong&gt;Копіюємо команду та вставляємо у файл&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;vm0L&quot;&gt;0 */2 * * * sh /root/scripts/ping.sh
&lt;/pre&gt;
  &lt;figure id=&quot;EM3q&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/9a/93/9a93321a-09ce-4b08-8069-2fe97a926e33.png&quot; width=&quot;476&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;ze4z&quot;&gt;&lt;strong&gt;Перезапускаємо cron&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;NLTM&quot;&gt;systemctl restart cron&lt;/pre&gt;
  &lt;p id=&quot;0otA&quot;&gt;&lt;strong&gt;Перевіряємо чи активний cron&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;JVQN&quot;&gt;systemctl status cron&lt;/pre&gt;
  &lt;figure id=&quot;eNJ5&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/15/e2/15e266a4-2426-4043-9910-b02b1c19c356.png&quot; width=&quot;974&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;JWOo&quot;&gt;&lt;strong&gt;Через пару годин перевіряємо логи / а через пару діб роботи вашого валідатора буде приблизно так.&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;tCvM&quot;&gt;cat /root/logs/all.log&lt;/pre&gt;
  &lt;figure id=&quot;rjx0&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/c1/58/c1588b4e-821b-4364-a0a9-29ee7a323bb1.png&quot; width=&quot;1127&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;HIul&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Скріншот транзакцій мого пула [alexcryptopool.factory.shardnet.near]&lt;/strong&gt;&lt;/p&gt;
  &lt;figure id=&quot;T1CF&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/d5/f0/d5f0311f-9fb6-4551-8a25-d0836e428b69.png&quot; width=&quot;1098&quot; /&gt;
  &lt;/figure&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;SPtn&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;&lt;strong&gt;Завдання 8. : Розгортання смарт контракту&lt;/strong&gt;&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;MFws&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Оновлюємо Rust&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;NfVk&quot;&gt;curl --proto &amp;#x27;=https&amp;#x27; --tlsv1.2 https://sh.rustup.rs -sSf | sh
source $HOME/.cargo/env&lt;/pre&gt;
  &lt;p id=&quot;2JxB&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Додаємо набор wasm32-unknown-unknown&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;gzY2&quot;&gt;rustup target add wasm32-unknown-unknown&lt;/pre&gt;
  &lt;p id=&quot;UYBz&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Клонуємо репозиторій та компілюємо смарт контракт&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;Jbqw&quot;&gt;git clone https://github.com/zavodil/near-staking-pool-owner
cd near-staking-pool-owner/contract
rustup target add wasm32-unknown-unknown
cargo build --target wasm32-unknown-unknown --release&lt;/pre&gt;
  &lt;p id=&quot;opBH&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Розгортаємо смарт контракт на своєму обліковому записі&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;vxyb&quot;&gt;NEAR_ENV=shardnet near deploy $ACCOUNT_ID --wasmFile target/wasm32-unknown-unknown/release/contract.wasm&lt;/pre&gt;
  &lt;figure id=&quot;OS0H&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/3b/b8/3bb84be1-217e-41e4-9d9c-875dd123e6ca.jpeg&quot; width=&quot;1164&quot; /&gt;
  &lt;/figure&gt;
  &lt;figure id=&quot;JfXE&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/83/cd/83cd6e3c-c4a4-4a58-b38b-28bac16e6f1d.jpeg&quot; width=&quot;1163&quot; /&gt;
  &lt;/figure&gt;
  &lt;figure id=&quot;NEAt&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/36/82/3682d4e4-c1e9-42e6-a8ce-20336aed8a56.jpeg&quot; width=&quot;1166&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;XOxE&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Створюємо новий гаманець, на який відправлятимемо частину доходів &lt;/strong&gt;&lt;a href=&quot;https://wallet.shardnet.near.org/&quot; target=&quot;_blank&quot;&gt;https://wallet.shardnet.near.org/&lt;/a&gt;. &lt;strong&gt;Зберігаємо мнемоніку у надійному місці. &lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;cL76&quot;&gt;&lt;strong&gt;&lt;u&gt;Ніколи не показуйте вашу мнемоніку бо вас можуть обдурити та вкрасти ваші гроші з гаманця.&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
  &lt;figure id=&quot;miye&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/8d/02/8d025e31-a820-464d-a0f7-147f0daeb237.png&quot; width=&quot;677&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;qzj0&quot;&gt;&lt;strong&gt;Ініціалізуємо облікові записи для поділу доходів. Вносимо зміни до команди:&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;vxFf&quot;&gt;&lt;strong&gt;&amp;lt;POOL&amp;gt;&lt;/strong&gt;: адреса вашого стекінг пулу (наприклад: trdm.factory.shardnet.near)&lt;br /&gt;&lt;strong&gt;&amp;lt;ACCOUNT_ID&amp;gt;&lt;/strong&gt;: адреса основного гаманця (наприклад: trdm.shardnet.near)&lt;br /&gt;&lt;strong&gt;&amp;lt;REWARDS_ACCOUNT_1&amp;gt;&lt;/strong&gt;: адреса першого гаманця нагород. Я використовую свій головний гаманець (trdm.shardnet.near)&lt;br /&gt;&lt;strong&gt;&amp;lt;REWARDS_ACCOUNT_2&amp;gt;&lt;/strong&gt;: адреса другого гаманця для нагород (trdm_rewards.shardnet.near)&lt;br /&gt;&lt;u&gt;&lt;strong&gt;Також можна змінити розподіл доходу між гаманцями, змінивши показники numerator та denominator. У цій команді використовується розподіл 50/50.&lt;br /&gt;Або як забажаєте)&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;ljf6&quot;&gt;NEAR_ENV=shardnet near call $ACCOUNT_ID new &amp;#x27;{&amp;quot;staking_pool_account_id&amp;quot;: &amp;quot;&amp;lt;POOL&amp;gt;&amp;quot;, &amp;quot;owner_id&amp;quot;:&amp;quot;&amp;lt;ACCOUNT_ID&amp;gt;&amp;quot;, &amp;quot;reward_receivers&amp;quot;: [[&amp;quot;&amp;lt;REWARDS_ACCOUNT_1&amp;gt;&amp;quot;, {&amp;quot;numerator&amp;quot;: 50, &amp;quot;denominator&amp;quot;:50}], [&amp;quot;&amp;lt;REWARDS_ACCOUNT_2&amp;gt;&amp;quot;, {&amp;quot;numerator&amp;quot;: 50, &amp;quot;denominator&amp;quot;:50}]]}&amp;#x27; --accountId $ACCOUNT_ID&lt;/pre&gt;
  &lt;p id=&quot;Y8N6&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Успішний висновок виглядає так&lt;/strong&gt;&lt;/p&gt;
  &lt;figure id=&quot;Y50b&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/3b/b8/3bb84be1-217e-41e4-9d9c-875dd123e6ca.jpeg&quot; width=&quot;1164&quot; /&gt;
  &lt;/figure&gt;
  &lt;figure id=&quot;o6pV&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/83/cd/83cd6e3c-c4a4-4a58-b38b-28bac16e6f1d.jpeg&quot; width=&quot;1163&quot; /&gt;
  &lt;/figure&gt;
  &lt;figure id=&quot;hRFH&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/3b/b8/3bb84be1-217e-41e4-9d9c-875dd123e6ca.jpeg&quot; width=&quot;1164&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;Pema&quot;&gt;&lt;strong&gt;Після однієї епохи (12 годин) можна вивести токени, використовуючи наступну команду&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;HkRX&quot;&gt;NEAR_ENV=shardnet near call $ACCOUNT_ID withdraw &amp;#x27;{}&amp;#x27; --accountId $ACCOUNT_ID --gas 200000000000000
# {} виведе всі токени із стейку. Після успішної транзакції, застікати токени заново&lt;/pre&gt;
  &lt;p id=&quot;Pm5e&quot;&gt;&lt;strong&gt;Робимо скріншот отриманого висновку та прикріплюємо його у форму для здачі завдань разом із посиланням на транзакцію.&lt;/strong&gt;&lt;/p&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;B1Ve&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;&lt;strong&gt;Завдання 9. : Аптайм 70% + відкрити порт 3030&lt;/strong&gt;&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;W02T&quot; data-align=&quot;right&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;mXll&quot;&gt;Для успішного виконання завдання ваш провідник повинен мати аптайм вище 70%. Перевірити аптайм можна за посиланням після відкриття 3030 порту.&lt;/p&gt;
  &lt;p id=&quot;oqew&quot;&gt;Варіант 1. &lt;br /&gt;Відкриваємо порти / Proceed with operation / ставте літеру } y як зазначено у скрині нижче&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(0,   0%,  var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;TE3g&quot;&gt;ufw enable&lt;/p&gt;
  &lt;/section&gt;
  &lt;figure id=&quot;PWDU&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/5a/98/5a98025e-b6ba-4ca7-84a8-55ddb75c7867.png&quot; width=&quot;666&quot; /&gt;
  &lt;/figure&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;XRQM&quot;&gt;ufw enable
ufw allow 3030
ufw allow 22&lt;/pre&gt;
  &lt;p id=&quot;Pq5F&quot;&gt;Перевіряємо чи відкрився порт&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;iSfc&quot;&gt;ufw status&lt;/pre&gt;
  &lt;figure id=&quot;KdXD&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/90/1b/901b952e-3ba5-43d5-9633-624ddc280987.png&quot; width=&quot;481&quot; /&gt;
  &lt;/figure&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;jf8F&quot;&gt;&lt;strong&gt;Варіант 2.&lt;br /&gt;Перевіряємо чи відчинен порт 3030 &lt;/strong&gt;&lt;/p&gt;
    &lt;p id=&quot;lFO2&quot;&gt;&lt;br /&gt;sudo iptables -L | grep 3030&lt;/p&gt;
  &lt;/section&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;yHU3&quot;&gt;&lt;strong&gt;Якщо нічого не показує то потрібно його відчинити командою:&lt;/strong&gt;&lt;/p&gt;
    &lt;pre data-lang=&quot;shell&quot; id=&quot;R0CN&quot;&gt;sudo iptables -A INPUT -p tcp --dport 3030 -j ACCEPT&lt;/pre&gt;
  &lt;/section&gt;
  &lt;p id=&quot;SwK1&quot;&gt;&lt;strong&gt;Зберігаємо у конфігуряції сервера : при вводі команд нижче вибьє вікно розового кольору для підтвердження  - натискаємо yes!&lt;/strong&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;eh7m&quot;&gt;sudo apt install iptables-persistent&lt;br /&gt;sudo dpkg-reconfigure iptables-persistent&lt;br /&gt;&lt;br /&gt;iptables-save &amp;gt; /etc/iptables/rules.v4&lt;br /&gt;ip6tables-save &amp;gt; /etc/iptables/rules.v6&lt;/p&gt;
  &lt;/section&gt;
  &lt;p id=&quot;Jt3i&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;L9EI&quot;&gt;Заходимо за посиланням &lt;strong&gt;http://&amp;lt;ваш_ip&amp;gt;:3030/status&lt;/strong&gt; і робимо скріншот для відправки у форму.&lt;/p&gt;
  &lt;p id=&quot;YcDn&quot;&gt;&lt;/p&gt;
  &lt;figure id=&quot;VkTK&quot; class=&quot;m_retina&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/be/0f/be0f4d19-0777-4aa2-b621-e81fb42acd28.png&quot; width=&quot;788.5&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;oDhU&quot;&gt;Після цього заходимо на сайт &lt;a href=&quot;https://openshards.io/shardnet-uptime-scoreboard/&quot; target=&quot;_blank&quot;&gt;https://openshards.io/shardnet-uptime-scoreboard/&lt;/a&gt;, чекаємо коли аптайм стане більше 70%, робимо скріншот та заповнюємо &lt;a href=&quot;https://docs.google.com/forms/d/e/1FAIpQLScp9JEtpk1Fe2P9XMaS9Gl6kl9gcGVEp3A5vPdEgxkHx3ABjg/viewform&quot; target=&quot;_blank&quot;&gt;форму&lt;/a&gt;.&lt;/p&gt;
  &lt;figure id=&quot;G1YB&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/56/cd/56cdc927-b8f4-45a4-b873-ff0e69e40a6f.png&quot; width=&quot;1319&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;q7Gd&quot;&gt;Аптайм вважається за такою формулою:&lt;br /&gt;% chunks online = (CHUNKS PRODUCED / CHUNKS EXPECTED) * (VALIDATED EPOCHS / TOTAL EPOCHS)&lt;/p&gt;
  &lt;p id=&quot;0mMa&quot;&gt;Також можете подивитись аптайм вашої ноди у терміналі командою:&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(170, 33%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;c7No&quot;&gt;near proposals | grep alexcryptopool.factory.shardnet.near&lt;/p&gt;
    &lt;hr /&gt;
  &lt;/section&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;figure id=&quot;Lgtf&quot; class=&quot;m_column&quot;&gt;
      &lt;img src=&quot;https://img3.teletype.in/files/2b/38/2b38fc55-1faf-413e-a4a4-464e8a429026.jpeg&quot; width=&quot;1162&quot; /&gt;
    &lt;/figure&gt;
  &lt;/section&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;m93N&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;Завдання 10. Аптайм 60% + делегація на ноду від фонду&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;dIWH&quot;&gt;Це завдання автоматично делегує ShardNet NEAR пулам із часом безвідмовної роботи &amp;gt;= 60%.&lt;/p&gt;
  &lt;ul id=&quot;eBB0&quot;&gt;
    &lt;li id=&quot;MbbA&quot;&gt;&lt;strong&gt;Знімок 2022-08-09:&lt;/strong&gt; Одноразове делегування 1000 ShardNet NEAR для валідаторів із &amp;gt;= 60% «% фрагментів онлайн» за &lt;strong&gt;УВЕСЬ ЧАС&lt;/strong&gt; .&lt;/li&gt;
    &lt;li id=&quot;iUFV&quot;&gt;&lt;strong&gt;Починаючи з 10.08.2022:&lt;/strong&gt; щодня 100 ShardNet NEAR делегуються валідаторам із &amp;gt;= 60% «% Chunks Online» за останні &lt;strong&gt;25 ЕПОХ&lt;/strong&gt; .&lt;br /&gt;&lt;/li&gt;
  &lt;/ul&gt;
  &lt;h3 id=&quot;EL1m&quot;&gt;Кроки&lt;/h3&gt;
  &lt;h3 id=&quot;IrRi&quot;&gt;Відстежуйте час безвідмовної роботи&lt;/h3&gt;
  &lt;ul id=&quot;IxKf&quot;&gt;
    &lt;li id=&quot;HSoz&quot;&gt;Перевірте свій поточний час безвідмовної роботи та підвищте його до 60% у таблиці лідерів безвідмовної роботи &lt;a href=&quot;https://openshards.io/shardnet-uptime-scoreboard/&quot; target=&quot;_blank&quot;&gt;ShardNet&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;Daiy&quot;&gt;Виправлення проблем із створенням блоків.&lt;/li&gt;
    &lt;li id=&quot;Pewl&quot;&gt;Перегляньте посібник з &lt;a href=&quot;https://github.com/near/stakewars-iii/blob/main/challenges/troubleshooting.md&quot; target=&quot;_blank&quot;&gt;усунення несправностей&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;918i&quot;&gt;Проблеми вузла налагодження&lt;/li&gt;
    &lt;li id=&quot;z9Gh&quot;&gt;Проблеми сортування з пропущеними блоками, переглянувши свій звіт на: &lt;a href=&quot;http://localhost:3030/debug&quot; target=&quot;_blank&quot;&gt;http://localhost:3030/debug&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;Kdjo&quot;&gt;Надішліть PR на StakeWars Github із причиною відсутності фрагментів &lt;a href=&quot;https://github.com/near/stakewars-iii/issues&quot; target=&quot;_blank&quot;&gt;https://github.com/near/stakewars-iii/issues&lt;/a&gt;&lt;/li&gt;
    &lt;li id=&quot;XBBD&quot;&gt;Впровадити сценарії моніторингу&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;rcYL&quot;&gt;ще ви можете подивитись інформацію вашого валідатора за допомогою айпі командою&lt;br /&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(0,   0%,  var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;bPCQ&quot;&gt;http://&amp;lt;ваш_ip&amp;gt;:3030/debug&lt;/p&gt;
  &lt;/section&gt;
  &lt;figure id=&quot;zdFn&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/64/9f/649f1e1b-a393-475f-ba23-27887ca7a95a.png&quot; width=&quot;732&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;99cR&quot;&gt;Тут ви можете побачити багато інформації про вашу ноду!&lt;br /&gt;Так як я робив бєкап ноди 15-ть днів тому то в мене на цьому сервері показує Час роботи ноди 15-ть днів.&lt;/p&gt;
  &lt;p id=&quot;2mSy&quot;&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;Завдання 10 виконано!&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;fkBn&quot;&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;4QTm&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;&lt;strong&gt;Завдання 13. Бекап-нода&lt;/strong&gt;&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;yJcf&quot; data-align=&quot;right&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;z8Jv&quot;&gt;В даному завданні нам необхідно встановити на сервері ще одну ноду, яка працюватиме в тих випадках, коли з основної будуть якісь проблеми, або проводиться оновлення.&lt;/p&gt;
  &lt;p id=&quot;KlPv&quot;&gt;Важливо! Дане завдання прошу уважно вивчити перед встановленням та спробувати зрозуміти які дії виконуються. Якщо дві ноди працюватимуть одночасно з одним ключем, відбудеться подвійне підписання блоку – найстрашніше, що може статися з вашим валідатором. Валідатор буде назавжди поміщений у в&amp;#x27;язницю без можливості відновлення, а кошти – загублено.&lt;/p&gt;
  &lt;p id=&quot;hzdM&quot;&gt;Створюємо папку для бекап ноди, завантажуємо та збираємо бінарні файли&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;ALi0&quot;&gt;mkdir backup_node
cd backup_node
git clone https://github.com/near/nearcore
cd nearcore
git fetch origin --tags
git checkout 1897d5144a7068e4c0d5764d8c9180563db2fe43 
cargo build -p neard --release&lt;/pre&gt;
  &lt;figure id=&quot;VVZd&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/ab/8a/ab8a15ae-184d-468e-827f-b7863b8a1da7.png&quot; width=&quot;781&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;46cm&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;pAJ4&quot;&gt;&lt;strong&gt;Створюємо сервісний файл&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;3gnz&quot;&gt;printf &amp;quot;[Unit]
Description=NEARBACKUPd Daemon Service

[Service]
Type=simple
User=root
#Group=nearbackup
WorkingDirectory=/root/.near
ExecStart=/root/backup_node/nearcore/target/release/neard run
Restart=on-failure
RestartSec=30
KillSignal=SIGINT
TimeoutStopSec=45
KillMode=mixed

[Install]
WantedBy=multi-user.target&amp;quot; &amp;gt; /etc/systemd/system/nearbackupd.service&lt;/pre&gt;
  &lt;p id=&quot;VR82&quot;&gt;&lt;strong&gt;Створюємо папки для зберігання ключів&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;0pY2&quot;&gt;mkdir reserve_keys
cd reserve_keys
mkdir main
mkdir backup&lt;/pre&gt;
  &lt;p id=&quot;wTkh&quot;&gt;&lt;strong&gt;Копіюємо ключі від основної ноди в резервну папку&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;CIZc&quot;&gt;cd
cp /root/.near/validator_key.json /root/reserve_keys/main
cp /root/.near/node_key.json /root/reserve_keys/main&lt;/pre&gt;
  &lt;p id=&quot;UeKK&quot;&gt;&lt;strong&gt;Зупиняємо основну ноду&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;S4cq&quot;&gt;sudo systemctl stop neard&lt;/pre&gt;
  &lt;p id=&quot;Fypo&quot;&gt;&lt;strong&gt;Видаляємо ключі, генезис і конфіг файли&lt;/strong&gt; (&lt;u&gt;це потрібно для того, щоб з генерувати node_key бекап ноди&lt;/u&gt;). &lt;u&gt;Не дивлячись на те, що ми скопіювали ключі основної ноди до папки на сервері&lt;/u&gt;, &lt;strong&gt;раджу&lt;/strong&gt; зберегти їх &lt;strong&gt;на ваш комп&amp;#x27;ютер&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;Vg9D&quot;&gt;rm /root/.near/genesis.json
rm /root/.near/node_key.json
rm /root/.near/config.json&lt;/pre&gt;
  &lt;p id=&quot;7tJ4&quot;&gt;&lt;strong&gt;Ініціалізуємо бекап-ноду&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;nykA&quot;&gt;/root/backup_node/nearcore/target/release/neard --home ~/.near init --chain-id shardnet --download-genesis&lt;/pre&gt;
  &lt;p id=&quot;g90X&quot;&gt;&lt;strong&gt;Оновлюємо конфіг&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;sOou&quot;&gt;rm ~/.near/config.json
wget -O ~/.near/config.json https://s3-us-west-1.amazonaws.com/build.nearprotocol.com/nearcore-deploy/shardnet/config.json&lt;/pre&gt;
  &lt;p id=&quot;tgxE&quot;&gt;&lt;strong&gt;Переносимо ключі бекап-ноди до папки з резервними ключами&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;F0nj&quot;&gt;cp /root/.near/validator_key.json /root/reserve_keys/backup
cp /root/.near/node_key.json /root/reserve_keys/backup&lt;/pre&gt;
  &lt;p id=&quot;qlYD&quot;&gt;&lt;strong&gt;Повертаємо ключ основної ноди та перевіряємо працездатність&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;mzh7&quot;&gt;cp /root/reserve_keys/main/node_key.json /root/.near 
sudo systemctl restart neard &amp;amp;&amp;amp; journalctl -n 100 -f -u neard | ccze -A|grep INFO &lt;/pre&gt;
  &lt;figure id=&quot;0DXL&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/41/c1/41c1e389-1d4d-4556-8283-d6f082137c0a.png&quot; width=&quot;1399&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;VDMQ&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;nFt3&quot;&gt;&lt;strong&gt;Наразі ми готові виконувати завдання. Для підтвердження завдання необхідно зробити скріншот всіх наступних дій.&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;D0Mh&quot;&gt;sudo systemctl stop neard
cat .near/node_key.json|grep public_key
rm /root/.near/node_key.json
rm /root/.near/validator_key.json
cp /root/reserve_keys/backup/validator_key.json /root/.near
cp /root/reserve_keys/backup/node_key.json /root/.near
cat .near/node_key.json|grep public_key
sudo systemctl daemon-reload
sudo systemctl enable nearbackupd
sudo systemctl restart nearbackupd &amp;amp;&amp;amp; journalctl -f -u nearbackupd | ccze -A|grep INFO&lt;/pre&gt;
  &lt;p id=&quot;m7qU&quot;&gt;&lt;strong&gt;За підсумками у вас повинен вийти скріншот із двома різними ключами ноди та робочими логами.&lt;/strong&gt;&lt;/p&gt;
  &lt;figure id=&quot;gauK&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/c0/75/c0754b83-8985-4c2d-97ae-6703b13307fa.png&quot; width=&quot;1421&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;GW4n&quot;&gt;&lt;strong&gt;Завдання виконано.&lt;/strong&gt; &lt;/p&gt;
  &lt;p id=&quot;Jeac&quot;&gt;Тепер ваш валідатор працює на бекап-ноді. Можна спокійно оновлювати та робити інші дії з основною нодою, це не вплине на роботу вашого валідатора.&lt;/p&gt;
  &lt;section&gt;
    &lt;p id=&quot;UJhX&quot;&gt;&lt;strong&gt;#Щоб повернутися на основну ноду, виконайте такі команди&lt;/strong&gt;&lt;/p&gt;
    &lt;pre data-lang=&quot;bash&quot; id=&quot;xgws&quot;&gt;cd
sudo systemctl stop nearbackupd
cat .near/node_key.json|grep public_key
rm /root/.near/node_key.json
rm /root/.near/validator_key.json
cp /root/reserve_keys/main/validator_key.json /root/.near
cp /root/reserve_keys/main/node_key.json /root/.near
cat .near/node_key.json|grep public_key
sudo systemctl restart neard &amp;amp;&amp;amp; journalctl -f -u neard | ccze -A|grep INFO&lt;/pre&gt;
  &lt;/section&gt;
  &lt;p id=&quot;5wnF&quot;&gt;&lt;strong&gt;&lt;u&gt;Ще раз хочу вас попередити про подвійне підписання блоку, будьте уважні та обережні!&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;EgmC&quot;&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;24OG&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;Завдання 14: Автоскріпт резервного копіювання&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;5foM&quot;&gt;У цьому завдання вам необхідно створити вузол резервного копіювання, щоб у разі потреби перенесення бази даних ви могли це зробити максимально швидко.&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;jMvg&quot;&gt;Для початку вам потрібний додатковий сервер, на якому стоятиме вузол резервного копіювання, не слід використовувати сервер, на якому стоїть ваш валідатор! В мене це ще один дедік на &lt;a href=&quot;https://www.hetzner.com/de/dedicated-rootserver/ax51-nvme&quot; target=&quot;_blank&quot;&gt;Hatzner&lt;/a&gt;&lt;/p&gt;
  &lt;/section&gt;
  &lt;p id=&quot;MxPR&quot;&gt;&lt;em&gt;&lt;u&gt;Після успішного розгортання на новому сервері ноди вам необхідно створити скрипт автоматичного резервного копіювання.&lt;/u&gt;&lt;/em&gt;&lt;/p&gt;
  &lt;p id=&quot;Tkgv&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Саме це зараз і будемо робити :)&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;shell&quot; id=&quot;VlDF&quot;&gt;#переходимо до потрібної деррикторії
cd scripts

#створюємо папку бєкапс
mkdir backups

#відчиняємо та заповнюємо нана-файл-бекап
sudo nano backup.sh&lt;/pre&gt;
  &lt;p id=&quot;vztR&quot;&gt;Додамо скрипт, редагуємо шляхи:&lt;/p&gt;
  &lt;pre data-lang=&quot;shell&quot; id=&quot;2SsO&quot;&gt;#!/bin/bash

DATE=$(date +%Y-%m-%d-%H-%M)
DATADIR=&amp;lt;редагуємо_шлях&amp;gt;
BACKUPDIR=&amp;lt;редагуємо_шлях&amp;gt;/backups/near_${DATE}

mkdir $BACKUPDIR

sudo systemctl stop neard.service

wait

echo &amp;quot;NEAR node was stopped&amp;quot; | ts

if [ -d &amp;quot;$BACKUPDIR&amp;quot; ]; then
    echo &amp;quot;Backup started&amp;quot; | ts

    cp -rf $DATADIR/mainnet/data/ ${BACKUPDIR}/

    # Submit backup completion status, you can use healthchecks.io, betteruptime.com or other services
    # Example
    # curl -fsS -m 10 --retry 5 -o /dev/null https://hc-ping.com/xXXXxXXx-XxXx-XXXX-XXXx-...

    echo &amp;quot;Backup completed&amp;quot; | ts
else
    echo $BACKUPDIR is not created. Check your permissions.
    exit 0
fi

sudo systemctl start neard.service

echo &amp;quot;NEAR node was started&amp;quot; | ts&lt;/pre&gt;
  &lt;figure id=&quot;BSnC&quot; class=&quot;m_custom&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/31/37/31371119-abe4-4306-92a4-185743bbd7bc.png&quot; width=&quot;877&quot; /&gt;
    &lt;figcaption&gt;Пример:&lt;/figcaption&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;qw7J&quot;&gt;Створюємо завдання cron:&lt;/p&gt;
  &lt;pre data-lang=&quot;shell&quot; id=&quot;EebJ&quot;&gt;sudo nano /etc/crontab&lt;/pre&gt;
  &lt;p id=&quot;TpS0&quot;&gt;&lt;u&gt;&lt;strong&gt;Цю команду треба редогувати прописуючи ваші шляхи до скрипту та логів:&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;shell&quot; id=&quot;VZMk&quot;&gt;0  12 *  *  * near      &amp;lt;редагуємо_шлях&amp;gt;/NEARmain/backup.sh &amp;gt;&amp;gt; &amp;lt;редагуємо_шлях&amp;gt;/NEARmain/backups/backup.log 2&amp;gt;&amp;amp;1&lt;/pre&gt;
  &lt;p id=&quot;eJRE&quot;&gt;&lt;br /&gt;&lt;strong&gt;Мій приклад:&lt;/strong&gt;&lt;/p&gt;
  &lt;figure id=&quot;8YL5&quot; class=&quot;m_custom&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/b5/c0/b5c0cd59-2c26-4e1d-aefc-69b1dfb51f26.png&quot; width=&quot;953&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;Dhex&quot;&gt;&lt;u&gt;&lt;strong&gt;Виконано!&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;
  &lt;p id=&quot;t7cm&quot;&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;T0Qj&quot; data-align=&quot;center&quot;&gt;&lt;code&gt;&lt;strong&gt;Завдання 19. : Графана моніторінг&lt;/strong&gt;&lt;/code&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;9fBH&quot;&gt;&lt;strong&gt;Для цього нам потрібно виконати три дії - а потім налаштувати Графану:&lt;/strong&gt;&lt;br /&gt;&lt;u&gt;1. Оновити базу данних та скачати і встановити ноду обробник, створити файл сервісу та запустити.&lt;/u&gt;&lt;/p&gt;
  &lt;p id=&quot;KR4p&quot;&gt;&lt;strong&gt;1. Оновлюємо базу даних&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;sudo apt-get update &amp;amp;&amp;amp; sudo apt-get upgrade -y&lt;/code&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;Q6Wd&quot;&gt;#1.1 скачуєм ноду обробник та налаштовуємо її я роблю це однією командою:&lt;br /&gt;&lt;br /&gt;cd $HOME &amp;amp;&amp;amp; \&lt;br /&gt;wget https://github.com/prometheus/node_exporter/releases/download/v1.2.0/node_exporter-1.2.0.linux-amd64.tar.gz &amp;amp;&amp;amp; \&lt;br /&gt;tar xvf node_exporter-1.2.0.linux-amd64.tar.gz &amp;amp;&amp;amp; \&lt;br /&gt;rm node_exporter-1.2.0.linux-amd64.tar.gz &amp;amp;&amp;amp; \&lt;br /&gt;sudo mv node_exporter-1.2.0.linux-amd64 node_exporter &amp;amp;&amp;amp; \&lt;br /&gt;chmod +x $HOME/node_exporter/node_exporter &amp;amp;&amp;amp; \&lt;br /&gt;mv $HOME/node_exporter/node_exporter /usr/bin &amp;amp;&amp;amp; \&lt;br /&gt;rm -Rvf $HOME/node_exporter/&lt;/p&gt;
  &lt;/section&gt;
  &lt;p id=&quot;nEsm&quot;&gt;1.2 Тепер треба створити &lt;strong&gt;файл сервісу - exporterd&lt;/strong&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;rO9I&quot;&gt;sudo tee /etc/systemd/system/exporterd.service &amp;gt; /dev/null &amp;lt;&amp;lt;EOF&lt;br /&gt;[Unit]&lt;br /&gt;Description=node_exporter&lt;br /&gt;After=network-online.target&lt;br /&gt;[Service]&lt;br /&gt;User=$USER&lt;br /&gt;ExecStart=/usr/bin/node_exporter&lt;br /&gt;Restart=always&lt;br /&gt;RestartSec=3&lt;br /&gt;LimitNOFILE=65535&lt;br /&gt;[Install]&lt;br /&gt;WantedBy=multi-user.target&lt;br /&gt;EOF&lt;/p&gt;
  &lt;/section&gt;
  &lt;p id=&quot;3GQ0&quot;&gt;&lt;strong&gt;1.3 Та запускаємо сервіс однією командою:&lt;/strong&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;hqW6&quot;&gt;sudo systemctl daemon-reload &amp;amp;&amp;amp; \&lt;br /&gt;sudo systemctl enable exporterd &amp;amp;&amp;amp; \&lt;br /&gt;sudo systemctl restart exporterd&lt;/p&gt;
  &lt;/section&gt;
  &lt;p id=&quot;thYD&quot;&gt;&lt;strong&gt;1.4 Перевірити логи:&lt;/strong&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;pre data-lang=&quot;bash&quot; id=&quot;Mlk3&quot;&gt;sudo journalctl -u exporterd -f&lt;/pre&gt;
  &lt;/section&gt;
  &lt;p id=&quot;mhE6&quot;&gt;1.5 Тепер переходимо в браузері на ноуті чи компі за адресою: &lt;strong&gt;http://&amp;lt;ip_server&amp;gt;:9100/&lt;/strong&gt;, де &amp;lt;ip_server&amp;gt; -  на якому встановили &lt;strong&gt;node_exporter.&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;vesQ&quot;&gt;&lt;u&gt;Відобразиться&lt;/u&gt; &lt;strong&gt;Node Exporter&lt;/strong&gt;. Натискаємо &lt;u&gt;Metrics&lt;/u&gt;:&lt;/p&gt;
  &lt;p id=&quot;mpoc&quot;&gt;&lt;u&gt;2) Встановлюємо &lt;strong&gt;Промитей - як з того фільму де люди жаждали знайти своїх творців)&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;
  &lt;p id=&quot;lpFc&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Оновлюємо базу данних&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;VkvN&quot;&gt;sudo apt-get update &amp;amp;&amp;amp; sudo apt-get upgrade -y&lt;/pre&gt;
  &lt;p id=&quot;eT97&quot;&gt;&lt;strong&gt;Встановлюєм прометей&lt;/strong&gt; &lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;k4JC&quot;&gt;wget &lt;a href=&quot;https://github.com/prometheus/prometheus/releases/download/v2.38.0/prometheus-2.38.0.linux-amd64.tar.gz&quot; target=&quot;_blank&quot;&gt;https://github.com/prometheus/prometheus/releases/download/v2.38.0/prometheus-2.38.0.linux-amd64.tar.gz&lt;/a&gt; &amp;amp;&amp;amp; \&lt;br /&gt;tar xvf prometheus-2.38.0.linux-amd64.tar.gz &amp;amp;&amp;amp; \&lt;br /&gt;rm prometheus-2.38.0.linux-amd64.tar.gz &amp;amp;&amp;amp; \&lt;br /&gt;mv prometheus-2.38.0.linux-amd64 prometheus&lt;/p&gt;
  &lt;/section&gt;
  &lt;p id=&quot;fmv2&quot;&gt;Відчиняєм &lt;strong&gt;конфіг для налаштування&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;CEn7&quot;&gt;nano $HOME/prometheus/prometheus.yml&lt;/pre&gt;
  &lt;p id=&quot;0Ld2&quot;&gt;У графу &lt;strong&gt;tagrets&lt;/strong&gt; нам потрібно після коми додати IP-адресу нашого сервера з нодою, звідки експортується статистика. &lt;/p&gt;
  &lt;p id=&quot;yOVX&quot;&gt;&lt;strong&gt;Приклад:&lt;/strong&gt;&lt;/p&gt;
  &lt;pre id=&quot;Cihe&quot;&gt;scrape_configs:
  - job_name: &amp;#x27;near_node&amp;#x27;
    scrape_interval: 5s
    static_configs:
      - targets: [&amp;#x27;localhost:9090&amp;#x27;,162.55.99.50:3030,162.55.99.50:9100]&lt;/pre&gt;
  &lt;p id=&quot;4dsy&quot;&gt;&lt;strong&gt;Після чого зберігаємо&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;hCtk&quot;&gt;&lt;strong&gt;Даємо права на виконання&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;2XV4&quot;&gt;chmod +x $HOME/prometheus/prometheus&lt;/pre&gt;
  &lt;p id=&quot;BRCD&quot;&gt;&lt;strong&gt;Створюємо конфіг файл для прометея:&lt;/strong&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;alfb&quot;&gt;sudo tee /etc/systemd/system/prometheusd.service &amp;gt; /dev/null &amp;lt;&amp;lt;EOF&lt;br /&gt;[Unit]&lt;br /&gt;Description=prometheus&lt;br /&gt;After=network-online.target&lt;br /&gt;[Service]&lt;br /&gt;User=$USER&lt;br /&gt;ExecStart=$HOME/prometheus/prometheus \&lt;br /&gt;--config.file=&amp;quot;$HOME/prometheus/prometheus.yml&amp;quot;&lt;br /&gt;Restart=always&lt;br /&gt;RestartSec=3&lt;br /&gt;LimitNOFILE=65535&lt;br /&gt;[Install]&lt;br /&gt;WantedBy=multi-user.target&lt;br /&gt;EOF&lt;/p&gt;
  &lt;/section&gt;
  &lt;p id=&quot;sJ0q&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Та запускаємо&lt;/strong&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;cjg2&quot;&gt;sudo systemctl daemon-reload &amp;amp;&amp;amp; \&lt;br /&gt;sudo systemctl enable prometheusd &amp;amp;&amp;amp; \&lt;br /&gt;sudo systemctl restart prometheusd&lt;/p&gt;
  &lt;/section&gt;
  &lt;p id=&quot;zef4&quot;&gt;&lt;strong&gt;Дивитись логі:&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;VOnp&quot;&gt;sudo journalctl -u prometheusd -f&lt;/pre&gt;
  &lt;p id=&quot;bIci&quot;&gt;Тепер переходимо в браузері на своєму домашньому пристрої за адресою: http://&amp;lt;ір_server&amp;gt;:9090/, де &amp;lt;ір_server&amp;gt; - ір сервера, на якому встановлено prometheus.&lt;/p&gt;
  &lt;figure id=&quot;upxF&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/ec/f3/ecf3e7e5-7e50-40bb-954b-574e436494d9.png&quot; width=&quot;542&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;sSur&quot;&gt;&lt;strong&gt;3. Залишилось тільки встановити графану та налаштувати її&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;tDYQ&quot;&gt;# дуже легко встановлюємо її однією командою
sudo apt-get install -y adduser libfontconfig1 &amp;amp;&amp;amp; \
wget https://dl.grafana.com/oss/release/grafana_8.0.6_amd64.deb &amp;amp;&amp;amp; \
sudo dpkg -i grafana_8.0.6_amd64.deb&lt;/pre&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;dXOh&quot;&gt;# запускаємо сервіс &amp;#x27;grafana-server&amp;#x27;
sudo systemctl daemon-reload &amp;amp;&amp;amp; \
sudo systemctl enable grafana-server &amp;amp;&amp;amp; \
sudo systemctl restart grafana-server&lt;/pre&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;XHLd&quot;&gt;# можете подивитись на логі [чи все у нормі)]
sudo journalctl -u grafana-server -f&lt;/pre&gt;
  &lt;p id=&quot;pZjl&quot;&gt;&lt;strong&gt;Переходимо в браузері на ноуті чи компі за адресою&lt;/strong&gt;: http://&amp;lt;ір_server&amp;gt;:3000/, де &amp;lt;ір_server&amp;gt; - ір сервера, на якому встановлено &lt;strong&gt;прометей &lt;/strong&gt;та &lt;strong&gt;графана&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;rI7b&quot;&gt;Якщо все пройшло вдало, нас зустрічає вітальне вікно графани а далі вже справа техніки як ви бачите то все легко (коли розумієш що робиш звісно):&lt;/p&gt;
  &lt;section&gt;
    &lt;figure id=&quot;vTAj&quot; class=&quot;m_custom&quot;&gt;
      &lt;img src=&quot;https://img2.teletype.in/files/58/4c/584c9869-4b4a-47a9-ae92-4d20757fddd0.png&quot; width=&quot;529&quot; /&gt;
    &lt;/figure&gt;
  &lt;/section&gt;
  &lt;section&gt;
    &lt;p id=&quot;Ykmx&quot;&gt;Пароль: &lt;strong&gt;admin &lt;br /&gt;&lt;/strong&gt;Логін: &lt;strong&gt;admin&lt;/strong&gt;&lt;/p&gt;
  &lt;/section&gt;
  &lt;p id=&quot;DZr8&quot;&gt;Тепер задаємо власний пароль:&lt;/p&gt;
  &lt;section&gt;
    &lt;figure id=&quot;77vq&quot; class=&quot;m_custom&quot;&gt;
      &lt;img src=&quot;https://img3.teletype.in/files/67/cc/67cc3de7-fcfa-4a4d-86bb-a1c3ce70561d.png&quot; width=&quot;509&quot; /&gt;
    &lt;/figure&gt;
  &lt;/section&gt;
  &lt;p id=&quot;V6Vh&quot;&gt;А далі потрібно створити блоки моніторінгу - це дуже красиво, на данному етапі ми починаємо бачити візуалізацію замість коду, магія інакще не назвеш)&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;І починаємо виконувати завдання)&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;sbk5&quot;&gt;&lt;u&gt;&lt;strong&gt;1. Загальна інформаційна панель NEAR.&lt;br /&gt;&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;
  &lt;p id=&quot;niBY&quot;&gt;&lt;strong&gt;Block Height&lt;/strong&gt; - near_block_height_head&lt;br /&gt;&lt;strong&gt;Total Transactions&lt;/strong&gt; - near_transaction_processed_successfully_total&lt;br /&gt;&lt;strong&gt;Block Processed&lt;/strong&gt; - rate(near_block_processed_total[$__rate_interval])&lt;br /&gt;&lt;strong&gt;Blocks Per Minute&lt;/strong&gt; - near_blocks_per_minute&lt;br /&gt;&lt;strong&gt;Validators&lt;/strong&gt; - near_is_validator - near_validator_active_total&lt;br /&gt;&lt;strong&gt;Chunk&lt;/strong&gt; - histogram_quantile(0.95, sum(rate(near_chunk_tgas_used_hist_bucket[$__rate_interval])) by (le))&lt;br /&gt;&lt;strong&gt;Block Processing&lt;/strong&gt; - rate(near_block_processing_time_count[$__rate_interval])&lt;br /&gt;&lt;strong&gt;Transactions Pool Entries&lt;/strong&gt; - near_transaction_pool_entries&lt;br /&gt;&lt;strong&gt;Blocks Per Minute&lt;/strong&gt; - near_blocks_per_minute&lt;br /&gt;&lt;strong&gt;Processed Total Transactions&lt;/strong&gt; - rate(near_transaction_processed_total[$__rate_interval])&lt;br /&gt;&lt;strong&gt;Processed Successfully Transactions&lt;/strong&gt; - rate(near_transaction_processed_successfully_total[$__rate_interval])&lt;br /&gt;&lt;strong&gt;Reachable Peers&lt;/strong&gt; - near_peer_reachable&lt;br /&gt;&lt;strong&gt;Chunk Tgas Used&lt;/strong&gt; - near_chunk_tgas_used&lt;br /&gt;&lt;strong&gt;Block Processing Time Count&lt;/strong&gt; - rate(near_block_processing_time_count[$__rate_interval])&lt;/p&gt;
  &lt;p id=&quot;LGtC&quot;&gt;&lt;/p&gt;
  &lt;figure id=&quot;Mi3A&quot; class=&quot;m_retina&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/37/49/374912f5-5a0f-4e44-a025-4c859c978e9d.png&quot; width=&quot;794.5&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;qqu3&quot;&gt;в мене вийшло якось так! Мені подобається)&lt;/p&gt;
  &lt;p id=&quot;QxAW&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;zaP7&quot;&gt;&lt;/p&gt;
  &lt;figure id=&quot;nL7y&quot; class=&quot;m_retina&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/18/17/1817d37d-1e20-46a1-9790-72088a9ec265.png&quot; width=&quot;799.5&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;ewNP&quot;&gt;&lt;strong&gt;2. Інформаційна панель валідатора NEAR - Ali_Warrior&lt;/strong&gt;&lt;br /&gt;&lt;u&gt;Вузол є валідатором&lt;br /&gt;Пропущені блоки&lt;br /&gt;Відсоток вироблених блоків&lt;br /&gt;Пропущені шматки&lt;br /&gt;Відсоток вироблених шматків&lt;br /&gt;Підключені однолітки&lt;br /&gt;Загальна частка валідатора&lt;/u&gt;&lt;/p&gt;
  &lt;figure id=&quot;4QVX&quot; class=&quot;m_retina&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/2a/f2/2af2f878-7b0d-4f43-bdf0-1523e9eda908.png&quot; width=&quot;796.5&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;wzam&quot;&gt;&lt;strong&gt;3. Моніторінг серверу&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;BNpA&quot;&gt; &lt;/p&gt;
  &lt;figure id=&quot;iYCu&quot; class=&quot;m_retina&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/f5/28/f52866b8-2019-4e03-bbcb-d58602024e2d.png&quot; width=&quot;767.5&quot; /&gt;
  &lt;/figure&gt;
  &lt;h3 id=&quot;w7MJ&quot;&gt;&lt;u&gt;Виконано!&lt;/u&gt;&lt;/h3&gt;
  &lt;p id=&quot;kS4f&quot;&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;daog&quot;&gt;&lt;strong&gt;&lt;code&gt;Завдання 20. : Моніторинг за допомогою телеграм боту приєднаного до сервера з нодою!&lt;/code&gt;&lt;/strong&gt;&lt;/h3&gt;
  &lt;/section&gt;
  &lt;figure id=&quot;NT38&quot; class=&quot;m_original&quot;&gt;
    &lt;img src=&quot;https://img3.teletype.in/files/a0/53/a053cf37-b228-437f-89e2-0716dff25f87.png&quot; width=&quot;486&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;MoHq&quot;&gt;&lt;u&gt;&lt;strong&gt;Виконано!&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;h463&quot; data-align=&quot;center&quot;&gt;Оновлення&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;99yU&quot; data-align=&quot;right&quot;&gt;Зміст&lt;/p&gt;
  &lt;section&gt;
    &lt;h3 id=&quot;Xalw&quot; data-align=&quot;center&quot;&gt;Важливе оновлення (12.08.2022)&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;iA4R&quot;&gt;Вночі 12.08.2022 (який збіг - в мене днюха теж 12-го але не серпня) вийшло &lt;strong&gt;важливе оновлення&lt;/strong&gt;. Докладніше про нього можна прочитати у документації. І так, щоб оновитися, нам потрібно вручну додати до файлу config.json додатковий рядок, що складається з ключа вашої ноди з файлу node_key.json та ip вашого сервера.&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(170, 33%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;UcgW&quot;&gt;#для початку дізнаємося ip сервера командою:&lt;br /&gt;&lt;br /&gt;curl ifconfig.me&lt;br /&gt;&lt;/p&gt;
    &lt;tt-tags id=&quot;5rUv&quot;&gt;&lt;/tt-tags&gt;
  &lt;/section&gt;
  &lt;p id=&quot;bW80&quot;&gt;Збережіть цей ip у текстовому документі. Або запам&amp;#x27;ятайте&lt;/p&gt;
  &lt;p id=&quot;S41X&quot;&gt;Далі вам потрібно дізнатися публічний ключ ноди (не плутати з публічним ключем валідатора!). Команда:&lt;/p&gt;
  &lt;pre data-lang=&quot;shell&quot; id=&quot;e890&quot;&gt;cat ~/.near/node_key.json | grep public_key&lt;/pre&gt;
  &lt;p id=&quot;PTne&quot;&gt;Збережіть його також у текстовому документі, разом із (ed25519).&lt;/p&gt;
  &lt;p id=&quot;gF5d&quot;&gt;Потім вам потрібно вставити у файл config.json рядок:&lt;/p&gt;
  &lt;pre data-lang=&quot;shell&quot; id=&quot;B07R&quot;&gt;&amp;quot;public_addrs&amp;quot;: [&amp;quot;public key@public IP:24567&amp;quot;],&lt;/pre&gt;
  &lt;p id=&quot;KWax&quot;&gt;public key - це ключ із файлу node_key.json.&lt;/p&gt;
  &lt;p id=&quot;MNk4&quot;&gt;public IP - ip вищого сервера.&lt;/p&gt;
  &lt;p id=&quot;ffXU&quot;&gt;Відкрийте файл: &lt;strong&gt;.near/config.json&lt;/strong&gt;:&lt;/p&gt;
  &lt;pre data-lang=&quot;shell&quot; id=&quot;X0Pt&quot;&gt;nano ~/.near/config.json&lt;/pre&gt;
  &lt;p id=&quot;TCMz&quot;&gt;Знайдіть наступні рядки і вставте новий рядок з вашими даними (останній рядок тут):&lt;/p&gt;
  &lt;pre data-lang=&quot;shell&quot; id=&quot;qY2C&quot;&gt; &amp;quot;network&amp;quot;: { 
&amp;quot;addr&amp;quot;: &amp;quot;0.0.0.0:24567&amp;quot;, 
&amp;quot;boot_nodes&amp;quot;: …, 
&amp;quot;public_addrs&amp;quot;: [&amp;quot;public key@public IP:24567&amp;quot;],&lt;/pre&gt;
  &lt;p id=&quot;6nDt&quot;&gt;Важливо, щоб рядок знаходився на одному рівні зі своїми сусідами, тобто важливо дотримуватися табуляції (4 пробіли або 1 TAB).&lt;/p&gt;
  &lt;p id=&quot;vtzh&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;zCQM&quot;&gt;Після цього &lt;strong&gt;збережіть файл та виходьте із нано&lt;/strong&gt;.&lt;/p&gt;
  &lt;p id=&quot;OGVG&quot;&gt;Наступний крок, &lt;strong&gt;перезапуск ноди&lt;/strong&gt;:&lt;/p&gt;
  &lt;pre data-lang=&quot;shell&quot; id=&quot;EOKW&quot;&gt;sudo systemctl enable neard
sudo systemctl daemon-reload
sudo systemctl restart neard&lt;/pre&gt;
  &lt;p id=&quot;tO91&quot;&gt;Після перезапуску ноди &lt;strong&gt;потрібно відчинити порт(24567)&lt;/strong&gt;, якщо ви цього не робили.&lt;/p&gt;
  &lt;p id=&quot;9stF&quot;&gt;&lt;strong&gt;Насамперед перевіримо, чи відкритий він зараз:&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;UWjZ&quot;&gt;sudo iptables -L | grep 24567&lt;/p&gt;
  &lt;p id=&quot;BA2J&quot;&gt;&lt;strong&gt;Якщо нічого не видало&lt;/strong&gt;, &lt;u&gt;він закритий&lt;/u&gt;.&lt;br /&gt;&lt;strong&gt;Відкриємо&lt;/strong&gt; наступною командою:&lt;/p&gt;
  &lt;pre data-lang=&quot;shell&quot; id=&quot;34D0&quot;&gt;sudo iptables -A INPUT -p tcp --dport 24567 -j ACCEPT&lt;/pre&gt;
  &lt;p id=&quot;rQAR&quot;&gt;&lt;strong&gt;Збережемо&lt;/strong&gt; у конфігурації сервера:&lt;/p&gt;
  &lt;pre data-lang=&quot;shell&quot; id=&quot;0v0j&quot;&gt;sudo dpkg-reconfigure iptables-persistent&lt;/pre&gt;
  &lt;p id=&quot;ivJ4&quot;&gt;&lt;strong&gt;Перевіримо&lt;/strong&gt;, чи порт відкритий:&lt;/p&gt;
  &lt;pre id=&quot;OaKR&quot;&gt;sudo iptables -L | grep 24567&lt;/pre&gt;
  &lt;p id=&quot;E172&quot;&gt;&lt;strong&gt;Якщо так&lt;/strong&gt;, то видасть наступний рядок:&lt;/p&gt;
  &lt;figure id=&quot;HP4v&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img2.teletype.in/files/58/d2/58d2aee7-6512-4f6b-b5dd-157564f3bb10.png&quot; width=&quot;788&quot; /&gt;
  &lt;/figure&gt;
  &lt;hr /&gt;
  &lt;section style=&quot;background-color:hsl(hsl(34,  84%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;dGHw&quot; data-align=&quot;center&quot;&gt;Корисні посилання та команди&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;Zvp8&quot; data-align=&quot;right&quot;&gt;Зміст&lt;/p&gt;
  &lt;p id=&quot;DbnS&quot;&gt;&lt;strong&gt;Гаманець&lt;/strong&gt;: &lt;a href=&quot;https://wallet.shardnet.near.org/&quot; target=&quot;_blank&quot;&gt;https://wallet.shardnet.near.org/&lt;/a&gt;&lt;/p&gt;
  &lt;p id=&quot;At2g&quot;&gt;&lt;strong&gt;Explorer&lt;/strong&gt;: &lt;a href=&quot;https://explorer.shardnet.near.org/&quot; target=&quot;_blank&quot;&gt;https://explorer.shardnet.near.org/&lt;/a&gt;&lt;/p&gt;
  &lt;p id=&quot;l4M2&quot;&gt;&lt;strong&gt;Перевірка логів&lt;/strong&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;pre data-lang=&quot;bash&quot; id=&quot;FQqA&quot;&gt;journalctl -n 100 -f -u neard&lt;/pre&gt;
  &lt;/section&gt;
  &lt;p id=&quot;aAUI&quot;&gt;&lt;strong&gt;Рестарт ноди&lt;/strong&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;pre data-lang=&quot;bash&quot; id=&quot;nAdB&quot;&gt;sudo systemctl restart neard&lt;/pre&gt;
  &lt;/section&gt;
  &lt;p id=&quot;XnMV&quot;&gt;&lt;strong&gt;Запустити ноду&lt;/strong&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;1iXE&quot;&gt;&lt;code&gt;sudo systemctl start neard&lt;/code&gt;&lt;/p&gt;
  &lt;/section&gt;
  &lt;p id=&quot;RaIJ&quot;&gt;&lt;strong&gt;Зупинити ноду&lt;/strong&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;p id=&quot;viZh&quot;&gt;&lt;code&gt;sudo systemctl stop neard&lt;/code&gt;&lt;/p&gt;
  &lt;/section&gt;
  &lt;p id=&quot;SN1B&quot;&gt;&lt;strong&gt;Переверка балансу&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;m92m&quot;&gt;near view $POOL get_account_total_balance &amp;#x27;{&amp;quot;account_id&amp;quot;: &amp;quot;&amp;lt;MONIKER&amp;gt;.shardnet.near&amp;quot;}&amp;#x27;&lt;/pre&gt;
  &lt;p id=&quot;6r5G&quot;&gt;&lt;strong&gt;&lt;u&gt;Анстейк Токенов (змінити &amp;lt;amount yoctoNEAR&amp;gt; на кількість токенів)&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;fVIG&quot;&gt;#певну кількість
near call $POOL unstake &amp;#x27;{&amp;quot;amount&amp;quot;: &amp;quot;&amp;lt;amount yoctoNEAR&amp;gt;&amp;quot;}&amp;#x27; \
--accountId $ACCOUNT_ID --gas=300000000000000

#все разом
near call $POOL unstake_all --accountId $ACCOUNT_ID \
--gas=300000000000000&lt;/pre&gt;
  &lt;p id=&quot;vjwL&quot;&gt;&lt;strong&gt;Вивід Токенов&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;r8gL&quot;&gt;#певну кількість (змінити &amp;lt;amount yoctoNEAR&amp;gt; на кількість)
near call $POOL withdraw &amp;#x27;{&amp;quot;amount&amp;quot;: &amp;quot;&amp;lt;amount yoctoNEAR&amp;gt;&amp;quot;}&amp;#x27; \
--accountId $ACCOUNT_ID --gas=300000000000000

#все разом
near call $POOL withdraw_all --accountId $ACCOUNT_ID \
--gas=300000000000000&lt;/pre&gt;
  &lt;p id=&quot;gz5s&quot;&gt;&lt;strong&gt;Список активних валідаторів поточної доби&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;WKIK&quot;&gt;NEAR_ENV=shardnet near validators current&lt;/pre&gt;
  &lt;p id=&quot;LZw5&quot;&gt;&lt;strong&gt;Список валідаторів на 03.09.2022!&lt;/strong&gt;&lt;/p&gt;
  &lt;pre data-lang=&quot;bash&quot; id=&quot;Gyll&quot;&gt;NEAR_ENV=shardnet near proposals&lt;/pre&gt;
  &lt;p id=&quot;H8g5&quot;&gt;Для того щоб &lt;u&gt;себе знайти&lt;/u&gt; скористайтесь комбінацією клавіш &lt;strong&gt;ctrl+shift+f&lt;/strong&gt; та введіть назву вашого пулу у строку пошуку.&lt;/p&gt;
  &lt;figure id=&quot;yvG0&quot; class=&quot;m_column&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/42/5a/425ad210-c98a-40c0-88bf-2a6dcba7733c.png&quot; width=&quot;799&quot; /&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;Ge33&quot;&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(199, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;INhM&quot; data-align=&quot;center&quot;&gt;Слава Україні&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;TTK3&quot;&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;h3 id=&quot;f0bc&quot; data-align=&quot;center&quot;&gt;Героям слава!&lt;/h3&gt;
  &lt;/section&gt;
  &lt;p id=&quot;Pmbz&quot;&gt;&lt;/p&gt;
  &lt;h3 id=&quot;S8z5&quot;&gt;Написали, що стався hardfork, що мені робити?&lt;/h3&gt;
  &lt;p id=&quot;8b08&quot;&gt;Інколи трапляється hardfork, вам треба зтерти ваш genesis.json файл, папку data та перезапустити сервіс&lt;/p&gt;
  &lt;pre id=&quot;Q3UG&quot;&gt;sudo systemctl stop neard
cd ~/.near
rm -rf genesis.json
wget https://s3-us-west-1.amazonaws.com/build.nearprotocol.com/nearcore-deploy/shardnet/genesis.json
rm -rf data
sudo systemctl restart neard&lt;/pre&gt;
  &lt;h3 id=&quot;1178&quot;&gt;Якщо оновився конфіг&lt;/h3&gt;
  &lt;p id=&quot;c2af&quot;&gt;Інколи в discord будуть приходити повідомлення про обновлення конфігу, треба буде зробити наступне:&lt;/p&gt;
  &lt;pre id=&quot;KIPq&quot;&gt;sudo systemctl stop neard
cd ~/.near
rm -rf config.json
wget -O ~/.near/config.json https://s3-us-west-1.amazonaws.com/build.nearprotocol.com/nearcore-deploy/shardnet/config.json
sudo systemctl restart neard&lt;/pre&gt;
  &lt;h3 id=&quot;5ee5&quot;&gt;Якщо оновився комміт&lt;/h3&gt;
  &lt;p id=&quot;0318&quot;&gt;У разі оновлення комміту треба буде оновитися, зробити новий білд та перезапустити валідатора, новий комміт можна знайти &lt;a href=&quot;https://github.com/near/stakewars-iii/blob/main/commit.md&quot; target=&quot;_blank&quot;&gt;тут&lt;/a&gt;&lt;/p&gt;
  &lt;pre id=&quot;AHIo&quot;&gt;sudo systemctl stop neard
cd ~/nearcore
git fetchgit checkout 1897d5144a7068e4c0d5764d8c9180563db2fe43
cargo build -p neard --release --features shardnet
sudo systemctl restart neard&lt;/pre&gt;
  &lt;p id=&quot;uQJc&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;li1g&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;P.S.  #мало коду не буває!&lt;/strong&gt;&lt;/p&gt;
  &lt;section style=&quot;background-color:hsl(hsl(170, 33%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;blockquote id=&quot;UIzH&quot; data-align=&quot;center&quot;&gt;&lt;strong&gt;Ali_Warrior / made in Ukraine&lt;/strong&gt;&lt;/blockquote&gt;
  &lt;/section&gt;
  &lt;section style=&quot;background-color:hsl(hsl(55,  86%, var(--autocolor-background-lightness, 95%)), 85%, 85%);&quot;&gt;
    &lt;pre data-lang=&quot;bash&quot; id=&quot;Cgqs&quot;&gt;wget -qO- eth0.me&lt;/pre&gt;
  &lt;/section&gt;

</content></entry></feed>