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.

En plus du contenu décrit dans cette rubrique, plusieurs tâches propres aux canaux pour les noeuds du responsable de la commande peuvent être effectuées dans la page Canaux de la console. Voir :

Qu'est-ce que le service de tri?

Oracle Blockchain Platform prend en charge Raft en tant que type de consensus.

Pour plus d'informations sur la mise en oeuvre de Hyperledger Fabric dans le protocole Raft, voir : Service de commande - Raft.

Avec l'ancien type de consensus Kafka, l'ensemble du réseau peut avoir au plus deux noeuds de commande, et ils doivent rejoindre tous les canaux. Dans certains cas, ils peuvent être surchargés et ne peuvent pas être mis à l'échelle. Avec le type de consensus Raft, le réseau peut avoir un nombre arbitraire de nœuds de commande, et chaque canal peut définir son propre jeu de nœuds de commande. Différents canaux peuvent utiliser différents noeuds de tri, et les noeuds de tri ne seront plus le goulot 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 :

Maintenir la majorité des noeuds de service de commande (OSN) actifs

L'algorithme de consensus Raft exige que la majorité des nœuds de service de commande (OSN) fonctionnent; sinon, aucun consensus ne peut être fait. La majorité signifie plus de 50%. Par exemple, pour cinq OSN, il doit y avoir au moins trois OSN qui fonctionnent; pour six OSN, il doit y avoir au moins quatre OSN qui fonctionnent.
  • S'il y a 50 % ou moins d'OSN travaillant dans le réseau, la gestion du réseau ne sera plus fonctionnelle. Aucun canal ne peut être créé, aucun nouveau noeud d'ordonnateur ne peut être ajouté au réseau, aucun ordonnateur ne peut être supprimé du réseau, etc.
  • S'il y a 50 % ou moins d'OSN dans le canal de l'application, aucune transaction ne peut être soumise à ce canal. Les interrogations peuvent toujours fonctionner correctement. Toutefois, des 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 de chaîne risquent d'échouer.

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.

Lors de la suppression d'OSN ou d'une organisation, assurez-vous que plus de 50 % des OSN continueront à fonctionner. Par exemple, si vous aviez deux organisations avec trois OSN chacune, si vous supprimiez une organisation, elle serait interprétée comme ne fonctionnant que pour 50 % des OSN. Ajoutez un OSN à l'organisation restante avant de supprimer l'organisation étrangère pour vous assurer que vous dépassez toujours 50 % des OSN qui fonctionnent.

Ne pas ajouter ou supprimer fréquemment des commandants

Chaque fois qu'un nouvel OSN est ajouté dans un réseau ou un canal, ou qu'un OSN existant est supprimé d'un canal, le cluster Raft OSN actuel devient brièvement instable. Pendant cette période, aucune transaction ne peut être traitée, et un message d'erreur similaire à ce qui suit peut indiquer un tel statut :
UNKNOWN: Stream removed
SERVICE UNAVAILABLE
BAD REQUEST

Cela peut durer quelques minutes. Si vous avez retiré le Raft leader OSN précédent du canal, cela peut durer jusqu'à 20 minutes.

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

Assurez-vous que le nouveau responsable de la commande démarre le plus rapidement possible

Lors de l'ajout d'un nouveau donneur d'ordre dans le réseau, généralement deux organisations seront impliquées : le fondateur et le propriétaire du nouveau donneur d'ordre. Les deux parties doivent suivre les instructions sous Se joindre au service de commande du fondateur au participant ou aux OSN évolués jusqu'à leur achèvement, sinon le fondateur ne pourra pas gérer le réseau.

Rejoignez le participant ou les OSN évolués au service de commande du fondateur

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

Pour ajouter ou supprimer plusieurs responsables de commande, ajoutez ou supprimez-en un à la fois et assurez-vous que le réseau est retourné au statut opérationnel avant d'effectuer la prochaine modification. Voir Qu'est-ce que le service de commande? pour plus de détails importants sur l'ajout, la suppression, le démarrage et l'arrêt des commandes Raft.

Exporter les paramètres OSN à partir du participant ou des processus de commande évolués

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

  1. Dans la console du participant (ou la console du fondateur pour les responsables des commandes ajustés), dans l'onglet Noeud, recherchez le noeud du responsable des commandes (ou le premier noeud du responsable des commandes s'il existe plusieurs noeuds). Sélectionnez le menu d'actions 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 (OSN) sélectionnés 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 exécutées sur des canaux qui utilisent cet OSN nécessitent également ce certificat TLS exporté.

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

    L'organisation du participant ou le nouveau responsable de la commande à l'échelle est ajouté à la section Organisation du responsable de la commande de la liste des canaux du système.

Exporter les paramètres de configuration du fondateur

Une fois que le participant ou les commanditaires mis à l'échelle ont été ajoutés au fondateur, vous devez exporter les paramètres du fondateur et les importer dans le participant ou le commanditaire mis à l'échelle.

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

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

  2. Dans la console du participant (ou la console du fondateur pour les responsables des commandes ajustés), dans l'onglet Noeud, recherchez le noeud du responsable des commandes (ou le premier noeud du responsable des commandes s'il existe plusieurs noeuds). Sélectionnez le menu d'actions pour ce noeud et sélectionnez Importer le bloc de configuration de réseau.

    Vous êtes invité à entrer le fichier envoyé par l'administrateur de l'instance fondatrice.

  3. Dans la console des participants, actualisez l'onglet Noeud. Le statut du noeud du responsable de la commande sera inactif. Dans le menu Action, sélectionnez Démarrer.

    Chaque noeud de tri qui est démarré sera ajouté au cluster Raft dans le fondateur.

Chaque fois qu'un nouvel OSN est ajouté en redimensionnant le programme de commande (comme décrit dans Ajuster votre instance), ces étapes doivent être répétées pour ajouter le nouvel OSN à la grappe Raft.

Note :

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 du 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 du service de commande pour un canal existant individuel, comme décrit dans Modifier les paramètres du service de commande pour un canal.
  • Si vous modifiez les paramètres du service de commande et que des applications s'exécutent sur le réseau, ces applications doivent être mises à jour manuellement pour utiliser les paramètres du service de commande révisés.
  • Ce n'est pas courant, mais dans certaines situations, vous pouvez exposer un service de commande différent à certains des participants au réseau. Dans ce cas, vous allez exporter le bloc de configuration réseau mis à jour et les participants requis vont importer les paramètres révisés. Voir Se joindre aux OSN du participant ou évolués au service de commande du fondateur.
Vous devez être un administrateur pour terminer cette tâche.
  1. Allez à 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 tri s'affiche.
  3. Mettez à jour les paramètres si nécessaire.
    Champ Description
    Temporisation de lot (ms) Spécifiez la durée en millisecondes pendant laquelle le système attendra avant de créer un lot. Entrez un nombre compris entre 1 et 3600000.
    Nombre maximal de messages Indiquez le nombre maximal de messages à inclure dans un lot. Entrez un nombre compris entre 1 et 4294967295.
    Octets de message absolus Spécifier le nombre maximal d'octets autorisés pour les messages avec numéro de série dans un lot.

    Ce nombre doit être supérieur à la valeur entrée dans le champ Octets de message privilégiés.

    Octets de message privilégiés Spécifier le nombre privilégié d'octets autorisés pour les messages avec numéro de série dans un lot. Un message d'une taille supérieure à cette taille entraîne un lot plus grand, mais la taille du lot sera égale ou inférieure au nombre d'octets que vous avez spécifié dans le champ Octets de message absolus.

    En général, vous réglez cette valeur à 1 Mo ou moins.

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

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

Voir les paramètres du service de commande

Vous pouvez voir les paramètres du 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 au participant, comme décrit sous Joindre le participant ou les OSN évolués au service de commande du fondateur. Si des applications s'exécutent sur le réseau, ces applications doivent être mises à jour manuellement pour utiliser les paramètres de service de commande révisés.
  1. Allez à la console du participant et sélectionnez l'onglet Réseau.
  2. Cliquez sur Paramètres de service de commande et cliquez sur Voir.
    La boîte de dialogue Ordering Settings s'affiche.