Configuration courante des nœuds autogérés

Cette page présente les bonnes pratiques à suivre pour exécuter des nœuds RPC sur plusieurs réseaux blockchain.

Plus précisément, ce tutoriel vous guidera à travers les étapes suivantes:

  • Créez un VPC pour votre nœud.
  • Démarrage d'une VM pour votre nœud.
  • Configurer un nouveau profil pour votre gestionnaire de nœuds
  • Installer un disque externe sur la VM pour les données de la chaîne

Ce guide part du principe que vous disposez déjà d'un projet Google Cloud pour lequel la facturation est activée. Pour savoir comment procéder, consultez Créer et gérer des projets.

Créer un VPC

Pour obtenir des instructions détaillées sur la création de VPC, consultez Créer et gérer des réseaux VPC.

  1. Créez un VPC pour votre nœud en suivant ces recommandations:

    • Créer un VPC personnalisé
    • Mode de routage régional
    • MTU 1 460
    • Activez la règle de pare-feu BLOCKCHAIN_VPC_NETWORK-allow-ssh par défaut pour votre réseau. Pour en savoir plus, consultez Utiliser des règles de pare-feu VPC.

    Remplacez BLOCKCHAIN_VPC_NETWORK par le nom du VPC qui contiendra vos ressources de nœud, par exemple ethereum-vpc.

  2. Ajoutez un sous-réseau IPv4 à votre réseau. Assurez-vous que la région choisie pour votre sous-réseau est la même que celle dans laquelle vous souhaitez déployer votre nœud.

Pour savoir comment créer des règles de pare-feu pour les VM dans un VPC, consultez Créer des règles de pare-feu VPC.

Démarrer une VM avec un SSD externe

Pour obtenir des instructions détaillées sur la création de VM et la connexion de disques externes, consultez la documentation Compute Engine.

Vous trouverez des instructions spécifiques sur la forme de la VM qui correspond aux exigences spécifiques du réseau blockchain dans la section Hardware Requirements and Recommended Machine Type de la page du nœud spécifique à la blockchain. Consultez la documentation spécifique à la blockchain pour connaître les exigences en termes de processeur et de mémoire, la forme de VM recommandée pour votre nœud et les commandes de création de votre nœud.

Se connecter à la VM à l'aide de SSH et créer un utilisateur

Se connecter à la VM à l'aide de SSH

  1. Une fois la VM provisionnée, connectez-vous à celle-ci à l'aide de SSH en accédant à la page Compute Engine ou en exécutant la commande suivante dans Cloud Shell:

    gcloud compute ssh NODE_NAME
    

    Remplacez NODE_NAME par le nom de votre nœud. Utilisez des lettres minuscules, des chiffres et des traits d'union. Exemple : my-node.

  2. Si vous vous connectez depuis votre propre ordinateur, installez Google Cloud CLI comme décrit dans Installer gcloud CLI.

  3. Une fois l'installation de la Google Cloud CLI terminée, connectez-vous à votre projet et à la VM:

    gcloud init
    gcloud compute ssh USER@NODE_NAME
    

    Remplacez USER par votre Google Cloud nom d'utilisateur.

Créer un utilisateur

Une fois que vous vous êtes connecté à la VM via SSH, créez un utilisateur sudo non SSH pour qu'il soit propriétaire et administre toutes les ressources du nœud. Étant donné que cet utilisateur ne dispose pas de clés SSH dans les métadonnées de la VM, il ne peut y accéder qu'en se connectant d'abord à la machine via l'un des utilisateurs Google Cloud authentifiés.

  1. Créez un utilisateur sudo, exécutez:

    sudo useradd -m NODE_ADMIN
    

    Remplacez NODE_ADMIN par l'ID utilisateur du nouvel utilisateur. Exemple :node-admin

  2. Ajoutez l'utilisateur au groupe sudo:

    sudo usermod -aG sudo NODE_ADMIN
    
  3. Passez à cet utilisateur pour terminer l'installation du disque externe:

    sudo su - NODE_ADMIN
    

Installer les disques externes

Le disque externe que vous avez créé à l'étape 2 hébergera toutes les données de la chaîne de votre nœud. Il s'agit d'une bonne pratique, car elle vous permet de transférer les données entre les nœuds une fois la VM arrêtée, et de configurer facilement des planifications d'instantanés pour vos données de chaîne.

  1. Installez votre disque. Commencez par lister tous les disques disponibles dans la VM:

    sudo lsblk
    

    Le disque externe se trouve très probablement sous /dev/sdb. Vous pouvez identifier le disque externe à la taille du disque que vous créez à l'étape 2.

  2. Formatez le disque:

    sudo mkfs.ext4 -m 0 -E lazy_itable_init=0,lazy_journal_init=0,discard /dev/sdb
    
  3. Créez un répertoire pour le disque et installez-le:

    sudo mkdir -p /mnt/disks/CHAIN_DATA_NAME
    sudo mount -o discard,defaults /dev/sdb /mnt/disks/CHAIN_DATA_NAME
    

    Remplacez les éléments suivants :

    • CHAIN_DATA_NAME: nom du répertoire de données de votre chaîne. Exemple :my-eth-data
    • /dev/sdb: emplacement du disque, s'il est différent de /dev/sdb.
  4. Attribuez des droits d'écriture à NODE_ADMIN:

    sudo chmod a+w /mnt/disks/CHAIN_DATA_NAME
    
  5. Obtenez l'UUID du disque et ajoutez-le à fstab pour le réinstaller automatiquement au redémarrage:

    sudo blkid /dev/sdb
    export DISK_UUID=$(findmnt -n -o UUID /dev/sdb)
    echo "UUID=$DISK_UUID /mnt/disks/CHAIN_DATA_NAME ext4 discard,defaults,nofail 0 2" | sudo tee -a /etc/fstab
    
  6. Votre disque est maintenant installé et prêt. Pour vérifier votre disque monté, exécutez la commande suivante:

    df -h
    

Étape suivante

Le squelette de votre nœud est prêt. À ce stade, vous devriez avoir:

  • Un VPC pour votre nœud avec l'accès SSH activé
  • Une VM adaptée aux exigences de votre nœud.
  • Un nouvel utilisateur administrateur de nœud pour posséder et gérer les ressources de nœud.
  • Un disque SSD externe installé adapté aux besoins de stockage de votre nœud.

Assurez-vous de revenir à la documentation spécifique à la blockchain pour terminer d'exécuter les commandes de déploiement de votre nœud.