WEB3DEV

Cover image for Como implantar um nó Aptos
Isabela Curado Nehme
Isabela Curado Nehme

Posted on

Como implantar um nó Aptos

24 de fevereiro de 2023

Em junho de 2019, a Meta, o empreendimento de bilhões de dólares liderado por Mark Zuckerberg, anunciou a “Libra”. O que deveria ser uma stablecoin revolucionária, Libra, teve problemas regulatórios e uma versão simplificada da Libra, “Diem”, passou a existir.

O pessoal da Meta estava confiante de que a Diem iria deslanchar, mas, em Janeiro de 2022, o sonho de Zuckerberg de lançar uma criptomoeda foi interrompido, já que os ativos da Diem foram supostamente vendidos por 200 milhões de dólares.

A consequência desses poucos anos dramáticos foi o treinamento árduo de um punhado de desenvolvedores. Esses desenvolvedores se juntariam para criar a “Aptos” e, em outubro de 2022, lançar a “Diem” - a rede principal da Aptos.

Desde sua criação, a Aptos vem chamando atenção com seu crescimento rápido, levantando mais de 350 milhões de dólares em investimento de capital de risco e superando a Ethereum e o Bitcoin para o crescimento a uma taxa de 500%. Dito isto, a Aptos não é apenas mais uma criptomoeda; é uma plataforma blockchain de Prova de Participação (PoS) de camada 1 onde os usuários podem criar dApps, contratos inteligentes, construir blockchains usando o Aptos SDK e muito mais.

Agora que você entende a história da Aptos, vamos aprender mais sobre essa plataforma inspiradora, seguido de como implantar um nó Aptos.

O que é a Aptos?

Você já deve ter percebido que a Aptos é uma blockchain de camada 1 (L1) e é negociada sob a extensão de domínio “APT”. Ela foi criada com o princípio de adoção em massa, escalabilidade, confiança, confiabilidade, economia, segurança e capacidade de atualização contínua.

Com uma transação total de mais de 84 milhões, 104 validadores ativos e mais de 840 milhões de tokens APT ativamente colocados em stake (a partir de 8 de fevereiro de 2023), é desnecessário dizer que a Aptos tem uma base sólida para crescer exponencialmente, mesmo em um mercado volátil.

Em uma situação como esta, desenvolvedores, startups e empreendimentos web3 estariam axiomaticamente interessados ​​em implantar nós Aptos e é aqui que este guia vem a calhar. Fique atento até o final para aprender sobre as robustas práticas de implantação de nó da blockchain Zeeve.

Sem mais delongas, vamos aprender como implantar um nó Aptos, começando pelos requisitos de hardware.

Requisitos de Hardware

Com base na documentação oficial divulgada pela Aptos, esses são os recursos de hardware recomendados para executar um nó completo (full node) público de nível de produção. RAM de 32 GB e um SSD de 2T são essenciais para realizar operações de implantação sem problemas.

  • CPU: 16 threads, 8 cores, 2.8 Ghz ou mais (Intel Xeon Skylake ou mais recente, ou sistema com especificações similares)
  • RAM: 32GB
  • Armazenamento: SSD de 2T com pelo menos 40K IOPS e largura de banda de 200MiB/s.
  • Largura de banda da Internet: 1 Gbps

Para executar o nó completo para desenvolvimento ou teste:

  • CPU: 2 cores
  • RAM: 4GB
  • AWS
    • c6id.8xlarge (se você estiver usando um SSD local)
    • c6i.8xlarge + volume io1/io2 EBS com 40K IOPS
  • GCP
    • n2-standard-16 (se você estiver usando um SSD local)
    • n2-standard-32 + pd-ssd com 40K IOPS

Portas de execução

De acordo com a documentação oficial, essas são as portas essenciais necessárias para o processo.

Configurações de porta para o validador:

  • Abra a porta TCP 6180 para permitir que os validadores conversem entre si.
  • Abra a porta TCP 6181 para conectar o nó completo do validador.
  • Abra a porta TCP 9101 para compartilhar as métricas para validar as estatísticas de integridade.
  • Certifique-se de manter a porta TCP 6186 aberta para o backup de armazenamento local.

Configurações de porta para nó completo público:

  • Abra a porta TCP 6182 para permitir que os nós completos se comuniquem.
  • Abra a porta TCP 9101 para enviar as métricas do nó completo para validar as estatísticas de integridade (necessárias apenas no estágio de registro).
  • Abra a porta TCP 80/8080 para acessar a API REST.
  • Mantenha a porta TCP 6186 aberta para o backup do armazenamento local.

Implantação do nó

Para começar, você provavelmente está no Ubuntu, então comece alterando o diretório para /home/ubuntu.

cd /home/ubuntu
Enter fullscreen mode Exit fullscreen mode

Passo 2: clonar o repositório Aptos com o seguinte código.

git clone https://github.com/aptos-labs/aptos-core.git
Enter fullscreen mode Exit fullscreen mode

Passo 3: você precisa fazer o cd no diretório aptos-core com o comando abaixo.

cd aptos-core
Enter fullscreen mode Exit fullscreen mode

Passo 4: para preparar seu ambiente de desenvolvedor, execute o script abaixo.

./scripts/dev_setup.sh
Enter fullscreen mode Exit fullscreen mode

Passo 5: execute o código abaixo e atualize seu ambiente de shell.

source ~/.cargo/env
Enter fullscreen mode Exit fullscreen mode

Passo 6: verifique a ramificação da rede principal usando o comando abaixo. Você também pode usar a devnet (rede de desenvolvimento) ou a testnet (rede de testes).

git checkout --track origin/mainnet
Enter fullscreen mode Exit fullscreen mode

Passo 7: certifique-se de que o diretório de trabalho é o aptos-core e execute o comando abaixo.

cp config/src/config/test_data/public_full_node.yaml fullnode.yaml
Enter fullscreen mode Exit fullscreen mode

Passo 8: baixe o genesis.blob e do waypoint.txt para a rede principal ou para a rede de testes.

  • Genesis e waypoint para a rede principal.
curl -O https://raw.githubusercontent.com/aptos-labs/aptos-networks/main/mainnet/genesis.blob
Enter fullscreen mode Exit fullscreen mode
curl -O https://raw.githubusercontent.com/aptos-labs/aptos-networks/main/mainnet/waypoint.txt
Enter fullscreen mode Exit fullscreen mode
  • Genesis e waypoint para a rede de testes.
curl -O https://raw.githubusercontent.com/aptos-labs/aptos-networks/main/testnet/genesis.blob
Enter fullscreen mode Exit fullscreen mode
curl -O https://raw.githubusercontent.com/aptos-labs/aptos-networks/main/testnet/waypoint.txt
Enter fullscreen mode Exit fullscreen mode
  • Genesis e waypoint para a rede de desenvolvimento.
curl -O https://raw.githubusercontent.com/aptos-labs/aptos-networks/main/devnet/genesis.blob
Enter fullscreen mode Exit fullscreen mode
curl -O https://raw.githubusercontent.com/aptos-labs/aptos-networks/main/devnet/waypoint.txt
Enter fullscreen mode Exit fullscreen mode

Passo 9: nos próximos passos, edite o arquivo fullnode.yaml em seu diretório de trabalho atual, conforme mostrado abaixo.

Passo 9.1: começando com a especificação do caminho correto para o waypoint.txt, que acabou de ser baixado através da edição do arquivo base.waypoint.from_file no fullnode.yaml. Ele apontará para o waypoint.txt por padrão no diretório de trabalho atual.

base:
  waypoint:
    from_file: "./waypoint.txt"
Enter fullscreen mode Exit fullscreen mode

Mude para:

from_file: "/home/ubuntu/aptos-core/waypoint.txt"
Enter fullscreen mode Exit fullscreen mode

Passo 9.2: para a chave genesis_file_location, forneça o caminho completo para o arquivo genesis.blob .

Por exemplo:

genesis_file_location: "./genesis.blob"
Enter fullscreen mode Exit fullscreen mode

Mude para:

genesis_file_location: "/home/ubuntu/aptos-core/genesis.blob"
Enter fullscreen mode Exit fullscreen mode

Passo 9.3: também podemos alterar o diretório de dados.

data_dir: "/opt/aptos/data"
Enter fullscreen mode Exit fullscreen mode

Faça as alterações como e quando necessário.

Crie o Binário

Para criar o binário de depuração, omita o sinalizador –release e execute o comando abaixo:

cargo build -p aptos-node --release
Enter fullscreen mode Exit fullscreen mode

Execute-o dessa maneira ou crie um serviço conforme indicado abaixo:

  1. Execute como comando CLI.
/home/ubuntu/aptos-core/target/release/aptos-node -f 
/home/ubuntu/aptos-core/fullnode.yaml
Enter fullscreen mode Exit fullscreen mode
  1. Crie o serviço systemd da Aptos.
sudo vim /etc/systemd/system/aptos.service
Enter fullscreen mode Exit fullscreen mode

2.1. Escreva seu serviço systemd.

[Unit]
  Description=aptos
  StartLimitIntervalSec=500
  StartLimitBurst=5

[Service]
  Restart=on-failure
  RestartSec=5s
  ExecStart=/home/ubuntu/aptos-core/target/release/aptos-node -f /home/ubuntu/aptos-core/fullnode.yaml
  Type=simple
  User=root

[Install]
  WantedBy=multi-user.target
Enter fullscreen mode Exit fullscreen mode

2.2. Habilite e execute-o com estas etapas:

  • Habilitar:
sudo systemctl enable aptos.service
Enter fullscreen mode Exit fullscreen mode
  • Começar:
sudo systemctl start aptos.service
Enter fullscreen mode Exit fullscreen mode
  • Você pode verificar o status executando:
systemctl status aptos.service
Enter fullscreen mode Exit fullscreen mode
  • Que deve se parecer com algo assim:

  • Na próxima etapa, você pode verificar os logs usando:
journalctl -u aptos.service
Enter fullscreen mode Exit fullscreen mode

Verificando o status do nó Aptos

Para verificar o status, examine a sincronização inicial com o comando abaixo:

curl 127.0.0.1:9101/metrics 2> /dev/null | grep "aptos_state_sync_version{.*\"synced\"}" | awk '{print $2}'
Enter fullscreen mode Exit fullscreen mode

O comando produzirá a versão sincronizada atual do seu nó.

Por exemplo: 3242412

Você pode usar o site do Aptos explorer para comparação.

Examine as conexões de rede de saída

Tecnicamente, o número de conexões de rede de saída deve ser maior que 0.

Execute o seguinte comando para verificar:

curl 127.0.0.1:9101/metrics 2> /dev/null | grep "aptos_connections{direction=\"outbound\""
aptos_connections{direction="outbound",network_id="Public",peer_id="ddeb6033",role_type="full_node"} 4
Enter fullscreen mode Exit fullscreen mode

Pronto, depois de verificar com sucesso a rede de saída, você implantou com êxito um nó completo da Aptos com código.

Conclusão

Você pode implantar qualquer tipo de nó Aptos por conta própria ou manter-se informado no Zeeve, pois estamos trabalhando duro para implantar uma interface de implantação de nó Aptos “sem código” para você. Ao implantar um nó por conta própria, você inadvertidamente se depara com problemas como erros no código, sincronização com a rede, verificação da implantação, manutenção do tempo de atividade, etc.

Mas, quando você recebe a ajuda de uma plataforma robusta de implantação de nós como o Zeeve, nossos engenheiros de desenvolvimento e operações (DevOps) preveem todo o processo de implantação, acompanham com suporte pós-implantação, garantem que não haja tempo de inatividade na rede e, sem mencionar - você terá a ajuda de uma interface de usuário perfeita para manter seus dApps e contratos inteligentes em pleno funcionamento.

Dito isso, Zeeve é ​​uma infraestrutura de blockchain como plataforma de serviço que não apenas fornece uma plataforma robusta para implantar nós Aptos, mas também para a Ethereum, a Polygon, a Hyperledger Fabric, a Avalanche e todos os outros protocolos importantes.

Somos a única plataforma de blockchain a oferecer as opções “Traga sua própria nuvem” para todos os principais provedores de nuvem.

Então, o que você está esperando? Agende hoje mesmo uma sessão gratuita com nosso especialista.

Esse artigo foi escrito por Mohd Zaid e traduzido por Isabela Curado Nehme. Seu original pode ser lido aqui.

Top comments (0)