In questo articolo scoprirai di più su Performance Co-Pilot (PCP) e su come utilizzare questo strumento per monitorare sistemi e applicazioni per Red Hat Ansible Automation Platform.
Cos'è Performance Co-Pilot (PCP)?
PCP è un framework open source sviluppato da Red Hat, che monitora e analizza le prestazioni. Offre una suite di strumenti, librerie e servizi utili per monitorare, raccogliere e analizzare le metriche delle prestazioni di diversi sistemi, servizi e applicazioni. È progettato per la scalabilità e offre un monitoraggio completo e in tempo reale di singoli server così come di reti distribuite di macchine.
Funzioni principali di PCP
- Scalabilità: PCP può essere utilizzato per monitorare sia sistemi singoli che ambienti distribuiti.
- Raccolta di dati da più sorgenti: inclusi sistema operativo, database, interfacce di rete e applicazioni personalizzate.
- Estendibilità: puoi aggiungere in qualsiasi momento nuove metriche sviluppando agenti o estensioni personalizzati.
- Archiviazione e raccolta: PCP conserva i dati sulle prestazioni, affinché tu possa consultarli quando ti servono, e recupera i dati in tempo reale.
- Monitoraggio in tempo reale: le metriche riportate riflettono la situazione attuale, per consentirti di avere le prestazioni sempre sotto controllo.
- Interfacce grafiche e a riga di comando: strumenti grafici (come
pmchart
) e a riga di comando (comepminfo, pmval e pmlogsummary
) ti consentono di monitorare e analizzare i dati sulle prestazioni.
Componenti tipici
- Performance Metrics Collector Daemon (PMCD): daemon centrale che raccoglie le metriche dagli agenti.
- Performance Metrics Name Space (PMNS): uno spazio dei nomi gerarchico che organizza le metriche delle prestazioni.
- Performance Metrics Inference Engine (PMIE): uno strumento per attivare avvisi o azioni in base alle metriche in tempo reale.
- PMLogger: registra le metriche delle prestazioni per analizzarle in seguito.
- PMProxy: funge da protocollo proxy, consentendo a PCP di monitorare i client per collegare una o più istanze PMCD tramite PMProxy.
Scenari di utilizzo
- Analisi delle prestazioni del sistema: PCP monitora CPU, memoria, I/O del disco, utilizzo della rete e altre metriche di sistema.
- Monitoraggio delle applicazioni: PCP monitora applicazioni o servizi specifici per tenere sotto controllo il consumo delle risorse e le tendenze nelle prestazioni.
- Analisi dei dati storici: archivia i dati sulle prestazioni nel tempo per analizzare le tendenze in senso diacronico o eseguire una verifica diagnostica dopo guasti del sistema.
Perché usare PCP per monitorare Ansible Automation Platform?
Ecco alcuni motivi per cui PCP è utile per monitorare Ansible Automation Platform:
- Approfondimenti sulle prestazioni: fornisce dati metrici dettagliati sulle prestazioni di Ansible Automation Platform per identificare i colli di bottiglia e utilizzare le risorse al meglio.
- Rilevamento proattivo dei problemi: monitorando costantemente le prestazioni puoi rilevare potenziali problemi prima che diventino significativi e risolverli proattivamente.
- Gestione delle risorse: monitorando l'utilizzo delle risorse (CPU, memoria, I/O del disco) puoi pianificare in modo efficace la capacità ed evitare i conflitti che impedirebbero il corretto funzionamento dell'ambiente di automazione.
- Scalabilità: le soluzioni per l'automazione sono in costante crescita, monitorando la situazione puoi valutare quando e come distribuire l'infrastruttura Ansible Automation Platform e gestire carichi di lavoro più sostanziosi senza compromettere le prestazioni.
- Controllo e conformità: mantieni la conformità con le normative interne ed esterne, grazie a un chiaro percorso di audit delle attività di automazione e dell'utilizzo delle risorse.
- Integrazione con altri strumenti: puoi integrare PCP con altri sistemi di monitoraggio e avviso, per avere una visione completa dell'infrastruttura e migliorare la risposta agli incidenti.
- Esperienza utente: i team che si affidano ad Ansible Automation Platform per la gestione del deployment e della configurazione possono contare su attività di automazione efficienti e su un'esperienza utente complessivamente migliorata.
- Analisi dei dati storici: PCP conserva i dati storici sulle prestazioni, consentendoti di analizzare le tendenze nel tempo, una capacità essenziale per prendere decisioni informate su modifiche o perfezionamenti futuri all'infrastruttura.
In conclusione, se utilizzi PCP per monitorare Ansible Automation Platform puoi migliorare prestazioni, affidabilità ed efficienza, perché le iniziative a favore dell'automazione ti consentano di raggiungere i tuoi obiettivi aziendali.
Configurazione del monitoraggio di Ansible Automation Platform tramite PCP
Puoi configurare il monitoraggio di Ansible Automation Platform sia per le installazioni tradizionali che per quelle containerizzate su macchine virtuali (VM) al momento. Per attivarlo devi assegnare il valore booleanosetup_monitoring
a True
nel file di inventario di configurazione nella sezione [all:vars
]. Ad esempio:
[all:vars] setup_monitoring = True
In questo modo il programma di installazione eseguirà il ruolo di monitoraggio per configurare PCP nel cluster Ansible Automation Platform, installando e attivando i servizi necessari, come pcp, pmcd
e pmproxy
. Nelle distribuzioni tradizionali basate su RPM, PCP viene installato tramite DNF ed eseguito tramite systemd, mentre nei sistemi containerizzati viene eseguito in un container, insieme a tutti gli altri componenti di Ansible Automation Platform. Il programma di installazione configura anche Performance Metric Domain Agent (PMDA), che sono plug-in eseguiti come daemon per pmcd
, che monitorano componenti chiave come nginx, redis, postgres
e openmetrics
sugli host di Ansible Automation Platform.
Nelle installazioni tradizionali il nodo gateway è l'hub centrale per la raccolta delle metriche PCP provenienti da tutti i nodi del cluster Ansible Automation Platform, in modo che questi dati siano archiviati in modo efficace.
PCP utilizza la porta 44322 per esporre le metriche, quindi verifica che sia aperta per i gruppi di sicurezza, se servisse. In caso contrario, le metriche possono comunque essere consultate sull'host con strumenti della riga di comando PCP, ma sono disponibili solo localmente, non possono essere aggregate con strumenti esterni.
Al termine della configurazione puoi accedere tramite ssh a qualsiasi nodo gateway ed eseguire il comando seguente per consultare tutte le metriche raccolte da PCP.
Recupero delle metriche archiviate
Puoi recuperare le metriche da un archivio utilizzando gli strumenti dell'interfaccia della riga di comando di PCP; considera che nelle installazioni tradizionali in genere gli archivi possono trovarsi al percorso /var/log/pcp/pmlogger/
.
Ad esempio:
/var/log/pcp/pmlogger/controller.example.com/20241004.00.10
Nelle installazioni containerizzate invece si trovano in /home/ansible/aap/pcp_archives
.
Ad esempio:
/home/ansible/aap/pcp_archives/controller.example.com/20241004.00.10
Esempi
Per vedere un elenco di tutte le metriche abilitate quando è stato creato l'archivio, immetti il comando seguente:
# pminfo --archive <ARCHIVE_FILE_LOCATION>
Per vedere l'host e il periodo coperto da un archivio, immetti il comando seguente:
# pmdumplog -l <ARCHIVE_FILE_LOCATION>
Per vedere un elenco delle operazioni di scrittura su disco per ciascuna partizione nel periodo coperto dall'archivio usa il comando:
# pmval --archive <ARCHIVE_FILE_LOCATION> \ -f 1 disk.partitions.write
Per vedere un elenco delle operazioni di scrittura su disco per ciascuna partizione nel periodo coperto dall'archivio, con un intervallo di 2 secondi, nel periodo compreso tra le 14:00 e le 14:15, usa il comando:
# pmval --archive <ARCHIVE_FILE_LOCATION> \ -d -t 2sec \ -f 3 disk.partitions.write \ -S @14:00 -T @14:15
Per vedere un elenco dei valori medi di tutte le metriche delle prestazioni, inclusi l'ora e il valore minimo/massimo, nel periodo compreso tra le 14:00 e le 14:30 e formattare i valori come tabella, usa il comando:
# pmlogsummary <ARCHIVE_FILE_LOCATION> \ -HlfiImM \ -S @14:00 \ -T @14:30 \ disk.partitions.write \ mem.freemem
Per visualizzare le metriche di sistema archiviate in un archivio, a partire dalle 14:00, in modo interattivo, simile a quello usato dallo strumento
top
, usa il comando:# pcp --archive <ARCHIVE_FILE_LOCATION> \ -S @14:00 \ atop
Conclusioni
È essenziale monitorare Ansible Automation Platform per garantire l'affidabilità, le prestazioni e la protezione dei servizi che supporta. Ti aiuta a rilevare e risolvere in tempo reale problemi come tempi di risposta lenti, errori del server e vulnerabilità nella sicurezza, riducendo al minimo i tempi di fermo e le potenziali interruzioni. Monitorando continuamente metriche fondamentali, come traffico, utilizzo e consumo delle risorse, la piattaforma funziona al meglio.
Altre risorse
- Per informazioni dettagliate, consulta la documentazione su Ansible Automation Platform.
- Per scaricare e installare la versione più recente, consulta la guida all'installazione di Ansible Automation Platform.
- Vuoi leggere le note di rilascio di Ansible Automation Platform? Le trovi qui.
- Per ulteriori approfondimenti e informazioni, puoi leggere i nostri ebook.
product trial
Red Hat Ansible Automation Platform | Versione di prova del prodotto
Sull'autore
Ricerca per canale
Automazione
Novità sull'automazione IT di tecnologie, team e ambienti
Intelligenza artificiale
Aggiornamenti sulle piattaforme che consentono alle aziende di eseguire carichi di lavoro IA ovunque
Hybrid cloud open source
Scopri come affrontare il futuro in modo più agile grazie al cloud ibrido
Sicurezza
Le ultime novità sulle nostre soluzioni per ridurre i rischi nelle tecnologie e negli ambienti
Edge computing
Aggiornamenti sulle piattaforme che semplificano l'operatività edge
Infrastruttura
Le ultime novità sulla piattaforma Linux aziendale leader a livello mondiale
Applicazioni
Approfondimenti sulle nostre soluzioni alle sfide applicative più difficili
Virtualizzazione
Il futuro della virtualizzazione negli ambienti aziendali per i carichi di lavoro on premise o nel cloud