Usando Código Fuente
Esta es una guía paso a paso para desplegar un validator de Aptos y validator fullnode (VFN) usando código fuente. Usando esta guía, el validator y VFN serán desplegados en máquinas separadas.
Pasos de Despliegue
Sección titulada «Pasos de Despliegue»-
Sigue los pasos en Construir Aptos Desde Código Fuente para descargar el repositorio
aptos-core
y código fuente. -
Haz checkout de la rama
mainnet
usandogit checkout --track origin/mainnet
. Nota: si quieres desplegar un validator y VFN en otra red, usa el nombre de rama apropiado (ej.,testnet
). -
Crea un directorio de trabajo para tus nodos Aptos, y elige un nombre de usuario para tus nodos, ej.,
Ventana de terminal export WORKSPACE=mainnetexport USERNAME=alicemkdir ~/$WORKSPACE -
Genera los pares de claves para tus nodos en tu directorio de trabajo. Puedes hacer esto ejecutando el siguiente comando con el CLI de Aptos:
Ventana de terminal aptos genesis generate-keys --output-dir ~/$WORKSPACE/keysEsto creará 4 archivos de clave bajo el directorio
~/$WORKSPACE/keys
:public-keys.yaml
: Este archivo contiene todas las claves públicas para tu validator y VFN, así como tu dirección de cuenta.private-keys.yaml
: Este archivo contiene todas las claves privadas para tu validator y VFN.validator-identity.yaml
: Este archivo contiene las claves públicas y privadas para tu validator, así como tu dirección de cuenta.validator-full-node-identity.yaml
: Este archivo contiene las claves públicas y privadas para tu VFN, así como tu dirección de cuenta.
-
Siguiente, necesitarás establecer tu configuración de validator. Esto incluye establecer los nombres de host del validator y VFN, que pueden ser direcciones IP o direcciones DNS.
Puedes establecer tu configuración de validator ejecutando el siguiente comando con el CLI de Aptos:
Ventana de terminal # Reemplaza <validator node IP / DNS address> y <Full Node IP / DNS address> abajo,# con la dirección IP o DNS apropiada para tus nodos.cd ~/$WORKSPACEaptos genesis set-validator-configuration \--local-repository-dir ~/$WORKSPACE \--username $USERNAME \--owner-public-identity-file ~/$WORKSPACE/keys/public-keys.yaml \--validator-host <validator node IP / DNS address>:<Port> \--full-node-host <Full Node IP / DNS address>:<Port> \--stake-amount 100000000000000# Por ejemplo, si estás usando direcciones IP:aptos genesis set-validator-configuration \--local-repository-dir ~/$WORKSPACE \--username $USERNAME \--owner-public-identity-file ~/$WORKSPACE/keys/public-keys.yaml \--validator-host 35.232.235.205:6180 \--full-node-host 34.135.169.144:6182 \--stake-amount 100000000000000# De lo contrario, si estás usando direcciones DNS:aptos genesis set-validator-configuration \--local-repository-dir ~/$WORKSPACE \--username $USERNAME \--owner-public-identity-file ~/$WORKSPACE/keys/public-keys.yaml \--validator-host bot.aptosdev.com:6180 \--full-node-host fn.bot.aptosdev.com:6182 \--stake-amount 100000000000000Configurar el validator creará dos archivos YAML en el directorio
~/$WORKSPACE/$USERNAME
:owner.yaml
yoperator.yaml
. Estos serán útiles para conectar tus nodos a la red de Aptos (después). -
Descarga los siguientes archivos siguiendo las instrucciones en las páginas Archivos del Nodo. Necesitarás seleccionar la red apropiada (ej.,
mainnet
,testnet
,devnet
) y descargar los siguientes archivos:validator.yaml
fullnode.yaml
genesis.blob
waypoint.txt
-
Siguiente, copia los archivos de plantilla
validator.yaml
yfullnode.yaml
(que acabas de descargar) en el directorio~/$WORKSPACE/config/
. Esto puede hacerse ejecutando los siguientes comandos:Ventana de terminal mkdir ~/$WORKSPACE/configcp validator.yaml ~/$WORKSPACE/config/validator.yamlcp fullnode.yaml ~/$WORKSPACE/config/fullnode.yamlEstos serán los archivos de configuración primarios para tu validator y VFN, respectivamente.
-
Ahora, modifica los archivos de plantilla
validator.yaml
yfullnode.yaml
para contener la información apropiada y directorios de trabajo para tu validator y VFN.Para el archivo
validator.yaml
, necesitarás modificar los siguientes campos:base.data_dir
: El directorio donde se almacenarán los datos de blockchain.base.waypoint
: El waypoint para la transacción génesis en la red a la que te estás conectando.consensus.initial_safety_rules_config
: El waypoint para la transacción génesis en la red a la que te estás conectando, así como la ubicación del archivovalidator-identity.yaml
.execution.genesis_file_location
: El blob génesis para la red a la que te estás conectando.storage.rocksdb_configs.enable_storage_sharding
: Establecer atrue
.validator_network.identity
: La ubicación del archivovalidator-identity.yaml
.
Para el archivo
fullnode.yaml
, necesitarás modificar los siguientes campos:-
base.data_dir
: El directorio donde se almacenarán los datos de blockchain. -
base.waypoint
: El waypoint para la transacción génesis en la red a la que te estás conectando. -
execution.genesis_file_location
: El blob génesis para la red a la que te estás conectando. -
storage.rocksdb_configs.enable_storage_sharding
: Establecer atrue
. -
full_node_networks
: - La redpublic
necesitará ser actualizada con la ubicación del archivovalidator-full-node-identity.yaml
.- La red
vfn
necesitará ser actualizada con la dirección IP o dirección DNS correcta del validator. Por ejemplo, si estás usando direcciones IP, necesitarás actualizar el campoaddresses
como sigue:
---addresses:- "/ip4/100.100.100.100/tcp/6181/noise-ik/..." # Establece la Dirección IP del validatorDe lo contrario, si estás usando direcciones DNS, necesitarás actualizar el campo
addresses
como sigue:---addresses:- "/dns/example.com/tcp/6181/noise-ik/..." # Establece la Dirección DNS del validator - La red
-
Para recapitular, en tu directorio de trabajo (
~/$WORKSPACE
), deberías tener una lista de archivos:- carpeta
config
conteniendo:validator.yaml
: El archivo de configuración del validator.fullnode.yaml
: El archivo de configuración del VFN.
- carpeta
keys
conteniendo:public-keys.yaml
: Claves públicas para ambos nodos.private-keys.yaml
: Claves privadas para ambos nodos.validator-identity.yaml
: Información de clave y cuenta para el validator.validator-full-node-identity.yaml
: Información de clave y cuenta para el VFN.
- carpeta
$username
conteniendo:owner.yaml
: Los mapeos de propietario, operador y votante.operator.yaml
: Información del operador del validator y VFN.
waypoint.txt
: El waypoint para la transacción génesis en la red a la que te estás conectando.genesis.blob
El blob génesis para la red a la que te estás conectando.
- carpeta
-
Ahora que has configurado tus archivos de configuración, puedes iniciar tu validator y VFN. Para iniciar tu validator, ejecuta los siguientes comandos, con las rutas asumiendo que estás en la raíz del directorio
aptos-core
:Ventana de terminal cargo cleancargo build -p aptos-node --releasesudo mv target/release/aptos-node /usr/local/binaptos-node -f ~/$WORKSPACE/config/validator.yamlPara iniciar tu VFN, ejecuta los siguientes comandos en una máquina VFN separada y dedicada. Necesitarás descargar el código fuente
aptos-core
y construir el binario en la máquina VFN. Igualmente, necesitarás copiar las claves y archivos de configuración desde la máquina validator.Inicia tu VFN ejecutando los siguientes comandos, con las rutas asumiendo que estás en la raíz del directorio
aptos-core
:Ventana de terminal cargo cleancargo build -p aptos-node --releasesudo mv target/release/aptos-node /usr/local/binaptos-node -f ~/$WORKSPACE/config/fullnode.yaml
(Opcional) Ejecutar como un Servicio
Sección titulada «(Opcional) Ejecutar como un Servicio»Si quieres ejecutar aptos-node
como un servicio, puedes configurarlo para ejecutar como un servicio controlado por systemctl
.
Esto es opcional, y puede hacerse usando la plantilla de servicio abajo. Necesitarás modificar la plantilla
para coincidir con tu entorno y configuración.
[Unit]Description=Aptos Node Service
[Service]User=nodeuserGroup=nodeuser
LimitNOFILE=500000
#Environment="RUST_LOG=error"WorkingDirectory=/home/nodeuser/aptos-coreExecStart=/usr/local/bin/aptos-node -f /home/nodeuser/aptos-mainnet/config/validator.yaml
Restart=on-failureRestartSec=3s
StandardOutput=journalStandardError=journalSyslogIdentifier=aptos-node
[Install]WantedBy=multi-user.target
Conectarse a la Red de Aptos
Sección titulada «Conectarse a la Red de Aptos»Ahora has completado la configuración de tu validator y VFN usando código fuente. Procede a Conectar Nodos para los siguientes pasos.