Esta etapa confirma se o cosigner esta funcional.
Comandos de validacao
sudo systemctl restart nitro-enclaves-allocator.service
sudo systemctl start cosigner-enclave.service
sudo systemctl start cosigner-host.service
sudo systemctl status nitro-enclaves-allocator.service --no-pager -l
sudo systemctl status cosigner-enclave.service --no-pager -l
sudo systemctl status cosigner-host.service --no-pager -l
sudo journalctl -u cosigner-host.service -n 100 --no-pager
O que cada servico faz
nitro-enclaves-allocator.servicePrepara os recursos usados pelo enclave.cosigner-enclave.serviceInicia a parte isolada do cosigner.cosigner-host.serviceInicia a parte hospedeira que conversa com o restante do ambiente.
O que verificar
Depois de executar os comandos acima, verifique:
- os tres servicos aparecem como ativos;
- nenhum servico entra em falha logo apos iniciar;
- o log do
cosigner-host.servicenao mostra erros repetidos.
Como reconhecer um resultado saudavel
Considere a validacao positiva quando:
systemctl statusmostra os servicos como ativos;- nao ha mensagens de falha logo apos o start;
- o journal nao mostra erros recorrentes relacionados ao host do cosigner.
Exemplo do que procurar no status
Ao executar systemctl status, procure linhas parecidas com:
Active: active (running)
Se a saida mostrar termos como failed, inactive, dead ou reinicios repetidos, trate isso como problema.
Exemplo do que evitar nos logs
Ao executar journalctl, revise se aparecem mensagens recorrentes de erro, por exemplo:
error
failed
permission denied
unable to start
Uma ocorrencia isolada pode exigir investigacao, mas repeticao desses termos indica que a validacao nao deve ser considerada concluida.
Sinais de problema
Revise a instalacao se acontecer algum dos casos abaixo:
- algum servico aparece como parado, falho ou reiniciando;
- o
cosigner-enclave.servicenao sobe; - o
cosigner-host.serviceregistra erro repetido; - o
nitro-enclaves-allocator.servicenao inicia corretamente.
Se algum desses casos ocorrer, nao avance para producao.
Validacao em multiplos cosigners
Como a Hotwallets exige no minimo 2 cosigners, essa verificacao deve ser feita em cada instancia.
Para validar corretamente:
- execute os comandos em cada EC2 de cosigner;
- confirme que cada instancia tem os tres servicos ativos;
- trate falha em qualquer cosigner como bloqueio da etapa.
Ambiente suportado
Hoje essa validacao faz sentido apenas no ambiente suportado para cosigner:
- AWS;
- Nitro Enclaves.
Se o ambiente nao seguir esse modelo, o comportamento esperado deixa de ser garantido.
Quando pedir ajuda
Acione a equipe da Hotwallets quando:
- o instalador falhar antes de concluir;
- o painel nao abrir mesmo apos a subida do ambiente principal;
- algum servico do cosigner nao ficar ativo;
- algum cosigner obrigatorio nao estiver operacional;
- os logs do
cosigner-host.servicemostrarem erros recorrentes; - nao houver certeza sobre a necessidade de resetar, remover ou reinstalar algum componente.
Ao pedir ajuda, envie:
- o passo em que a falha aconteceu;
- o comando executado;
- a mensagem de erro exibida;
- os logs relevantes do terminal.
Remocao do cosigner
Se for necessario desfazer a instalacao do cosigner, use:
sudo /opt/cosigner/bin/uninstall-ec2.sh
sudo /opt/cosigner/bin/uninstall-ec2.sh purge
- use o primeiro comando para remover a instalacao;
- use o comando com
purgesomente quando quiser apagar tudo da instalacao.