Exécuter un nœud validateur

Configurer un nœud validateur Chiliz Chain

Qu'est-ce qu'un nœud validateur ?

Pour devenir un Chiliz Chain validateur, vous devez exécuter un nœud Validateur, soit avec votre propre matériel, soit via un partenaire. Un nœud est un serveur web configuré spécifiquement pour valider les transactions avant de les inscrire sur Chiliz Chain.

Notez que nous disposons d'une page de documentation plus générale sur l'exécution de nœuds : Exécuter un nœud Chiliz Chain

TL;DR

Pour exécuter un nœud Validateur, vous devez définir les paramètres suivants :

docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
--mine \
--chiliz \ # pour Chiliz Mainnet. Utilisez --spicy pour Spicy Testnet.
--datadir=/datadir \
--password=/datadir/password.txt \
--allow-insecure-unlock \
--unlock=REPLACE_WITH_VALIDATOR_ADDRESS \
--syncmode=full \
--gcmode=archive \
--miner.etherbase=REPLACE_WIT
--nodekeyhex=2668f377e69de_EXAMPLE_REPLACE_WITH_YOUR_VALUE_c88bea3e337446ed73 \
--nat=extip:140.250.140.250 \ # Ceci n'est qu'un exemple.
--verbosity=4

Prérequis

Pour exécuter le nœud validateur Chiliz Chain, vous devez avoir Docker Engine installé sur votre machine ou votre serveur. Vous pouvez utiliser un fournisseur cloud comme Amazon Web Services, Google Cloud Platform ou Microsoft Azure, ou configurer votre propre serveur (voir ci‑dessous).

Veuillez compléter les installation de Docker avant de continuer.

Exigences système

Vous aurez besoin d'un serveur dédié pour exécuter votre nœud validateur :

  • CPU : Au moins 2 cœurs CPU.

  • Mémoire : Au moins 4 Go de RAM.

  • Disque : Utilisez un disque SSD pour des performances optimales.

    • Nous recommandons d'avoir au moins 300 Go d'espace disque libre pour synchroniser la chaîne.

  • Bande passante réseau : Au moins 10 Gbps.

Images Docker préconstruites

Consultez ou utilisez les images Docker préconstruites depuis le dépôt public Chiliz Chain 2.0 sur Docker Hub. Notez que vous devez avoir un compte Docker Hub pour accéder au dépôt.

Lancer un nœud Validateur et démarrer la synchronisation

Le point de départ recommandé pour exécuter un nœud validateur Chiliz Chain est d'utiliser un 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 validateur.

En tant que fork d'Ethereum, Chiliz Chain s'appuie sur Geth pour ses serveurs de nœuds.

Go‑ethereum (alias Geth) est un client Ethereum écrit en Go. Exécuter Geth aux côtés d'un client de consensus transforme un ordinateur en nœud. C'est donc une partie essentielle de votre nœud.

Nous avons forké Geth en ccv2-geth, comme vous le verrez ci‑dessous.

Créer l'adresse du validateur

Créez le nœud validateur avec la commande suivante :

docker run --rm -ti \
-v $(pwd)/keystore:/root/.ethereum/keystore/ \
chilizchain/ccv2-geth:latest \
--chiliz \  # pour Chiliz Mainnet. Utilisez --spicy pour Spicy Testnet.
account new

Vous devrez taper un mot de passe pour le fichier de clé secrète.

  • Adresse publique de la clé : Lors de l'exécution du validateur, cette adresse sera utilisée pour définir le --unlock paramètre.

docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
--chiliz \ # pour Chiliz Mainnet. Utilisez --spicy pour Spicy Testnet.
...
--unlock=REPLACE_WITH_VALIDATOR_ADDRESS # Ceci n'est qu'un exemple.
  • Chemin du fichier de clé secrète : Ce fichier doit être déplacé dans le répertoire "keystore" à l'intérieur du datadir $(pwd)/my-datadir que vous avez créé dans les étapes précédentes, donc le chemin final du fichier sera "$(pwd)/my-datadir/keystore/UTC–(TIMESTAMP)-(ADDRESS)". NE PAS changer le nom du fichier.

  • Mot de passe : Le mot de passe que vous avez saisi lors de l'exécution de la commande précédente doit être stocké dans un fichier : $(pwd)/my-datadir/password.txt Ce fichier sera utilisé pour définir le --password lors de l'exécution du nœud validateur. N'oubliez pas que tous les fichiers dans le chemin hôte $(pwd)/my-datadir seront situés dans le conteneur dans /datadir répertoire, c'est pourquoi le paramètre password devrait être défini comme dans l'exemple suivant :

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

Il est très important de garder les recommandations suivantes à l'esprit :

  • Vous pouvez partager votre publique adresse avec n'importe qui. Les autres en ont besoin pour interagir avec vous.

  • Vous devez NE JAMAIS PARTAGER la clé secrète avec qui que ce soit ! La clé contrôle l'accès à vos fonds !

  • Vous devez SAUVEGARDEZ votre fichier de clé ! Sans la clé, il est impossible d'accéder aux fonds du compte !

  • Vous devez SOUVENEZ-VOUS de votre mot de passe ! Sans le mot de passe, il est impossible de déchiffrer la clé !

Générer la clé du nœud validateur

Cette section est optionnelle.

Nous recommandons de générer une chaîne hexadécimale aléatoire pour le nœud. Ceci est utile pour la traçabilité dans les journaux et pour éviter les problèmes de peering avec la chaîne.

Pour ce faire, vous pouvez utiliser https://www.browserling.com/tools/random-hex et générer une clé hexadécimale de 64 caractères par nœud. Lors de l'exécution d'un nœud validateur, vous pouvez définir --nodekeyhex avec cette valeur. Cela garantira que lorsque vous redémarrerez le nœud, il aura la même adresse de nœud (appelée « enode address ») et cela facilitera le débogage ou la recherche de pannes à l'avenir.

docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
--chiliz \ # pour Chiliz Mainnet. Utilisez --spicy pour Spicy Testnet.
...
--nodekeyhex=2668f377e69de_EXAMPLE_REPLACE_WITH_YOUR_VALUE_c88bea3e337446ed73 # Ceci n'est qu'un exemple.
...

Définir le mécanisme de mappage de port NAT de Geth

Le paramètre --nat de Geth propose les options suivantes : any, none, upnp, pmp, pmp:<IP>, et extip:<IP>. La valeur par défaut est any. Voir la documentation de Geth pour plus d'informations.

Nous recommandons d'utiliser l' extip:<IP> option, où <IP> est l'adresse IPv4 publique depuis laquelle le validateur est lancé.

docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
--chiliz \ # pour Chiliz Mainnet. Utilisez --spicy pour Spicy Testnet.
...
--nat=extip:140.250.140.250 # Ceci n'est qu'un exemple.
...

Définir la verbosité

Pour un dépannage plus approfondi, le paramètre de verbosité des journaux de Geth --verbosity peut être défini comme :

  • 0=silencieux

  • 1=erreur

  • 2=avertissement

  • 3=info

  • 4=debug

  • 5=détaillé

La valeur par défaut est 3. Nous recommandons d'utiliser 4.

docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
--chiliz \ # pour Chiliz Mainnet. Utilisez --spicy pour Spicy Testnet.
...
--verbosity=4 # Ceci n'est qu'un exemple.
...

Changer le propriétaire d'un nœud

Il peut arriver un moment où vous ne souhaitez plus exécuter un nœud validateur. Vous pouvez alors vouloir transférer le nœud à quelqu'un d'autre.

Dans ce cas, vous pouvez suivre ces étapes :

  1. Connectez votre portefeuille au dApp Chiliz Staking.

  2. Cliquez sur le bouton « Changer le propriétaire ».

  1. Dans la fenêtre modale, indiquez l'adresse actuelle du nœud dont vous souhaitez changer le propriétaire, et sa nouvelle adresse (fournie par le nouveau propriétaire).

Une fois soumis, le changement s'appliquera directement.

Mis à jour

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