Não posso ter certeza sem ver os registros, etc., mas os endereços IP envolvidos e o erro sugerem algo como o seguinte:
- Você tinha um cluster shards mongodb configurado no EC2
- O cluster foi configurado usando endereços IP (em vez de nomes de host)
- O banco de dados de configuração (você está executando apenas um, portanto, espero que seja apenas teste e não prod) estava em um host que foi reinicializado, seu endereço IP foi alterado quando reinicializado
- Devido a essa alteração, você reiniciou seu
mongos
processo (s) e apontou-o para o novo endereço IP alterando a sequência de configuração no início - Você não reiniciou o restante dos processos do MongoDB
- Assim, as outras partes do cluster ainda esperam que o servidor de configuração esteja no endereço IP antigo e estão emitindo um erro devido à incompatibilidade
Supondo que eu esteja próximo na descrição acima, a raiz do problema é duas coisas básicas:
- Se você mover os servidores de configuração e alterar o nome do host (no endereço IP do seu caso), precisará seguir este procedimento . Em particular, observe a etapa 5: "Encerre todos os processos existentes do MongoDB"
- Não use endereços IP ao configurar um conjunto ou um cluster, use nomes de host, mesmo que eles estejam apenas em
/etc/hosts
em vez de DNS, eles fornecem um nível de abstração que é muito útil se você estiver lidando com um ambiente em que o endereço IP é transitório e você não pode controlar o IP e a instância que recebe quando é reinicializado.
Para corrigir isso, você precisará reiniciar os processos mongod
e mongos
, basicamente seguindo o procedimento vinculado em 1 acima. Depois que todas as partes do cluster concordarem sobre o endereço IP (ou nome do host) do servidor de configuração, esse problema deverá resolver sozinho.