Gerenciar Serviço de Pedidos

Este tópico contém informações sobre como os fundadores e participantes gerenciam o serviço de solicitação.

Além do conteúdo abordado neste tópico, várias tarefas específicas do canal para os nós do ordenador podem ser executadas na página Canais da console. Consulte:

O que é o Serviço de Pedidos?

O Oracle Blockchain Platform suporta Raft como o tipo de consenso.

Para obter mais informações sobre a implementação do Hyperledger Fabric do protocolo Raft, consulte: O Serviço de Pedidos - Raft.

Com o tipo de consenso Kafka mais antigo, toda a rede pode ter no máximo dois nós de ordenação e eles têm que se juntar a todos os canais. Em alguns casos, eles podem estar sobrecarregados e não podem ser ampliados. Com o tipo de consenso Raft, a rede pode ter um número arbitrário de nós do ordenador, e cada canal pode definir seu próprio conjunto de nós do ordenador. Canais diferentes podem usar nós de ordenador diferentes, e nós de ordenador não serão mais o gargalo.

No entanto, o tipo de consenso Raft pode ser complicado de configurar corretamente. Existem regras sobre o que pode ou não ser feito, e se essas regras não forem seguidas pelo canal e até mesmo a rede pode não funcionar. As seguintes diretrizes podem reduzir o número de problemas encontrados:

Mantenha a maioria dos nós de serviço de pedido (OSN) vivos

O algoritmo de consenso Raft requer que a maioria dos nós de serviço de ordenação (OSNs) esteja funcionando; caso contrário, nenhum consenso pode ser feito. Maioria significa mais de 50%. Por exemplo, para cinco OSNs, deve haver pelo menos três OSNs trabalhando; para seis OSNs, deve haver pelo menos quatro OSNs trabalhando.
  • Se houver 50% ou menos OSNs trabalhando na rede, o gerenciamento de rede não será mais funcional. Nenhum canal pode ser criado, nenhum nó novo do ordenador pode ser adicionado à rede, nenhum ordenador pode ser removido da rede, e assim por diante.
  • Se houver 50% ou menos OSNs trabalhando no canal de aplicativo, nenhuma transação poderá ser enviada para esse canal de aplicativo. As consultas ainda podem funcionar corretamente, no entanto, operações administrativas como adicionar uma nova organização, alterar a lista de controle de acesso ou implantar chaincodes falharão.

Tenha cuidado ao adicionar um novo OSN à rede ou a um canal de aplicativo. Certifique-se de que o proprietário é confiável e o OSN é robusto.

Ao remover OSNs ou uma organização, certifique-se de que mais de 50% dos OSNs permanecerão funcionando. Por exemplo, se você tivesse duas organizações com três OSNs cada, se você removeu uma organização, durante a remoção ela seria interpretada como apenas 50% dos OSNs sendo funcionais. Adicione um OSN à organização restante antes de excluir a organização externa para garantir que você sempre exceda 50% dos OSNs em funcionamento.

Não adicionar ou remover solicitantes com frequência

Toda vez que um novo OSN é adicionado a uma rede ou canal, ou um OSN existente é removido de um canal, o cluster OSN Raft atual se tornará instável brevemente. Durante este período, nenhuma transação pode ser tratada, e uma mensagem de erro semelhante à seguinte pode indicar tal status:
UNKNOWN: Stream removed
SERVICE UNAVAILABLE
BAD REQUEST

Isso pode durar alguns minutos. Se você tiver removido o OSN líder do Raft anterior do canal, isso pode durar até 20 minutos.

Certifique-se de que você não está adicionando ou removendo pedidos com frequência. Se vários solicitantes tiverem que ser adicionados ou removidos, execute um de cada vez e verifique se a rede retornou ao status operacional antes de fazer a próxima alteração.

Certifique-se de que o novo solicitante seja iniciado o mais rápido possível

Ao adicionar um novo solicitante à rede, geralmente duas organizações estarão envolvidas: o fundador e o proprietário do novo solicitante. Ambas as partes devem seguir as instruções em Junte-se ao Participante ou OSNs Escalonados para o Serviço de Pedidos do Fundador até a conclusão ou o fundador não poderá gerenciar a rede.

Junte-se aos OSNs Participantes ou Escalonados ao Serviço de Pedidos do Fundador

Quando você provisiona uma instância de participante, ela é criada com 3 solicitantes. Os solicitantes ficam inativos até serem conectados a uma rede. Quando você amplia um fundador, os novos solicitantes também ficam inativos até que sejam conectados a uma rede.

Para adicionar ou remover vários solicitantes, adicione ou remova um de cada vez e verifique se a rede retornou ao status operacional antes de fazer a próxima alteração. Consulte O que é o Serviço de Pedidos? para obter mais detalhes importantes sobre como adicionar, remover, iniciar e interromper solicitantes Raft.

Exportar as Definições de OSN dos Solicitantes Participantes ou Escalados

Para se juntar ao participante ou fazer pedidos escalonados para uma rede, exporte suas configurações e importe-as para o fundador.

  1. Na console do participante (ou na console do fundador para ordenadores escalonados), na guia , localize o nó do ordenador (ou o nó do primeiro ordenador, se houver vários nós). Selecione o menu Ação deste nó e selecione Exportar Definições de OSN.

    Isso gera um arquivo JSON com as definições e salva o arquivo. O arquivo contém o certificado da organização e as definições selecionadas do nó de serviço do solicitante (OSN) assinadas pela chave privada do administrador da organização participante. Envie este arquivo para o administrador da instância do fundador.

    Aplicativos executados em canais que usam esse OSN também exigem esse certificado TLS exportado.

  2. No console do fundador, abra a guia Rede. Clique em Adicionar OSN. Uma janela é aberta solicitando a localização do arquivo JSON que foi fornecido pelo participante. Selecione para fazer upload do arquivo e clique em Adicionar.

    A organização participante ou o solicitante recém-dimensionado é adicionado à seção de organização do solicitante da lista de canais do sistema.

Exportar as Definições de Configuração do Fundador

Depois que o participante ou os solicitantes escalonados forem adicionados ao fundador, você deverá exportar as configurações do fundador e importá-las para o participante ou para o solicitante escalonado.

  1. No console do fundador, abra a guia Rede. Clique em Exportar Bloco de Configuração de Rede.

    O bloco de configuração de rede contém o bloco de configuração de canal do sistema mais recente. Isso pode ser salvo e enviado ao administrador do participante.

  2. Na console do participante (ou na console do fundador para ordenadores escalonados), na guia , localize o nó do ordenador (ou o nó do primeiro ordenador, se houver vários nós). Selecione o menu Ação para este nó e selecione Importar Bloco de Configuração de Rede.

    Você será solicitado a informar o arquivo que foi enviado pelo administrador da instância do fundador.

  3. Na console do participante, atualize a guia . O status do nó do ordenador será listado como inativo. No menu Ação, selecione Iniciar.

    Cada nó do ordenador iniciado será adicionado ao cluster Raft no fundador.

Cada vez que um novo OSN é adicionado por meio do dimensionamento do ordenador (conforme descrito em Dimensionar Sua Instância), essas etapas devem ser repetidas para adicionar o novo OSN ao cluster Raft.

Observação:

Não é possível adicionar vários OSNs a uma rede em um único lote. Certifique-se de que somente um OSN seja adicionado por vez.

Editar Definições de Serviço de Pedido para a Rede

Você pode atualizar as definições do serviço de solicitação para a instância do fundador.

  • As configurações atualizadas são usadas quando você cria canais e não são aplicadas a canais existentes.
  • Você pode atualizar as definições do serviço de solicitação para canais existentes individuais, conforme descrito em Editar Definições do Serviço de Solicitação para um Canal.
  • Se você alterar as configurações do serviço de solicitação e houver aplicativos em execução na rede, esses aplicativos deverão ser atualizados manualmente para usar as configurações revisadas do serviço de solicitação.
  • Não é comum, mas em algumas situações, você pode expor um serviço de pedidos diferente a alguns dos participantes da rede. Nesse caso, você exportará o bloco de configuração de rede atualizado e os participantes necessários importarão as configurações revisadas. Consulte Participar do Participante ou OSNs Escalonados para o Serviço de Pedidos do Fundador.
Você deve ser um administrador para concluir esta tarefa.
  1. Vá para o console do fundador e clique na guia Rede.
  2. Clique no botão Solicitando Definições de Serviço.
    A caixa de diálogo Configurações do Serviço de Solicitação é exibida.
  3. Atualize as definições, conforme necessário.
    Campo Descrição
    Timeout do Lote (ms) Especifique o tempo em milissegundos que o sistema aguardará antes de criar um batch. Informe um número entre 1 e 3600000.
    Contagem Máxima de Mensagens Especifique o número máximo de mensagens a serem incluídas em um lote. Informe um número entre 1 e 4294967295.
    Bytes de Mensagem Absoluta Especifique o número máximo de bytes permitido para as mensagens serializadas em um lote.

    Esse número deve ser maior que o valor inserido no campo Bytes de mensagem preferenciais.

    Bytes de Mensagem Preferenciais Especifique o número preferencial de bytes permitido para as mensagens serializadas em um lote. Uma mensagem maior que esse tamanho resulta em um batch maior, mas o tamanho do batch será igual ou menor que o número de bytes especificado no campo Bytes de Mensagem Absoluta.

    Normalmente, você define esse valor como 1 MB ou menos.

    O valor inserido neste campo deve ser menor que o valor inserido no campo Bytes da mensagem absoluta.

    Tamanho do Intervalo do Instantâneo Define o número de MB pelo qual um instantâneo é obtido.
  4. Clique em Atualizar.
    As configurações atualizadas são salvas.

Exibir Configurações do Serviço de Pedidos

Você pode exibir as definições de serviço de solicitação do fundador que foram importadas para a instância do Oracle Blockchain Platform de um participante.

Se o fundador alterar as configurações do serviço de solicitação, as novas configurações deverão ser transferidas para o participante, conforme descrito em Participar do Participante ou OSNs Escalonados para o Serviço de Solicitação do Fundador. Se houver aplicativos em execução na rede, esses aplicativos deverão ser atualizados manualmente para usar as configurações de serviço de prescrição revisadas.
  1. Vá até a console do participante e selecione a guia Rede.
  2. Clique em Solicitando Definições de Serviço e clique em Exibir.
    A caixa de diálogo Configurações de prescrição é exibida.