Como posso saber quando / se / por que um contêiner em um cluster do kubernetes é reiniciado?

13

Eu tenho um cluster de kubernetes de nó único no mecanismo de contêiner do Google para brincar com ele.

Duas vezes, um pequeno site pessoal que hospedei ficou offline por alguns minutos. Quando vejo os logs do contêiner, vejo a sequência de inicialização normal concluída recentemente, então presumo que um contêiner tenha morrido (ou foi eliminado?) E reiniciado.

Como posso descobrir como e & por que isso acontece?

Existe uma maneira de obter um alerta sempre que um contêiner é iniciado / interrompido inesperadamente?

    
por Marc Hughes 06.10.2015 / 17:43

3 respostas

18

Você pode ver os últimos registros de reinicialização de um contêiner usando:

kubectl logs podname -c containername --previous

Como descrito por Sreekanth, os pods get kubectl devem mostrar o número de reinicializações, mas você também pode executar

kubectl describe pod podname

E ele mostrará os eventos enviados pelo kubelet ao apiserver sobre os eventos do ciclo de vida do pod.

Você também pode escrever uma mensagem final para / dev / termination-log, e isso aparecerá como descrito em os documentos .

    
por 11.11.2015 / 20:42
5

O kubectl get pods listará qualquer reinicialização do container e o comando describe pode ajudá-lo a listar quaisquer eventos associados ao pod.

As pontas de prova de prontidão e prontidão podem ser configuradas para melhor manuseio link

Ganchos adicionais podem ser configurados para serem consumidos no contêiner em pontos específicos no ciclo de vida do contêiner link

    
por 22.10.2015 / 08:35
1

Além das respostas anteriores, outro comando que me ajudou a encontrar um erro é:

kubectl get event [--namespace=my-namespace]

Relaciona eventos de pods, jobs e nós também

    
por 30.04.2018 / 12:29