[infra] Resolver falhas de conexão com k8s
fernandascovino opened this issue · 2 comments
fernandascovino commented
Descreva o problema
Pipelines que não iniciam por não conseguir estabelecer conexão com o pod (erro abaixo)
HTTPSConnectionPool(host='10.188.0.1', port=443): Max retries exceeded with url: /apis/batch/v1/namespaces/prefect/jobs (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f591fa53710>: Failed to establish a new connection: [Errno 111] Connection refused'))
Mesmo escalonando, ainda observamos falhas (nesses casos a run
não é renomeada pois só alteramos uma vez iniciada a pipeline). Porém, não parece estar relacionado a nenhuma instabilidade do cluster (ver link de alertas no GCP)
Comportamento esperado/desejado
- Entender melhor a instabilidade do cluster -> hipótese: necessário adicionar
wait_for_flow_run
- Adicionar minuto na tabela de
logs
tardiamente como um erro genérico (na recaptura) - Receber alertas dessas falhas (consolidado no Discord na hora da recaptura)
- Recapturar dados na materialização
- Adicionar na
registros_logs
a descrição do erro (API Prefect?)
Links uteis
fernandascovino commented
Outros erros relacionados ao pod:
prefect.exceptions.ClientError: [{'message': 'State update failed for task run ID 32f6ef35-850d-48c2-8758-390027bdc293: provided a running state but associated flow run 6dc58b5d-cd8c-44aa-9401-6cb6db9a6028 is not in a running state.', 'locations': [{'line': 2, 'column': 5}], 'path': ['set_task_run_states'], 'extensions': {'code': 'INTERNAL_SERVER_ERROR', 'exception': {'message': 'State update failed for task run ID 32f6ef35-850d-48c2-8758-390027bdc293: provided a running state but associated flow run 6dc58b5d-cd8c-44aa-9401-6cb6db9a6028 is not in a running state.'}}}]
- Erro de memória - Message: The node was low on resource: memory.
- Comportamento: inicia a
run
mas não chega a rodar e renomear a mesma
- Comportamento: inicia a
urllib3.exceptions.ProtocolError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))
fernandascovino commented
Possível solução do @gmartinsoc : https://stackoverflow.com/questions/55742540/kubernetes-python-client-connection-issue
@gabriel-milan pode ser que isso ocorra para vocês também na conexão do Python com k8s