Ejecutar un Nodo Completo Público
Puedes ejecutar tu propio nodo completo público (PFN) para sincronizar el estado de la blockchain de Aptos y mantenerte actualizado. Los PFN replican todo el estado de la blockchain sincronizándose desde otros VFN y PFN de Aptos. Los PFN pueden ser ejecutados por cualquiera. Esta sección explica cómo desplegar un PFN y conectarse a una red de Aptos. Puedes aprender más sobre los diferentes tipos de nodos en la sección Análisis Profundo de Blockchain.
¿Por qué ejecutar un Nodo Completo Público?
Sección titulada «¿Por qué ejecutar un Nodo Completo Público?»Ejecutar tu propio PFN ofrece varios beneficios:
Acceso Directo a Datos
Sección titulada «Acceso Directo a Datos»- Acceso directo y confiable a los datos de la blockchain
- Sin dependencia de servicios de terceros para consultas
- Capacidad de consultar datos históricos completos
Mejor Rendimiento
Sección titulada «Mejor Rendimiento»- Latencia reducida para aplicaciones que interactúan frecuentemente con la blockchain
- Control sobre la configuración y optimización del nodo
- Capacidad de procesar consultas sin límites de tasa externos
Contribución a la Red
Sección titulada «Contribución a la Red»- Ayuda a descentralizar la red proporcionando más puntos de acceso
- Mejora la resiliencia general de la red
- Apoya la misión de descentralización de Aptos
Desarrollo y Pruebas
Sección titulada «Desarrollo y Pruebas»- Entorno confiable para desarrollo de aplicaciones
- Capacidad de probar contra datos de blockchain reales
- Útil para servicios de indexación personalizados
Tipos de Despliegue
Sección titulada «Tipos de Despliegue»Puedes desplegar tu PFN usando varios métodos:
Docker (Recomendado)
Sección titulada «Docker (Recomendado)»- Fácil de configurar y mantener
- Imágenes pre-construidas disponibles
- Aislamiento y gestión de dependencias automatizada
Kubernetes
Sección titulada «Kubernetes»- Escalable y apto para producción
- Gestión automatizada y recuperación ante fallos
- Ideal para operaciones empresariales
Código Fuente
Sección titulada «Código Fuente»- Control total sobre la compilación y configuración
- Útil para desarrollo y personalización
- Requiere más experiencia técnica
Servicios en la Nube
Sección titulada «Servicios en la Nube»- AWS, GCP, Azure y otros proveedores
- Infraestructura gestionada
- Escalabilidad automática disponible
Requisitos del Sistema
Sección titulada «Requisitos del Sistema»Requisitos Mínimos
Sección titulada «Requisitos Mínimos»- CPU: 4 núcleos
- RAM: 8GB
- Almacenamiento: 300GB SSD
- Red: Conexión estable a internet con 100Mbps+
Requisitos Recomendados
Sección titulada «Requisitos Recomendados»- CPU: 8+ núcleos
- RAM: 16GB+
- Almacenamiento: 1TB+ SSD NVMe
- Red: 1Gbps+ conexión dedicada
Requisitos de Red
Sección titulada «Requisitos de Red»- Puerto 6180: Para sincronización de nodos (debe estar abierto)
- Puerto 8080: Para API REST (opcional, para acceso público)
- Puerto 9101: Para métricas (opcional, para monitoreo)
Configuración Básica
Sección titulada «Configuración Básica»1. Preparar el Entorno
Sección titulada «1. Preparar el Entorno»# Crear directorio para el nodomkdir aptos-fullnodecd aptos-fullnode
# Crear subdirectorios necesariosmkdir config data
2. Descargar Archivos de Configuración
Sección titulada «2. Descargar Archivos de Configuración»# Descargar configuración de mainnetwget https://raw.githubusercontent.com/aptos-labs/aptos-networks/main/mainnet/validator.yaml -O config/validator.yamlwget https://raw.githubusercontent.com/aptos-labs/aptos-networks/main/mainnet/genesis.blob -O config/genesis.blobwget https://raw.githubusercontent.com/aptos-labs/aptos-networks/main/mainnet/waypoint.txt -O config/waypoint.txt
3. Configurar Docker Compose
Sección titulada «3. Configurar Docker Compose»version: "3.8"services: fullnode: image: "aptoslab/validator:mainnet" restart: unless-stopped ports: - "6180:6180" - "8080:8080" - "9101:9101" volumes: - ./config:/opt/aptos/etc - ./data:/opt/aptos/data command: ["/usr/local/bin/aptos-node", "-f", "/opt/aptos/etc/validator.yaml"] logging: driver: "json-file" options: max-size: "100m" max-file: "5"
4. Iniciar el Nodo
Sección titulada «4. Iniciar el Nodo»# Iniciar con Docker Composedocker-compose up -d
# Verificar que esté ejecutándosedocker-compose ps
Monitoreo y Mantenimiento
Sección titulada «Monitoreo y Mantenimiento»Verificar Estado del Nodo
Sección titulada «Verificar Estado del Nodo»# Verificar estado de sincronizacióncurl http://localhost:8080/v1
# Verificar información del nodocurl http://localhost:8080/v1/-/healthy
Monitorear Logs
Sección titulada «Monitorear Logs»# Ver logs en tiempo realdocker-compose logs -f fullnode
# Ver logs recientesdocker-compose logs --tail=100 fullnode
Métricas y Monitoreo
Sección titulada «Métricas y Monitoreo»# Acceder a métricas Prometheuscurl http://localhost:9101/metrics
# Verificar progreso de sincronizacióncurl http://localhost:9101/metrics | grep aptos_state_sync_version
Configuración Avanzada
Sección titulada «Configuración Avanzada»Configuración de Red Personalizada
Sección titulada «Configuración de Red Personalizada»Para conectar a testnet o devnet, modifica la configuración:
# Para testnetbase: chain_id: 2 data_dir: "/opt/aptos/data" waypoint: from_file: "/opt/aptos/etc/waypoint.txt"
# Configuración de red específica...
Optimización de Rendimiento
Sección titulada «Optimización de Rendimiento»storage: enable_indexer: true rocksdb_configs: max_open_files: 10000 max_total_wal_size: 1073741824
state_sync: continuous_syncing_mode: apply_transaction_outputs
Configuración de Firewall
Sección titulada «Configuración de Firewall»# Permitir tráfico necesariosudo ufw allow 6180/tcpsudo ufw allow 8080/tcpsudo ufw allow 9101/tcp
Solución de Problemas
Sección titulada «Solución de Problemas»Problemas Comunes
Sección titulada «Problemas Comunes»-
Sincronización Lenta
- Verificar conexión de red
- Aumentar recursos de CPU/RAM
- Verificar espacio en disco
-
Errores de Conexión
- Verificar configuración de firewall
- Verificar archivos genesis/waypoint
- Verificar configuración de red
-
Alto Uso de Recursos
- Optimizar configuración de RocksDB
- Aumentar memoria disponible
- Usar almacenamiento SSD más rápido
Comandos de Diagnóstico
Sección titulada «Comandos de Diagnóstico»# Verificar uso de recursosdocker stats
# Verificar conectividad de redtelnet <peer-ip> 6180
# Verificar archivos de configuracióndocker-compose exec fullnode cat /opt/aptos/etc/validator.yaml
Actualizaciones
Sección titulada «Actualizaciones»Actualizar el Nodo
Sección titulada «Actualizar el Nodo»# Parar el nododocker-compose down
# Actualizar imagendocker-compose pull
# Reiniciar con nueva imagendocker-compose up -d
Respaldo de Datos
Sección titulada «Respaldo de Datos»# Crear respaldo de datostar -czf aptos-backup-$(date +%Y%m%d).tar.gz data/
# Restaurar desde respaldo (si es necesario)tar -xzf aptos-backup-20240101.tar.gz
Para guías de despliegue más detalladas y específicas por plataforma, consulta las secciones de documentación especializadas.