Exécuter un nœud Chiliz Chain

Lancer, créer, connecter et déboguer un nœud pour se synchroniser avec Chiliz Chain

Exécuter votre propre nœud Chiliz Chain offre un contrôle, une confidentialité et une fiabilité accrus, mais nécessite plus d'expertise technique et de ressources par rapport à l'utilisation d'un point de terminaison RPC existant.

Cela vous permet d'effectuer des transactions et de communiquer avec des contrats intelligents sur la Chiliz Chain

Notez qu'il existe une page de documentation spécifique aux validateurs pour l'exécution de nœuds : Exécuter un nœud validateur

Prérequis

Pour exécuter le nœud Chiliz Chain, vous devez disposer de Docker installé, soit sur votre machine, soit sur votre serveur. Par conséquent, veuillez terminer l' installation de Docker avant de continuer.

Images Docker préconstruites

Vous pouvez utiliser les images Docker préconstruites depuis le référentiel public Chiliz Chain 2.0 sur Docker Hub pour Chiliz Chain 2.0.

Lancer un nœud et démarrer la synchronisation

Le point de départ recommandé pour exécuter un nœud Chiliz Chain est avec le volume de données monté. Si cette méthode est utilisée pour recréer un conteneur Docker, les données sont stockées dans le répertoire et peuvent facilement être réutilisées ou clonées vers un autre nœud.

Étape 1 : Créer un répertoire

Créez un répertoire et indiquez-le dans le -v paramètre dans la commande suivante :

docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 8545:8545 \
-p 8546:8546 \
chilizchain/ccv2-geth:latest \
--chiliz # pour Chiliz Mainnet. Utilisez --spicy pour Spicy Testnet.
--datadir=/datadir \
--ipcdisable

Étape 2 : Connecter le client

Pour connecter un client à un nœud, vous devez activer les serveurs RPC HTTP et/ou WebSocket en spécifiant --http et/ou --ws groupes de paramètres respectivement.

Par exemple :

docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 8545:8545 \
-p 8546:8546 \
chilizchain/ccv2-geth:latest \
--chiliz \ # pour Chiliz Mainnet. Utilisez --spicy pour Spicy Testnet.
--datadir=/datadir \
--ipcdisable \
--http \
--http.addr=0.0.0.0 \
--http.api=eth,net,web3,debug,txpool \
--http.port=8545 \
--http.corsdomain="*" \
--http.vhosts="*" \
--ws \
--ws.addr=0.0.0.0 \
--ws.api=eth,net,web3,debug,txpool \
--ws.port=8546 \
--ws.origins="*" \

Informations sur la maintenance du nœud

Changer la verbosité lors du débogage

Dans certains cas, vous pouvez vouloir augmenter la verbosité du nœud, par ex. lorsque vous devez déboguer soit le nœud, soit le client qui s'y connecte.

Pour ce faire, vous pouvez définir un --verbosity paramètre. Il peut accepter les options suivantes (par défaut : 3) :

  • 0=silencieux

  • 1=erreur

  • 2=avertissement

  • 3=info

  • 4=debug

  • 5=détaillé

Arrêter le nœud et nettoyer

Si vous avez lancé le nœud en utilisant l'une des commandes ci-dessus, votre processus de nœud continue de fonctionner au premier plan. Pour arrêter ce processus, appuyez sur CTRL+C.

Exécutez la commande suivante pour supprimer le conteneur Docker :

docker rm ccv2-node

Supprimer le répertoire

Exécutez la commande suivante pour supprimer un répertoire :

rm my-datadir

Mettre à jour votre nœud

L'équipe Chiliz Chain s'efforce de garder Chiliz Chain sécurisée et moderne, et nous effectuerons donc des hard forks de temps à autre chaque année, comme le hard fork Dragon8.

En cas de hard fork, votre nœud sera hors synchro avec le réseau. Il est donc important de suivre nos annonces et de mettre à jour votre nœud.

Pour garder votre nœud à jour, vous pouvez suivre les étapes suivantes.

Si vous utilisez Docker :

  1. Assurez-vous d'arrêter et de supprimer votre conteneur Docker existant tout en préservant les volumes contenant votre base de données.

Si vous utilisez votre propre binaire :

  1. Compilez à partir de là avec votre ensemble d'outils.

Exécuter un nœud d'archive

Pour exécuter un nœud d'archive, vous devez ajouter les 2 paramètres suivants dans l'appel ccv2-geth présenté ci‑dessus :

--syncmode=full \
--gcmode=archive \

Exécuter un nœud Chiliz Chain à partir d'un instantané ou d'une sauvegarde

Pour accélérer le processus de synchronisation de votre nœud Chiliz Chain, vous pouvez vous appuyer sur un instantané — une copie récente (ou archive/sauvegarde) du répertoire de données de la blockchain (datadir). Cette méthode permet à votre nœud de devenir opérationnel plus rapidement que la synchronisation depuis zéro.

Il est recommandé de conserver des instantanés pour les nouvelles installations de nœuds. Écraser un datadir existant avec un instantané peut entraîner des incohérences.

Instantanés disponibles

Chaque réseau dispose d'un instantané dédié :

Nettoyage des données existantes

Si vous avez l'intention d'appliquer un instantané à un nœud existant, assurez-vous de supprimer les répertoires et fichiers suivants dans votre datadir avant de redémarrer le nœud :

rm -rf blobpool transactions.rlp LOCK lightchaindata triecache

Cette étape aide à prévenir les conflits potentiels dus aux données résiduelles.

Étapes pour exécuter un nœud à partir d'un instantané :

  1. Créer un répertoire de données :

mkdir -p ~/chiliz-node/my-datadir
  1. Télécharger l'instantané :

Remplacez l'URL par l'URL de l'instantané Mainnet si nécessaire.

cd ~/chiliz-node/my-datadir
nohup curl -L --retry 5 -o chaindata.tar.gz https://s3.eu-west-3.amazonaws.com/spicy-snapshots.chiliz.com/chaindata_snapshot.tar.gz > download.log 2>&1 &

Pour surveiller la progression du téléchargement, utilisez : tail -f download.log

  1. Extraire l'instantané :

tar -xzf chaindata.tar.gz
  1. Exécuter le nœud Chiliz Chain :

docker run \
  -v ~/chiliz-node/my-datadir:/datadir \
  --name ccv2-node \
  -p 8545:8545 \
  -p 8546:8546 \
  chilizchain/ccv2-geth:latest \
  --spicy \  # Utilisez --chiliz pour le Mainnet
  --datadir=/datadir \
  --ipcdisable \
  --http \
  --http.addr=0.0.0.0 \
  --http.api=eth,net,web3,debug,txpool \
  --http.port=8545 \
  --http.corsdomain="*" \
  --http.vhosts="*" \
  --ws \
  --ws.addr=0.0.0.0 \
  --ws.api=eth,net,web3,debug,txpool \
  --ws.port=8546 \
  --ws.origins="*"

Informations supplémentaires sur Geth

Visitez les options en ligne de commande de Geth pour voir la liste complète des paramètres Geth disponibles.

Mis à jour

Ce contenu vous a-t-il été utile ?