Gestisci servizio di ordine
Questo argomento contiene informazioni sul modo in cui i fondatori e i partecipanti gestiscono il servizio di ordinazione.
Che cos'è il servizio di ordinazione?
Oracle Blockchain Platform supporta Raft come tipo di consenso.
Per ulteriori informazioni sull'implementazione di Hyperledger Fabric del protocollo Raft, vedere The Ordering Service - Raft.
Con il vecchio tipo di consenso Kafka, l'intera rete può avere al massimo due nodi di ordinazione e devono unirsi a tutti i canali. In alcuni casi, possono essere sovraccaricati e non possono essere ridimensionati. Con il tipo di consenso Raft, la rete può avere un numero arbitrario di nodi Orderer e ogni canale può definire il proprio set di nodi Orderer. Canali diversi possono utilizzare nodi del committente diversi e i nodi del committente non saranno più il collo di bottiglia.
Tuttavia, il tipo di consenso Raft può essere complicato da configurare correttamente. Ci sono regole su cosa può o non può essere fatto, e se queste regole non sono seguite il canale e anche la rete potrebbe non funzionare. Le linee guida riportate di seguito consentono di ridurre il numero di problemi riscontrati.
Mantieni attiva la maggior parte dei nodi del servizio di ordinazione (OSN)
- Se ci sono almeno il 50% di OSN che lavorano nella rete, la gestione della rete non sarà più funzionale. Non è possibile creare canali, non è possibile aggiungere nuovi nodi Orderer alla rete, non è possibile rimuovere alcun Orderer dalla rete e così via.
- Se ci sono almeno il 50% di OSN che lavorano nel canale dell'applicazione, nessuna transazione può essere inviata a questo canale dell'applicazione. Le query possono comunque funzionare correttamente, tuttavia le operazioni amministrative come l'aggiunta di una nuova organizzazione, la modifica della lista di controllo dell'accesso o la distribuzione dei codici concatenati non riusciranno.
Prestare attenzione quando si aggiunge un nuovo OSN alla rete o a un canale di applicazione. Assicurati che il proprietario sia affidabile e che l'OSN sia robusto.
Quando si rimuovono le OSN o un'organizzazione, assicurarsi che oltre il 50% delle OSN rimanga funzionante. Ad esempio, se si disponeva di due organizzazioni con tre OSN ciascuna, se si rimuoveva una organizzazione, durante la rimozione verrebbe interpretato come funzionale solo il 50% delle OSN. Aggiungere un OSN all'organizzazione rimanente prima di eliminare l'organizzazione estranea per garantire che si superi sempre il 50% delle OSN che funzionano.
Non aggiungere o rimuovere ordini frequentemente
UNKNOWN: Stream removed
SERVICE UNAVAILABLE
BAD REQUEST
Potrebbe durare alcuni minuti. Se hai rimosso il precedente Raft leader OSN dal canale, questo potrebbe durare fino a 20 minuti.
Assicurati di non aggiungere o rimuovere spesso gli ordini. Se è necessario aggiungere o rimuovere più ordini, eseguirne uno alla volta e assicurarsi che la rete sia tornata allo stato operativo prima di apportare la modifica successiva.
Assicurarsi che il nuovo ordinatore venga avviato il prima possibile
Quando si aggiunge un nuovo committente alla rete, di solito saranno coinvolte due organizzazioni: il fondatore e il proprietario del nuovo committente. Entrambe le parti devono seguire le istruzioni riportate in Iscriviti agli OSN partecipanti o scalati al servizio di ordinazione del fondatore fino al completamento o il fondatore non sarà in grado di gestire la rete.
Unisciti ai partecipanti o agli OSN a scalabilità orizzontale al servizio di ordinazione del fondatore
Quando si esegue il provisioning di un'istanza partecipante, questa viene creata con 3 ordini. Gli ordinatori non sono attivi finché non vengono collegati a una rete. Quando si esegue lo scale-out di un fondatore, anche i nuovi ordinatori sono inattivi fino a quando non vengono uniti a una rete.
Per aggiungere o rimuovere più ordinatori, aggiungerne o rimuoverne uno alla volta e assicurarsi che la rete sia tornata allo stato operativo prima di apportare la modifica successiva. Per ulteriori informazioni importanti sull'aggiunta, la rimozione, l'avvio e l'arresto degli ordini Raft, vedere Che cos'è il servizio di ordinazione?.
Esportare le impostazioni OSN dal partecipante o dagli ordini con scale out
Per unirsi al partecipante o scalare gli ordini in una rete, esportare le loro impostazioni e importarle nel fondatore.
-
Nella console del partecipante (o nella console del fondatore per gli ordini con scale-out), nella scheda Nodo trovare il nodo ordinante (o il primo nodo ordinante se esistono più nodi). Selezionare il menu Azione per questo nodo e Esporta impostazioni OSN.
Questo genera un file JSON con le impostazioni e salva il file. Il file contiene il certificato dell'organizzazione e le impostazioni del nodo del servizio di ordinazione (OSN) selezionate firmate dalla chiave privata dell'amministratore dell'organizzazione partecipante. Invia questo file all'amministratore dell'istanza del fondatore.
Anche le applicazioni eseguite sui canali che utilizzano questo OSN richiedono il certificato TLS esportato.
-
Nella console del fondatore, aprire la scheda Network. Fare clic su Aggiungi OSN. Viene visualizzata una finestra che richiede la posizione del file JSON fornito dal partecipante. Selezionare questa opzione per caricare il file e fare clic su Aggiungi.
L'organizzazione partecipante o il nuovo ordinante con scalabilità orizzontale viene aggiunto alla sezione dell'organizzazione ordinante dell'elenco canali di sistema.
Esporta le impostazioni di configurazione del fondatore
Dopo che il partecipante o gli ordini scalati sono stati aggiunti al fondatore, è necessario esportare le impostazioni del fondatore e importarle nel partecipante o nell'ordinatore scalato.
-
Nella console del fondatore, aprire la scheda Network. Fare clic su Esporta blocco configurazione di rete.
Il blocco di configurazione della rete contiene il blocco di configurazione più recente del canale di sistema. Questa operazione può essere salvata e inviata all'amministratore dei partecipanti.
-
Nella console del partecipante (o nella console del fondatore per gli ordini con scale-out), nella scheda Nodo trovare il nodo ordinante (o il primo nodo ordinante se esistono più nodi). Selezionare il menu Azione per questo nodo e selezionare Importa blocco configurazione rete.
Viene richiesto il file inviato dall'amministratore dell'istanza fondatore.
-
Nella console dei partecipanti aggiornare la scheda Nodo. Lo stato del nodo ordinante verrà elencato come giù. Dal menu Azione, selezionare Avvia.
Ogni nodo ordinante avviato verrà aggiunto al cluster Raft nel fondatore.
Nota
Impossibile aggiungere più OSN a una rete in un singolo batch. Assicurarsi che venga aggiunto un solo OSN alla volta.Modifica impostazioni servizio di ordinazione per la rete
È possibile aggiornare le impostazioni del servizio di ordinazione per l'istanza fondatore.
- Le impostazioni aggiornate vengono utilizzate quando si creano canali e non vengono applicate ai canali esistenti.
- È possibile aggiornare le impostazioni del servizio di ordinazione per un singolo canale esistente come descritto in Modifica impostazioni del servizio di ordinazione per un canale.
- Se si modificano le impostazioni del servizio di gestione ordini e sono presenti applicazioni in esecuzione sulla rete, è necessario aggiornare manualmente tali applicazioni per utilizzare le impostazioni del servizio di gestione ordini modificate.
- Non è comune, ma in alcune situazioni, potresti esporre un servizio di ordinazione diverso ad alcuni dei partecipanti alla rete. In questo caso, esporterai il blocco di configurazione di rete aggiornato e i partecipanti richiesti importeranno le impostazioni riviste. Vedere Join the Participant or Scaled-Out OSNs to the Founder's Ordering Service.
Visualizza impostazioni servizio ordinamento
È possibile visualizzare le impostazioni del servizio di ordinazione del fondatore importate nell'istanza di Oracle Blockchain Platform di un partecipante.