May 20

Aztec - Установка Sequencer Node

Aztec Network — ZK L2 с фокусом на конфиденциальность, обеспечивающий масштабируемые и приватные транзакции в сети Ethereum.

Данная статья является дополнительным материалом к видео на YouTube. Рекомендуется сначала ознакомиться с ним - ссылка

Полезные ссылки

• Официальный твиттер Aztec - https://x.com/aztecnetwork
• Официальный сайт Aztec - https://aztec.network/ecosystem
• Официальный Discord Aztec - https://discord.gg/aztec
• Дорожная карта проекта - https://aztec.network/aztec-roadmap
• Инвестиции (119 млн $) - https://cryptorank.io/ico/aztec#funding-rounds
• Продукты экосистемы - https://aztec.network/ecosystem
• Дополнительная активность - https://play.aztec.network/alpha-testnet/

Покупка тестового ETH Sepolia

• Мост от LayerZero - https://testnetbridge.com/sepolia

Создание RPC

Понадобятся два RPC: Sepolia RPC и Sepolia Beacon RPC.

Для их создания можно воспользоваться следующими сервисами: Ankr, Alchemy, Chainstack, DRPC.

Выбор сервера

Официальные требования к ноде: 8 CPU, 16 GB RAM, 1 TB SSD

• Сервера Play2go - ссылка
Первые 24ч бонус в 10% от суммы пополнения. Есть LC сервера, что позволит сэкономить на аренде.

• Сервера Xorek - ссылка
Есть возможность расширения дискового пространства, что может пригодиться в будущем.

• Сервера VdSina - ссылка
10% скидка на все сервера. Посуточная аренда серверов и настраиваемым конструктором

Установка ноды

Скачиваем MobaXterm - ссылка

Создаём SSH-сессию, используя ваш IP-адрес сервера.

Порядок действий:

1 шаг — Обновляем систему

sudo apt update -y && sudo apt upgrade -y

2 шаг — Устанавливаем Docker

sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

(опционально — проверяем успешность установки)

sudo docker run hello-world

Если докер не работает, то используем дополнительные команды

sudo systemctl enable docker
sudo systemctl start docker

3 шаг — Устанавливаем дополнительные пакеты

sudo apt install -y curl screen net-tools psmisc jq ufw nano git wget unzip build-essential libssl-dev pkg-config

4 шаг — Установка ноды Aztec

bash -i <(curl -s https://install.aztec.network)

5 шаг — Добавляем Aztec CLI в системный путь

export PATH="$HOME/.aztec/bin:$PATH"
echo 'export PATH="$HOME/.aztec/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

6 шаг — Проверяем наличие обновлений

aztec-up alpha-testnet

7 шаг — Задаём параметры нашей ноды

IP=$(curl -s https://api.ipify.org)
L1_RPC_URL="sepolia rpc"
L1_CONSENSUS_URL="sepolia beacon rpc"
VALIDATOR_PRIVATE_KEY="приватный ключ"
COINBASE_ADDRESS="ваш EVM адрес 0x..." 

8 шаг — Создаём скрипт для запуска

cat > $HOME/start_aztec_node.sh << EOL
#!/bin/bash
export PATH=\$PATH:\$HOME/.aztec/bin
aztec start --node --archiver --sequencer \\
  --network alpha-testnet \\
  --l1-rpc-urls $L1_RPC_URL \\
  --l1-consensus-host-urls $L1_CONSENSUS_URL \\
  --sequencer.validatorPrivateKey $VALIDATOR_PRIVATE_KEY \\
  --sequencer.coinbase $COINBASE_ADDRESS \\
  --p2p.p2pIp $IP \\
  --port 8080
EOL

chmod +x $HOME/start_aztec_node.sh

9 шаг — Создаём screen

screen -S aztec

10 шаг — Запускаем ноду

./start_aztec_node.sh

Команды для получения ролей:

Запрос номера блока

curl -s -X POST -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","method":"node_getL2Tips","params":[],"id":67}' \
http://localhost:8080 | jq -r ".result.proven.number"

Запрос подтверждения валидации

curl -s -X POST -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","method":"node_getArchiveSiblingPath","params":["НОМЕР БЛОКА","НОМЕР БЛОКА"],"id":67}' \
http://localhost:8080 | jq -r ".result"

Регистрация в качестве валидатора

aztec add-l1-validator \
  --l1-rpc-urls sepolia rpc \
  --private-key приватный ключ \
  --attester ваш EVM адрес 0x... \
  --proposer-eoa ваш EVM адрес 0x... \
  --staking-asset-handler 0xF739D03e98e23A7B65940848aBA8921fF3bAc4b2 \
  --l1-chain-id 11155111

Дополнительные команды

Закрыть screen - CTRL+A+D

Список активных сессий

screen -ls

Вернуться в сессию

screen -r aztec

Обновление ноды

Вернуться в screen

screen -r aztec

Остановить ноду - Ctrl+C

Выйти из сессии

exit

Удалить старые данные

rm -rf ~/.aztec/alpha-testnet/data/

Обновить ПО

aztec-up alpha-testnet

Создать screen и запустить снова

screen -S aztec
./start_aztec_node.sh

Заключение

Надеюсь, что нам удалось успешно уставновить ноду и получить ранние роли! Буду признателен за вашу поддержку и подписку на мой телеграм-канал @ArtOfResearchChannel.

➡️Подписаться⬅️