Gestisci servizio di ordinazione
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 si può o non si può fare, e se queste regole non sono seguite il canale e anche la rete potrebbe non funzionare. Le seguenti linee guida dovrebbero ridurre i problemi riscontrati:
Mantieni attiva la maggior parte dei nodi del servizio di ordinazione (OSN)
- Se nella rete sono presenti almeno il 50% di OSN, la gestione della rete non sarà più funzionale. Non è possibile creare nuovi canali, non è possibile aggiungere nuovi nodi Orderer nella rete, non è possibile rimuovere alcun Orderer dalla rete e così via.
- Se nel canale dell'applicazione sono presenti almeno il 50% di OSN, non è possibile inviare alcuna transazione a questo canale dell'applicazione. Le query potrebbero comunque funzionare correttamente, tuttavia le operazioni amministrative come l'aggiunta di una nuova organizzazione, la modifica della lista di controllo dell'accesso o la creazione di istanze 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 OSN o un'organizzazione, assicurarsi che oltre il 50% degli OSN rimanga funzionante. Ad esempio, se si disponeva di 2 organizzazioni con 3 OSN ciascuna, se si rimuoveva un'organizzazione, durante la rimozione verrebbe interpretato come solo il 50% delle OSN funzionanti. Aggiungere un OSN all'organizzazione rimanente prima di eliminare l'organizzazione estranea per assicurarsi di superare sempre il 50% delle OSN funzionanti.
Non aggiungere o rimuovere ordini frequentemente
UNKNOWN: Stream removed
SERVICE UNAVAILABLE
BAD REQUEST
Questo può durare alcuni minuti. Se hai rimosso il precedente leader di Raft OSN dal canale, questo può durare fino a 20 minuti.
Assicurati di non aggiungere o rimuovere ordini frequentemente. Se è necessario aggiungere o rimuovere più ordini, eseguirne uno alla volta per assicurarsi che la rete sia tornata allo stato operativo prima di apportare la modifica successiva.
Assicurati che il nuovo ordinatore sia avviato il prima possibile
Quando si aggiunge un nuovo ordinatore in rete, di solito saranno coinvolte due organizzazioni: il fondatore e il proprietario del nuovo ordinatore. Entrambe le parti devono seguire le istruzioni contenute in Unisciti al partecipante o agli OSN a scalabilità orizzontale 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, viene creata con 3 ordini. Gli ordini sono inattivi fino a quando non vengono uniti a una rete. Quando si esegue lo scale-out di un fondatore, i nuovi ordini sono anche inattivi fino a quando non vengono uniti a una rete.
Se è necessario aggiungere o rimuovere più ordini, eseguirne uno alla volta per assicurarsi che la rete sia tornata allo stato operativo prima di apportare la modifica successiva. Per ulteriori dettagli 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 entrare a far parte del partecipante o degli ordini scale-out in una rete, è necessario 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 Azioni per questo nodo e selezionare Esporta impostazioni OSN.
Questo genererà un file JSON con le impostazioni e salverà il file. Il file contiene il certificato dell'organizzazione e le impostazioni del nodo del servizio Orderer selezionato (OSN) firmate dalla chiave privata dell'amministratore dell'organizzazione partecipante. Questo file deve essere inviato all'amministratore dell'istanza fondatore.
Le applicazioni in esecuzione sui canali che utilizzano questa OSN richiedono anche questo certificato TLS esportato. Vedere Before You Develop an Application.
-
Nella console del fondatore, aprire la scheda Network. Fare clic su Aggiungi OSN. Viene visualizzata una finestra in cui viene richiesto di specificare la posizione del file JSON fornito dal partecipante. Selezionare per caricare il file e fare clic su Aggiungi.
L'organizzazione partecipante o il nuovo ordinatore scalato verrà aggiunto alla sezione dell'organizzazione ordinatore dell'elenco canali di sistema.
Esporta le impostazioni di configurazione del fondatore
Una volta che il partecipante o gli ordini scale-out sono stati aggiunti al fondatore, è necessario esportare le impostazioni del fondatore e importarle nel partecipante o nell'ordinatore scale-out.
-
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.
Verrà richiesto il file inviato dall'amministratore dell'istanza fondatore.
-
Nella console dei partecipanti, aggiornare la scheda Nodo. Lo stato del nodo del committente deve essere elencato come "giù". Dal menu Azione selezionare Start.
Ogni nodo ordinante avviato verrà aggiunto al cluster Raft nel fondatore.
Nota
Impossibile aggiungere più OSN in una rete in un singolo batch. Assicurarsi che venga aggiunto solo 1 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 nuovi canali e non vengono applicate ai canali esistenti.
- Separatamente, è possibile aggiornare le impostazioni del servizio di ordinazione per singoli canali esistenti come descritto in Modifica impostazioni del servizio di ordinazione per un canale.
- Se si modificano le impostazioni del servizio di ordinazione e sono presenti applicazioni in esecuzione sulla rete, è necessario aggiornare manualmente tali applicazioni per utilizzare le impostazioni modificate del servizio di ordinazione.
- Non è comune, ma in alcune situazioni, potresti esporre un servizio di ordinazione diverso ad alcuni dei partecipanti alla rete. In questo caso, si esporta il blocco di configurazione di rete aggiornato e i partecipanti richiesti importeranno le impostazioni riviste. Vedere Partecipa al servizio di ordinazione del fondatore o alle OSN a scalabilità orizzontale.
Visualizza impostazioni servizio ordinamento
È possibile visualizzare le impostazioni del servizio di ordinazione del fondatore importate nell'istanza di Oracle Blockchain Platform di un partecipante.