Skip to main content
No BYOC, você roda o Courier no seu próprio ambiente. Uma imagem roda em quatro papéis. Na Lerian Cloud, a Lerian opera o Courier: veja Na Lerian Cloud.

Antes de começar


Confirme que você tem estes itens:
  • Um banco de dados PostgreSQL para o Courier.
  • O Access Manager v3.12.0 ou posterior, e o endereço dele.
  • A sua chave de licença da Lerian e o ID da organização.
  • As configurações do canal SPB que a JD deu à sua instituição.
  • Para o trânsito Pix, a credencial da cabine SPI que a JD deu à sua instituição.

Os quatro papéis


Um binário carrega os quatro papéis. A variável COURIER_ROLES seleciona os papéis de um processo. Ela não tem padrão: um processo sem ela não inicia. Rode spb-consumer como exatamente uma réplica. Uma leitura da fila da JD remove a mensagem, então o consumidor é um escritor único. Um processo que combina spb-consumer com outro papel para no boot com o código JDC-0314.

Portas


Cada papel responde aos probes na porta HTTP: /health para liveness, /readyz para readiness e /version para o build.

Instalar


Para instalar ou atualizar o Courier, consulte o README do chart do JD Courier. Guarde LICENSE_KEY, POSTGRES_PASSWORD, JD_PASSWORD, JD_SPI_CLIENT_SECRET e IDP_M2M_CLIENT_SECRET no seu cofre de segredos. O Courier não aplica migrações de banco de dados no boot. Aplique-as antes de cada instalação e upgrade.

Variáveis de ambiente


As variáveis do Courier, com os padrões e os efeitos delas, estão em Variáveis de ambiente do JD Courier.

Access Manager


No modo single-tenant, o Courier publica no seu Access Manager a adesão dele a parceiros. Com IDP_DECLARATION_ENABLED=true, ele também publica as permissões dele. As duas publicações precisam de IDP_HOST, IDP_M2M_CLIENT_ID e IDP_M2M_CLIENT_SECRET. Até o seu Access Manager aceitar a publicação, o /readyz informa permission_declaration como degraded, com o motivo.

A JD como parceiro

A JD chama o seu endereço Pix como um parceiro do Access Manager da sua instalação.
  1. Crie um parceiro para a JD no seu Access Manager.
  2. Dê ao parceiro a permissão pix-ingress do JD Courier com a ação post.
  3. Crie a aplicação do parceiro e entregue à JD o client ID e o secret dela.
O Courier recusa com 401 todo chamador do endereço Pix que não é um parceiro do Access Manager, inclusive os motores.

Credenciais dos motores


O Courier lê no AWS Secrets Manager, em AWS_REGION, a credencial que usa em cada motor. Guarde-a lá antes de registrar o endereço do motor. A referência deve apontar para o secret desse motor. O Courier não entrega ao motor quando a referência aponta para qualquer outro caminho. O secret é um objeto JSON com os campos clientId e clientSecret. {versionId} é um UUID em minúsculas. {tenantId} é o identificador na resposta à ativação de um trilho. No modo single-tenant, ele é local. No modo multi-tenant, ele é o tenant do token validado.

Trânsito Pix


O trânsito Pix permite que os motores enviem as próprias chamadas Pix à JD pelo Courier. Para ligá-lo, defina PIX_TRANSIT_SERVER_ADDRESS no papel admin. O trânsito escuta nesse endereço, com as próprias configurações de TLS. O Courier chama a JD com a credencial da cabine SPI da sua instituição: JD_SPI_BASE_URL, JD_SPI_CLIENT_ID e JD_SPI_CLIENT_SECRET. Quando a JD envia validações de conta assíncronas à sua instituição, defina o trânsito Pix e a credencial da cabine SPI. Os motores enviam os resultados das validações pelo trânsito. O Courier envia as próprias recusas com a credencial da cabine SPI. Não coloque entre os motores e o trânsito um proxy que repete um 503. Para as respostas do trânsito, veja Conectar um motor.

Comportamento da licença


O Courier verifica a licença no boot. Não reinicie um pod enquanto a licença não for válida: o pod não inicia até você corrigir a licença. Enquanto o processo roda, o Courier verifica a licença de novo a cada 6 horas. Quando a licença fica revogada, o processo continua no ar:
  • A API do operador e a API dos motores respondem 503 JDC-0902.
  • O endereço Pix e a interface SOAP respondem 503.
  • O trânsito Pix responde 503 com X-Send-Outcome: not-sent.
  • O papel spb-consumer para de ler da JD.
O probe /readyz informa o estado da licença. Enquanto a licença está revogada, o Courier a verifica de novo depois de 1 minuto, e o intervalo dobra até 15 minutos. Na primeira resposta válida, o Courier volta a servir sem reinício.

Ativar os trilhos


O Courier não entrega aos motores nenhuma mensagem de um trilho até que um operador ative o trilho. Para ativar um trilho, use a operação Ativar um trilho da API do operador. Ela exige a permissão activation:write no recurso channels.
  • SPB. Ative o SPB na virada, quando nenhum motor lê diretamente da JD. Depois da ativação, o Courier lê as mensagens da fila da JD, e uma leitura remove a mensagem da JD.
  • Pix. Ative o Pix antes de pedir à JD que envie as chamadas Pix ao Courier.
A resposta informa o identificador que os caminhos de secret das credenciais dos motores usam. O histórico de ativação lista cada ativação e cada suspensão de um trilho, com o operador. Uma instalação detém cada trilho. Quando o trilho já está ativo para outro detentor, a ativação responde 409 JDC-0117.

Na Lerian Cloud


Na Lerian Cloud, a Lerian opera o Courier. Você não define as variáveis de ambiente dele.
  • A Lerian configura e roda o deploy.
  • O seu operador usa a API do operador: os motores, o mapa de titularidade, os modos de entrega, as mensagens retidas e a conciliação.
  • Os seus motores usam a API dos motores, a interface SOAP e o endereço Pix.