July 1, 2022

Установка валидаторской ноды APTOS

Добрый день сегодня будем устанавливать валидаторскую ноду APTOS для регистрации в AIT3. Подробно о тестнете можно прочитать в официальной статье. Оригинальная инструкция находится здесь.

Рекомендуемые требования к серверу следующие

  • CPU: 8 cores (Intel Xeon Skylake or newer).
  • Memory: 32GiB RAM
  • 300GB of disk space

Так же необходима поддержка avx2 (Проверить можно так lscpu | grep avx2)

Если у кого то возникают ошибки при регистрации то для начала поставьте АПИ порт 80, вместо 8080, если все равно возникают ошибки (как правило ошибка транзакций или ключа), то остановите ноду с удалением базы данных (docker compose down -v) Далее выполните заново пункты: Создаем файл layout.yaml и Генерируем генезис . После этого запускаем ноду (docker compose up -d)

Обновляем сервер

sudo apt update && sudo apt upgrade -y

Устанавливаем необходимые пакеты

sudo apt install make clang pkg-config libssl-dev build-essential git unzip gcc chrony curl jq ncdu bsdmainutils htop net-tools lsof fail2ban wget -y

Задаем переменные и прописываем их в баш профиль

APTOS_MONIKER="Имя_вашей_ноды" APTOS_IP="ip адрес_вашей_ноды"

echo 'export APTOS_IP='${APTOS_IP=} >> $HOME/.bash_profile echo 'export APTOS_MONIKER='${APTOS_MONIKER=} >> $HOME/.bash_profile source $HOME/.bash_profile

Устанавливаем docker

curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh

Устанавливаем docker-compose

curl -SL https://github.com/docker/compose/releases/download/v2.5.0/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

Скачиваем и перемещаем в рабочую директорию исполняемый файл

wget -qO aptos-cli.zip https://github.com/aptos-labs/aptos-core/releases/download/aptos-cli-v0.3.1/aptos-cli-0.3.1-Ubuntu-x86_64.zip unzip -o aptos-cli.zip chmod +x aptos mv aptos /usr/local/bin

Создаем папку проекта и скачиваем в нее конфиги

mkdir -p $HOME/.aptos cd $HOME/.aptos wget -O $HOME/.aptos/docker-compose.yaml https://raw.githubusercontent.com/aptos-labs/aptos-core/main/docker/compose/aptos-node/docker-compose.yaml wget -O $HOME/.aptos/validator.yaml https://raw.githubusercontent.com/aptos-labs/aptos-core/main/docker/compose/aptos-node/validator.yaml

Генерируем ключи в рабочей директории

aptos genesis generate-keys --output-dir $HOME/.aptos/keys

Задаем конфигурацию валидатора

aptos genesis set-validator-configuration \ --local-repository-dir $HOME/.aptos \ --username $APTOS_MONIKER \ --owner-public-identity-file $HOME/.aptos/keys/public-keys.yaml \ --validator-host $APTOS_IP:6180 \ --stake-amount 100000000000000

Создаем файл layout.yaml

echo "--- root_key: "D04470F43AB6AEAA4EB616B72128881EEF77346F2075FFE68E14BA7DEBD8095E" users: [\"$APTOS_MONIKER\"] chain_id: 43 allow_new_validators: false epoch_duration_secs: 7200 is_test: true min_stake: 100000000000000 min_voting_threshold: 100000000000000 max_stake: 100000000000000000 recurring_lockup_duration_secs: 86400 required_proposer_stake: 100000000000000 rewards_apy_percentage: 10 voting_duration_secs: 43200 voting_power_increase_limit: 20" >layout.yaml

Скачиваем и устанавливаем фраемворк

wget https://github.com/aptos-labs/aptos-core/releases/download/aptos-framework-v0.3.0/framework.mrb -P $HOME/.aptos

Генерируем генезис

aptos genesis generate-genesis --local-repository-dir $HOME/.aptos --output-dir $HOME/.aptos

Запускаем докер

docker compose up -d

Поздравляем нода запущена

Посмотреть логи докера

docker logs -f aptos-validator-1 --tail 50

Посмотреть статус синхронизации

curl 127.0.0.1:9101/metrics 2> /dev/null | grep aptos_state_sync_version | grep type

Посмотреть ключи необходимые для регистрации

cat $HOME/.aptos/$APTOS_MONIKER/operator.yaml cat $HOME/.aptos/$APTOS_MONIKER/owner.yaml

Ну и сама регистрация на 3й тестнет тут.

Большое спасибо, за внимание и уделенное время

Наш телеграмм канал по нодам — https://t.me/mmsnodes
Наш телеграмм чат по нодам - https://t.me/mmsnodeschat
Наш телеграмм канал по экосистеме Cosmos - https://t.me/cosmochannel_mms

С уважением, MMS_Team