Neste artigo, você aprenderá sobre a ferramenta Performance Co-Pilot (PCP) e como podemos usá-la para implementar o monitoramento de sistemas e aplicações do Red Hat Ansible Automation Platform.
O que é o Performance Co-Pilot (PCP)
O PCP é um framework open source para monitoramento e análise de desempenho desenvolvido pela Red Hat. Ele fornece um conjunto de ferramentas, bibliotecas e serviços para monitorar, recuperar e analisar métricas de desempenho de diferentes sistemas, serviços e aplicações. O PCP foi desenvolvido para proporcionar escalabilidade, permitindo que ele monitore tudo, desde um único servidor até uma grande rede distribuída de máquinas em tempo real.
Principais funcionalidades do PCP:
- Escalabilidade: o PCP pode ser usado para monitorar sistemas individuais e ambientes distribuídos.
- Coleta de dados de várias fontes: coleta dados de várias fontes, incluindo o sistema operacional, bancos de dados, interfaces de rede e aplicações personalizadas.
- Extensibilidade: novas métricas podem ser adicionadas por meio do desenvolvimento de extensões ou agentes personalizados.
- Armazenamento e recuperação: o PCP pode armazenar dados de desempenho para análise histórica e é compatível com a recuperação de dados em tempo real.
- Monitoramento em tempo real: fornece métricas em tempo real, permitindo a análise de desempenho ao vivo.
- Interfaces gráficas e de linha de comando: o PCP inclui ferramentas gráficas (por exemplo,
pmchart
) e de linha de comando (por exemplo,pminfo, pmval e pmlogsummary
) para monitoramento e análise de dados de desempenho.
Componentes típicos:
- Performance Metrics Collector Daemon (PMCD): o daemon central que coleta métricas de agentes.
- Performance Metrics Name Space (PMNS): um namespace hierárquico que organiza as métricas de desempenho.
- Performance Metrics Inference Engine (PMIE): uma ferramenta para gerar alertas ou ações com base em limites de métricas em tempo real.
- PMLogger: para registrar métricas de desempenho para análise posterior.
- PMProxy: atua como um protocolo proxy, permitindo que o PCP monitore clientes para se conectarem a uma ou mais instâncias do PMCD por meio do PMProxy.
Casos de uso:
- Análise de desempenho do sistema: o PCP pode monitorar CPU, memória, E/S de disco, uso de rede e outras métricas do sistema.
- Monitoramento de aplicações: o PCP pode monitorar aplicações ou serviços específicos para entender o consumo de recursos e as tendências de desempenho.
- Análise de dados históricos: ele pode armazenar dados de desempenho ao longo do tempo para análise de tendências históricas ou análise forense após falhas no sistema.
Por que monitorar o Ansible Automation Platform usando o PCP?
O monitoramento do Ansible Automation Platform usando o PCP é importante por vários motivos:
- Insights de desempenho: o PCP fornece métricas e insights detalhados sobre o desempenho do seu Ansible Automation Platform. Isso ajuda a identificar obstáculos e otimizar o uso de recursos.
- Detecção proativa de problemas: ao monitorar continuamente as métricas de desempenho, você pode detectar problemas antes que eles escalonem significativamente, permitindo uma solução proativa.
- Gerenciamento de recursos: entender a utilização de recursos (CPU, memória, E/S de disco) ajuda no planejamento de capacidade eficaz e garante que seu ambiente de automação seja executado sem problemas e sem contenção de recursos.
- Escalabilidade: à medida que sua automação precisa crescer, o monitoramento ajuda a avaliar quando e como escalar sua infraestrutura do Ansible Automation Platform, garantindo que ela possa lidar com o aumento das cargas de trabalho sem prejudicar o desempenho.
- Conformidade e auditoria: ferramentas de monitoramento podem ajudar a manter a conformidade com regulamentações internas e externas, oferecendo uma trilha de auditoria clara das atividades de automação e uso de recursos.
- Integração com outras ferramentas: o PCP pode se integrar a outros sistemas de monitoramento e alerta, oferecendo uma visão abrangente da sua infraestrutura e permitindo uma melhor resposta a incidentes.
- Experiência do usuário: garantir que as tarefas de automação sejam executadas com eficiência melhora a experiência geral do usuário para as equipes que confiam no Ansible Automation Platform para gerenciamento de implantação e configuração.
- Análise de dados históricos: o PCP retém dados históricos de desempenho, permitindo que você analise tendências ao longo do tempo, o que é essencial para tomar decisões informadas sobre futuras alterações ou otimizações na infraestrutura.
Em resumo, usar o PCP para monitorar o Ansible Automation Platform melhora o desempenho, a confiabilidade e a eficiência, de modo que os esforços de automação contribuam positivamente para as metas da empresa.
Configure o monitoramento no Ansible Automation Platform usando o PCP
Atualmente, a configuração de monitoramento no Ansible Automation Platform é compatível com instalações tradicionais e em containers em máquinas virtuais (VMs). Para habilitar o monitoramento, você deve atribuir o booleano setup_monitoring
como Verdadeiro
no arquivo de inventário de configuração na seção [all:vars
]. Veja alguns exemplos:
[all:vars] setup_monitoring = True
Quando você executar o instalador, ele realizará a função de monitoramento para configurar o PCP no cluster do Ansible Automation Platform. Essa função instala e ativa os serviços necessários, incluindo pcp, pmcd
e pmproxy
. Na implantação tradicional baseada em RPM, o PCP é instalado via DNF e executado via systemd. Na instalação em containers, ele é executado em um container com todos os outros componentes do Ansible Automation Platform. Além disso, o instalador configura Performance Metric Domain Agents (PMDAs), plug-ins executados como daemons do pmcd
, para monitorar os principais componentes, como nginx, redis, postgres
e openmetrics
nos hosts do Ansible Automation Platform.
Além disso, na instalação tradicional, o instalador atribui o nó de gateway como o hub central para coletar métricas do PCP de todos os nós no cluster do Ansible Automation Platform para arquivar métricas com eficiência.
O PCP usa a porta 44322 para expor métricas. Certifique-se de que a porta 44322 está aberta em seus grupos de segurança, se aplicável. Caso contrário, as métricas ainda estarão disponíveis localmente no host para análise com as ferramentas de linha de comando do PCP, mas não para ferramentas externas agregarem.
Quando a configuração estiver concluída, você pode acessar via ssh em qualquer um dos nós de gateway e executar o comando a seguir para verificar todas as métricas que o PCP está coletando.
Recuperação de métricas arquivadas
Você pode usar as ferramentas da interface de linha de comando (CLI) do PCP para recuperar métricas de um arquivo. Na instalação tradicional, os arquivos podem estar localizados em /var/log/pcp/pmlogger/
Veja alguns exemplos:
/var/log/pcp/pmlogger/controller.example.com/20241004.00.10
Na instalação em containers, os arquivos podem estar localizados em /home/ansible/aap/pcp_archives
Veja alguns exemplos:
/home/ansible/aap/pcp_archives/controller.example.com/20241004.00.10
Exemplos
Para listar todas as métricas que foram ativadas quando o arquivo foi criado, insira o seguinte comando:
# pminfo --archive <ARCHIVE_FILE_LOCATION>
Para visualizar o host e o período coberto por um arquivo, insira o seguinte comando:
# pmdumplog -l <ARCHIVE_FILE_LOCATION>
Para listar as gravações em disco para cada partição no período coberto pelo arquivo:
# pmval --archive <ARCHIVE_FILE_LOCATION> \ -f 1 disk.partitions.write
Para listar as operações de gravação em disco por partição, com um intervalo de 2 segundos, no período entre 14:00 e 14:15:
# pmval --archive <ARCHIVE_FILE_LOCATION> \ -d -t 2sec \
-f 3 disk.partitions.write \
-S @14:00 -T @14:15Para listar os valores médios de todas as métricas de desempenho, incluindo o tempo e o valor do mínimo/máximo, no período entre 14:00 e 14:30, e formatar os valores como uma tabela:
# pmlogsummary <ARCHIVE_FILE_LOCATION> \
-HlfiImM \
-S @14:00 \
-T @14:30 \
disk.partitions.write \
mem.freememPara exibir as métricas do sistema armazenadas em um arquivo, a partir das 14:00, de maneira interativa semelhante à ferramenta
superior
:# pcp --archive <ARCHIVE_FILE_LOCATION> \
-S @14:00 \
atop
Conclusões
O monitoramento do Ansible Automation Platform é essencial para a confiabilidade, o desempenho e a segurança dos serviços aos quais ele dá suporte. Ele ajuda a detectar e resolver problemas como tempos de resposta lentos, erros de servidor e vulnerabilidades de segurança em tempo real, reduzindo o tempo de inatividade e possíveis interrupções. Ao acompanhar continuamente as principais métricas, como tráfego, uso e consumo de recursos, o monitoramento permite que a plataforma opere com eficiência ideal.
Próximos passos
- Para mais informações, consulte a documentação do Ansible Automation Platform
- Para fazer o download e instalar a versão mais recente, acesse o guia de instalação do Ansible Automation Platform
- Quer saber mais sobre as notas de lançamento de versão? Acesse Notas de lançamento de versão do Ansible Automation Platform
- Para mais informações e leitura, acesse nossos e-books
product trial
Red Hat Ansible Automation Platform | Teste de solução
Sobre o autor
Navegue por canal
Automação
Últimas novidades em automação de TI para empresas de tecnologia, equipes e ambientes
Inteligência artificial
Descubra as atualizações nas plataformas que proporcionam aos clientes executar suas cargas de trabalho de IA em qualquer ambiente
Nuvem híbrida aberta
Veja como construímos um futuro mais flexível com a nuvem híbrida
Segurança
Veja as últimas novidades sobre como reduzimos riscos em ambientes e tecnologias
Edge computing
Saiba quais são as atualizações nas plataformas que simplificam as operações na borda
Infraestrutura
Saiba o que há de mais recente na plataforma Linux empresarial líder mundial
Aplicações
Conheça nossas soluções desenvolvidas para ajudar você a superar os desafios mais complexos de aplicações
Virtualização
O futuro da virtualização empresarial para suas cargas de trabalho on-premise ou na nuvem