Red Hat Training
A Red Hat training course is available for RHEL 8
Capítulo 10. Monitoramento de contêineres
Este capítulo se concentra nos comandos úteis do Podman que permitem gerenciar um ambiente Podman, incluindo a determinação da saúde do recipiente, a exibição de informações do sistema e da cápsula, e o monitoramento de eventos Podman.
10.1. Realização de um exame de saúde em um recipiente
O healthcheck permite determinar a saúde ou a prontidão do processo que corre dentro do recipiente. Um "healthcheck" consiste em cinco componentes básicos:
- Comando
- Retries
- Intervalo
- Período de início
- Desconto de tempo
A descrição dos componentes do healthcheck é a seguinte.
- Comando
- Podman executa o comando dentro do recipiente alvo e aguarda o código de saída.
Os outros quatro componentes estão relacionados com a programação do exame de saúde e são opcionais.
- Retries
- Define o número de exames de saúde falhados consecutivos que precisam ocorrer antes que o recipiente seja marcado como "insalubre". Um exame de saúde bem sucedido restabelece o contador de tentativas.
- Intervalo
- Descreve o tempo entre a execução do comando do healthcheck. Observe que pequenos intervalos fazem com que seu sistema passe muito tempo executando os cheques de saúde. Os grandes intervalos causam lutas com os intervalos de captura de tempo.
- Período de início
- Descreve o tempo entre quando o recipiente começa e quando você quer ignorar as falhas do exame de saúde.
- Desconto de tempo
- Descreve o período de tempo que o exame de saúde deve ser concluído antes de ser considerado mal sucedido.
Os cheques de saúde são feitos dentro do contêiner. O exame de saúde só faz sentido se você souber o que é um estado de saúde do serviço e puder diferenciar entre um exame de saúde bem sucedido e mal sucedido.
Procedimento
Definir um exame de saúde:
$ sudo podman run -dt --name hc1 --health-cmd='curl http://localhost || exit 1' --health-interval=0 quay.io/libpod/alpine_nginx:latest D25ee6faaf6e5e12c09e734b1ac675385fe4d4e8b52504dd01a60e1b726e3edb
-
A opção
--health-cmd
define um comando de verificação de saúde para o recipiente. -
A opção
-health-interval=0
com valor 0 indica que você deseja executar o exame de saúde manualmente.
-
A opção
Executar o exame de saúde manualmente:
$ sudo podman healthcheck run hc1 Healthy
Opcionalmente, você pode verificar o status de saída do último comando:
$ echo $? 0
O valor "0" significa sucesso.
Recursos adicionais
-
Para mais informações sobre o comando
podman run
, digiteman podman-run
. - Para mais informações, veja o artigo Monitorando a vitalidade e disponibilidade de recipientes com Podman de Brent Baude.