Configuration d'un réseau blockchain peer-to-peer sur Azure : guide étape par étape
Ce guide détaille la configuration d'un réseau Hyperledger Fabric peer-to-peer à 2 nœuds sur Azure Blockchain Service (hérité/géré) en utilisant PowerShell et Azure CLI. Note : Azure Blockchain Service a été retiré en septembre 2021. Ceci s'applique aux déploiements existants ou Fabric auto-géré sur VMs Azure/AKS. Pour nouveaux projets, utilisez **Azure Managed Applications for Quorum** ou **AKS avec charts Helm**.
Prérequis
- Abonnement Azure, Groupe de ressources, 2 nœuds Membres Blockchain (Node0, Node1) dans même consortium.
- Azure CLI (`az`), PowerShell 7+, `configtx.yaml`, `crypto-config.yaml` depuis le portail Azure.
- Binaires Fabric (`configtxgen`, `peer`) dans le PATH.
Étape 1 : Configurer Node0 (Orderer + Peer)
- Téléchargez les fichiers de config depuis le Portail Azure → Membre Blockchain → Propriétés → "Afficher et télécharger les fichiers de config".
- Éditez `configtx.yaml` :
- `Orderer.Addresses` : `10.0.0.4:7050` (IP privée Node0)
- `Application.Addresses` : `10.0.0.4:7051` (Peer Node0)
- Générez le bloc genesis :
configtxgen -profile TwoOrgsOrdererGenesis -channelID P2PChannel1 -outputBlock genesisblock.pb -configPath . - Démarrez les processus peer et orderer Node0 (via services gérés Azure ou Docker Compose sur VM).
Étape 2 : Configurer Node1 (Peer seulement)
- Téléchargez les fichiers de config Node1.
- Éditez `configtx.yaml` :
- `Orderer.Addresses` : `10.0.0.4:7050` (pointe vers orderer Node0)
- `Application.Addresses` : `10.0.0.5:7051` (Peer Node1)
- Générez le même bloc genesis (doit correspondre exactement à Node0).
- Démarrez le processus peer Node1.
Étape 3 : Rejoindre Node1 au canal
# Sur machine Node1 export CORE_PEER_ADDRESS=10.0.0.5:7051 export CORE_PEER_MSPCONFIGPATH=/path/to/crypto-config/peerOrganizations/org2/users/Admin@org2/msp peer channel join -b genesisblock.pb -o 10.0.0.4:7050 --cafile /path/to/orderer/tls/ca.crt --tls Étape 4 : Vérifier le réseau
- Vérifiez `crypto-config.yaml` : Deux orgs peers (Org1, Org2), chacune avec Admin/User1-4. Une org orderer (OrdererOrg) avec Admin.
- Vérifiez que les adresses `Orderer` et `Application` correspondent à `configtx.yaml`.
- Connectez via Azure Cloud Shell :
az blockchain node connect --resource-group--blockchain-node peer chaincode list --installed # Répéter pour node1 - Les deux nœuds affichent les chaincodes installés identiques → Réseau sain.
Alternative moderne critique
Pour nouveaux déploiements, **n'utilisez pas ce service retiré**. À la place :
- Hyperledger Fabric sur AKS : Utilisez Fabric Operator ou échantillons Kube.
- Quorum (IBFT/Raft) sur Azure : Template Azure Quorum.
- Azure Confidential Ledger : Pour registre centralisé inviolable avec TEEs.
Les étapes ci-dessus reflètent le flux de travail hérité d'Azure Blockchain Service. Les concepts (genesis, channel join, config crypto, anchor peers) restent au cœur de Fabric, mais la plateforme gérée a disparu.
