automation-suite
2023.10
true
Guia de instalação do Automation Suite no Linux
Last updated 11 de nov de 2024

Pods de MongoDB em CrashLoopBackOff ou provisionamento de PVC pendente após exclusão

Os pods do MongoDB podem ficar presos em CrashLoopBackOff devido a um PVC corrompido. A causa mais provável para esse problema é um desligamento sem limpeza.

Ao enfrentar esse problema, os logs mostram o seguinte:

Common point must be at least stable timestamp
{"t":{"$date":"2022-05-18T09:37:55.053+00:00"},"s":"W",  "c":"STORAGE",  "id":22271,   "ctx":"initandlisten","msg":"Detected unclean shutdown - Lock file is not empty","attr":{"lockFile":"/data/mongod.lock"}}
    ['currentState.Running' = false]
    ['currentState.IsVCRedistCorrect' = true]
    ['desiredState.ProcessType' != mongos ('desiredState.ProcessType' = mongod)]Common point must be at least stable timestamp
{"t":{"$date":"2022-05-18T09:37:55.053+00:00"},"s":"W",  "c":"STORAGE",  "id":22271,   "ctx":"initandlisten","msg":"Detected unclean shutdown - Lock file is not empty","attr":{"lockFile":"/data/mongod.lock"}}
    ['currentState.Running' = false]
    ['currentState.IsVCRedistCorrect' = true]
    ['desiredState.ProcessType' != mongos ('desiredState.ProcessType' = mongod)]

Etapas de recuperação

  1. Exclua o pod com falha. Se esta solução não funcionar, continue nas próximas etapas.

    kubectl delete pod <pod-name> -n mongodbkubectl delete pod <pod-name> -n mongodb
  2. Obtenha o nome do PVC corrompido para os pods com falha.
    kubectl -n mongodb get pvckubectl -n mongodb get pvc
  3. Exclua o PVC do pod com falha.

    kubectl -n mongodb delete pvc <pvc-name>kubectl -n mongodb delete pvc <pvc-name>
    Observação: neste ponto, o PVC deve ser sincronizado automaticamente e o pod não deve ter mais problemas. Se o provisionamento automático não acontecer, você precisará executar a operação manualmente seguindo as etapas a seguir.
  4. Obtenha o PVC YAML para um nó íntegro.

    kubectl -n mongodb get pvc <pvc-name> -o yaml > pvc.yamlkubectl -n mongodb get pvc <pvc-name> -o yaml > pvc.yaml
  5. Edite o nome e remova uuids/pvc-ids do YAML.
  6. Remova o nome do volume e o UID e renomeie o PVC para o nome do PVC excluído.



  7. Aplique o PVC.

    kubectl -n mongodb apply pvc.yamlkubectl -n mongodb apply pvc.yaml
  8. O PVC deve ser provisionado e anexado ao PVC para o pod, e o pod não deve mais ter problemas. Se o pod não ressincronizar, exclua-o.
  • Etapas de recuperação

Esta página foi útil?

Obtenha a ajuda que você precisa
Aprendendo RPA - Cursos de automação
Fórum da comunidade da Uipath
Uipath Logo White
Confiança e segurança
© 2005-2024 UiPath. Todos os direitos reservados.