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

  1. 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.
  2. Executar o exame de saúde manualmente:

    $ sudo podman healthcheck run hc1
    Healthy
  3. Opcionalmente, você pode verificar o status de saída do último comando:

    $ echo $?
    0

    O valor "0" significa sucesso.

Recursos adicionais