Gérer le service de tri

Cette rubrique contient des informations sur la façon dont les fondateurs et les participants gèrent le service de commande.

Outre le contenu abordé dans cette rubrique, plusieurs tâches propres au canal pour les noeuds de donneur d'ordre peuvent être effectuées sur la page Canaux de la console. Reportez-vous à :

Qu'est-ce que le service de tri ?

Oracle Blockchain Platform prend en charge le type de radeau par consensus.

Pour plus d'informations sur l'implémentation Hyperledger Fabric du protocole Raft, reportez-vous à Service de commande - Raft.

Avec l'ancien type de consensus Kafka, l'ensemble du réseau peut avoir au plus deux noeuds de donneur d'ordre, et ils doivent rejoindre tous les canaux. Dans certains cas, ils peuvent être surchargés et ne peuvent pas être réduits. Avec le type de consensus Raft, le réseau peut avoir un nombre arbitraire de noeuds de donneur d'ordre, et chaque canal peut définir son propre ensemble de noeuds de donneur d'ordre. Différents canaux peuvent utiliser différents noeuds de donneur d'ordre, et les noeuds de donneur d'ordre ne constituent plus le goulet d'étranglement.

Cependant, le type de consensus Raft peut être compliqué à configurer correctement. Il y a des règles sur ce qui peut ou ne peut pas être fait, et si ces règles ne sont pas suivies le canal et même le réseau peut ne pas fonctionner. Les directives suivantes peuvent réduire le nombre de problèmes que vous rencontrez :

Maintien actif de la majorité des noeuds de service de commande

L'algorithme de consensus Raft exige que la majorité des noeuds de service de commande fonctionnent ; sinon, aucun consensus ne peut être obtenu. La majorité signifie plus de 50%. Par exemple, pour cinq OSN, au moins trois OSN doivent fonctionner ; pour six OSN, au moins quatre OSN doivent fonctionner.
  • S'il y a 50 % ou moins d'OSN travaillant sur le réseau, la gestion du réseau ne sera plus fonctionnelle. Aucun canal ne peut être créé, aucun noeud donneur d'ordre ne peut être ajouté au réseau, aucun donneur d'ordre ne peut être supprimé du réseau, etc.
  • Si 50 % ou moins des OSN travaillent dans le canal de l'application, aucune transaction ne peut être soumise à ce canal de l'application. Les requêtes peuvent toujours fonctionner correctement, mais les opérations administratives telles que l'ajout d'une nouvelle organisation, la modification de la liste de contrôle d'accès ou le déploiement de codes chaîne échouent.

Soyez prudent lorsque vous ajoutez un nouveau OSN au réseau ou à un canal d'application. Assurez-vous que le propriétaire est digne de confiance et que l'OSN est robuste.

Lorsque vous supprimez des OSN ou une organisation, assurez-vous que plus de 50 % des OSN restent opérationnels. Par exemple, si vous aviez deux organisations avec trois OSN chacune, si vous en aviez retiré une, au cours de la suppression, elle serait interprétée comme seulement 50 % des OSN étant fonctionnels. Ajoutez un numéro OSN à l'organisation restante avant de supprimer l'organisation étrangère pour vous assurer que vous dépassez toujours 50 % des numéros OSN qui fonctionnent.

Ne pas ajouter ou supprimer des prescripteurs fréquemment

Chaque fois qu'un nouveau réseau OSN est ajouté à un réseau ou à un canal, ou qu'un réseau OSN existant est enlevé d'un canal, le cluster OSN Raft en cours devient brièvement instable. Pendant cette période, aucune transaction ne peut être traitée et un message d'erreur semblable au suivant peut indiquer un tel statut :
UNKNOWN: Stream removed
SERVICE UNAVAILABLE
BAD REQUEST

Cela peut durer quelques minutes. Si vous avez supprimé l'ancien OSN du leader Raft du canal, cela peut durer jusqu'à 20 minutes.

Assurez-vous de ne pas ajouter ou supprimer fréquemment des prescripteurs. Si plusieurs donneurs d'ordre doivent être ajoutés ou supprimés, effectuez-en un à la fois et assurez-vous que le réseau est revenu au statut opérationnel avant d'effectuer la modification suivante.

S'assurer que le nouveau donneur d'ordre est démarré dès que possible

Lors de l'ajout d'un nouveau donneur d'ordre dans le réseau, deux organisations sont généralement impliquées : le fondateur et le propriétaire du nouveau donneur d'ordre. Les deux parties doivent suivre les instructions de la section Join the Participant or Scaled-Out OSNs to the Founder's Ordering Service jusqu'à la fin du processus ou le fondateur ne pourra pas gérer le réseau.

Rejoindre le participant ou les OSN mis à l'échelle au service de commande du fondateur

Lorsque vous provisionnez une instance de participant, elle est créée avec 3 donneurs d'ordre. Les donneurs d'ordre sont inactifs jusqu'à ce qu'ils soient connectés à un réseau. Lorsque vous mettez à l'échelle un fondateur, les nouveaux donneurs d'ordres sont également inactifs jusqu'à ce qu'ils soient joints à un réseau.

Pour ajouter ou supprimer plusieurs donneurs d'ordre, ajoutez ou supprimez-en un à la fois et assurez-vous que le réseau est revenu au statut opérationnel avant de procéder à la modification suivante. Reportez-vous à la section Qu'est-ce que le service de commande ? pour plus d'informations importantes sur l'ajout, la suppression, le démarrage et l'arrêt des commandes Raft.

Export des paramètres OSN à partir du participant ou des prescripteurs mis à l'échelle

Pour rejoindre le participant ou les donneurs d'ordres à grande échelle dans un réseau, exportez leurs paramètres et importez-les dans le fondateur.

  1. Dans la console des participants (ou la console du fondateur pour les donneurs d'ordres redimensionnés), dans l'onglet Noeud, recherchez le noeud donneur d'ordres (ou le premier noeud donneur d'ordres s'il existe plusieurs noeuds). Sélectionnez le menu Action pour ce noeud et sélectionnez Exporter les paramètres OSN.

    Cela génère un fichier JSON avec les paramètres et enregistre le fichier. Le fichier contient le certificat de l'organisation et les paramètres du noeud de service du donneur d'ordre sélectionné signés par la clé privée de l'administrateur de l'organisation participante. Envoyez ce fichier à l'administrateur de l'instance fondatrice.

    Les applications qui sont exécutées sur des canaux qui utilisent ce numéro OSN nécessitent également ce certificat TLS exporté.

  2. Dans la console fondatrice, ouvrez l'onglet Réseau. Cliquez sur Ajouter OSN. Une fenêtre vous invite à indiquer l'emplacement du fichier JSON fourni par le participant. Sélectionnez cette option pour charger le fichier, puis cliquez sur Ajouter.

    L'organisation du participant ou le prescripteur nouvellement augmenté est ajouté à la section de l'organisation du prescripteur de la liste de canaux système.

Export des paramètres de configuration du fondateur

Une fois le participant ou les donneurs d'ordres mis à l'échelle ajoutés au fondateur, vous devez exporter les paramètres du fondateur et les importer dans le participant ou le donneur d'ordre mis à l'échelle.

  1. Dans la console du fondateur, ouvrez l'onglet Réseau. Cliquez sur Exporter un bloc de configuration réseau.

    Le bloc de configuration réseau contient le dernier bloc de configuration de canal système. Il peut être enregistré et envoyé à l'administrateur des participants.

  2. Dans la console des participants (ou la console du fondateur pour les donneurs d'ordres redimensionnés), dans l'onglet Noeud, recherchez le noeud donneur d'ordres (ou le premier noeud donneur d'ordres s'il existe plusieurs noeuds). Sélectionnez le menu Action pour ce noeud et sélectionnez Importer le bloc de configuration réseau.

    Vous êtes invité à saisir le fichier qui a été envoyé par l'administrateur de l'instance fondatrice.

  3. Dans la console des participants, actualisez l'onglet Noeud. Le statut du noeud donneur d'ordre est down. Sélectionnez Démarrer dans le menu Action.

    Chaque noeud donneur d'ordre démarré sera ajouté au cluster Raft du fondateur.

Chaque fois qu'un nouveau numéro OSN est ajouté en redimensionnant le donneur d'ordre (comme décrit dans Redimensionnement de l'instance), ces étapes doivent être répétées pour ajouter le nouveau numéro OSN au cluster Raft.

Remarques :

Vous ne pouvez pas ajouter plusieurs OSN à un réseau en un seul lot. Assurez-vous qu'un seul OSN est ajouté à la fois.

Modifier les paramètres de service de commande pour le réseau

Vous pouvez mettre à jour les paramètres du service de commande pour l'instance fondatrice.

  • Les paramètres mis à jour sont utilisés lorsque vous créez des canaux et ne sont pas appliqués aux canaux existants.
  • Vous pouvez mettre à jour les paramètres de service de commande pour un canal existant individuel, comme décrit dans Modification des paramètres de service de commande pour un canal.
  • Si vous modifiez les paramètres du service de commande et que des applications sont exécutées sur le réseau, ces applications doivent être mises à jour manuellement pour utiliser les paramètres révisés du service de commande.
  • Ce n'est pas courant, mais dans certaines situations, vous pouvez exposer un service de commande différent à certains des participants du réseau. Dans ce cas, vous allez exporter le bloc de configuration réseau mis à jour et les participants requis importeront les paramètres révisés. Reportez-vous à la section Rejoindre les OSN participant ou évolutif au service de commande du fondateur.
Vous devez être administrateur pour effectuer cette tâche.
  1. Accédez à la console du fondateur et cliquez sur l'onglet Réseau.
  2. Cliquez sur le bouton Paramètres du service de commande.
    La boîte de dialogue Paramètres du service de commande apparaît.
  3. Mettez à jour les paramètres selon vos besoins.
    Champ Description
    Délai d'expiration du batch (ms) Indiquez la durée, en millisecondes, pendant laquelle le système attendra avant de créer un lot. Saisissez un nombre compris entre 1 et 3600000.
    Nombre maximal de messages Indiquez le nombre maximum de messages à inclure dans un lot. Saisissez un nombre compris entre 1 et 4294967295.
    Octets de message absolus Indiquez le nombre maximal d'octets autorisés pour les messages sérialisés dans un batch.

    Ce nombre doit être supérieur à la valeur saisie dans le champ Octets de message préférés.

    Octets de message préférés Indiquez le nombre préféré d'octets autorisés pour les messages sérialisés dans un batch. Un message de taille supérieure à cette taille entraîne un lot plus volumineux, mais la taille du lot sera égale ou inférieure au nombre d'octets que vous avez indiqué dans le champ Octets de message absolus.

    En général, vous définissez cette valeur sur 1 Mo ou moins.

    La valeur que vous saisissez dans ce champ doit être inférieure à la valeur que vous saisissez dans le champ Octets de message absolus.

    Taille d'intervalle du cliché Définit le nombre de Mo pour lesquels un instantané est pris.
  4. Cliquez sur Mettre à jour.
    Les paramètres mis à jour sont enregistrés.

Afficher les paramètres du service de commande

Vous pouvez afficher les paramètres de service de commande du fondateur qui ont été importés dans l'instance Oracle Blockchain Platform d'un participant.

Si le fondateur modifie les paramètres du service de commande, les nouveaux paramètres doivent être portés vers le participant comme décrit dans la section Rejoindre le service OSN Participant ou Redimensionné au service de commande du fondateur. Si des applications sont exécutées sur le réseau, elles doivent être mises à jour manuellement pour utiliser les paramètres de service de commande révisés.
  1. Accédez à la console du participant et sélectionnez l'onglet Réseau.
  2. Cliquez sur Paramètres de service de commande, puis sur Visualiser.
    La boîte de dialogue Paramètres de prescription s'affiche.