Aller directement au menu principal

Les nœuds complets (Full Nodes) sur Core

Un nœud complet Core stocke l'intégralité de l'historique de la blockchain Core, permettant à quiconque de vérifier l'état de n'importe quel compte. Un nœud complet Core peut prendre plusieurs formes :

  • Nœud complet normal : pour une utilisation privée.
  • Nœud complet de validateur : agit en tant que validateur sur Core, validant les blocs et transactions.
  • Nœud complet RPC : fournit des services RPC et répond aux requêtes HTTP.

Voici les étapes détaillées pour exécuter des nœuds complets normaux sur le réseau Core

Configuration système requise pour les nœuds complets sur le réseau Core

Il existe plusieurs exigences système pour configurer un nœud complet sur Core.

Logiciel

  • Système d'exploitation: Actuellement, un nœud de validation Core est compatible uniquement avec les systèmes d'exploitation macOS ou Linux (Ubuntu 20.04 ou ultérieur).
  • Connectivité réseau: Connexion Internet stable avec une faible latence et une haute disponibilité.
  • Configuration du pare-feu: Ouvrez les ports nécessaires pour permettre la communication avec le réseau et les autres nœuds.

Matériel

Les nœuds Core effectuent plusieurs tâches nécessitant beaucoup de ressources, comme le stockage des données de la blockchain, la vérification des blocs ou des transactions, la communication avec les nœuds pairs et la réponse aux demandes réseau. Contrairement aux validateurs, les nœuds complets ne produisent pas de blocs, mais aident à propager les transactions et les blocs à travers le réseau. Ils jouent un rôle crucial dans le maintien de l'intégrité des données et dans le soutien d'un environnement sans confiance. Pour exécuter des nœuds complets sur Core, les spécifications matérielles minimales recommandées sont les suivantes :

For Full Nodes on Core Blockchain Testnet2, following minimum hardware specifications are recommended:

RequirementsDetails
Storage1 TB of free disk space, solid-state drive (SSD), gp3, 8k IOPS, 250MB/S throughput, read latency <1ms.
CPUMinimum 4 CPU cores are recommended.
RAM8 Gigabytes
Internet SpeedA broadband Internet connection with upload/download speeds of 10 megabytes per second.

Construire et exécuter un nœud complet sur Core

  1. We recommend using the core-chain GitHub repository to directly build and run your full node, running your full node directly from our blockchain codebase. Instructions for building the source code can be found in the repository's README.

  2. Download the latest node binary for Core Testnet from Core's GitHub releases repo. The node binary includes the relevant testnet configuration files. Download the latest snapshot for testnet from here. Note that the recommended method for syncing testnet node is to sync from genesis block.

  3. Write the genesis state locally by executing the following command from your project directory:

    geth --datadir node init genesis.json

    You should see the following output:

    INFO [07-18|14:57:20.715] Maximum peer count                       ETH=25 LES=0 total=25
    INFO [07-18|14:57:20.721] Allocated cache and file handles database=/Users/jackcrypto/go/core-chain/node/geth/chaindata cache=16 handles=16
    INFO [07-18|14:57:20.724] Writing custom genesis block
    INFO [07-18|14:57:20.725] Persisted trie from memory database nodes=25 size=87.18kB time=226.129µs gcnodes=0 gcsize=0.00B gctime=0s livenodes=1 livesize=0.00B
    INFO [07-18|14:57:20.725] Successfully wrote genesis state database=chaindata hash=d90508…5c034a
    INFO [07-18|14:57:20.725] Allocated cache and file handles database=/Users/jackcrypto/go/core-chain/node/geth/lightchaindata cache=16 handles=16
    INFO [07-18|14:57:20.729] Writing custom genesis block
    INFO [07-18|14:57:20.729] Persisted trie from memory database nodes=25 size=87.18kB time=178.332µs gcnodes=0 gcsize=0.00B gctime=0s livenodes=1 livesize=0.00B
    INFO [07-18|14:57:20.730] Successfully wrote genesis state database=lightchaindata hash=d90508…5c034a
  4. Our full node is ready, let's start running it! Run the following command to start the Full Node directly:

    ## start a full node
    geth --config ./config.toml --datadir ./node --cache 8000

    5. As our full node runs, we can monitor its logs to make sure that everything is operating correctly. The log file is located at /node/logs/core.log by default, but can be changed to another location if desired.