Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
CloudWatch Soluzione Amazon: Prometheus raccolta di metriche su Amazon ECS
Questa soluzione ti aiuta a raccogliere metriche Prometheus compatibili dalle tue attività Amazon ECS senza eseguire o scalare la tua infrastruttura di raccolta. Le tue attività espongono le metriche tramite Prometheus gli esportatori e un raccoglitore Prometheus CloudWatch gestito da Amazon scopre le attività nel tuo VPC tramite DNS-based Service Discovery, ne analizza gli endpoint e fornisce le metriche a. /metrics CloudWatch Poiché le attività di Amazon ECS sono temporanee e i relativi indirizzi IP cambiano, questa soluzione utilizza il rilevamento del AWS servizio Cloud Map in modo che il raccoglitore analizzi sempre la serie di attività corrente. Per informazioni generali su tutte CloudWatch le soluzioni di osservabilità, consulta. CloudWatch soluzioni di osservabilità Per ulteriori informazioni sui raccoglitori gestiti, vedere. Collezionisti CloudWatch Prometheus gestiti da Amazon
Argomenti
Requisiti
Questa soluzione è rilevante per le seguenti condizioni:
-
Elaborazione: attività Amazon ECS (su Amazon EC2 o AWS Fargate) che espongono metriche compatibili. Prometheus
-
Servizi Amazon ECS registrati con Cloud Map per l'individuazione dei servizi. AWS DNS-based
-
Amazon VPC con DNS abilitato e almeno due sottoreti in diverse zone di disponibilità per il raccoglitore.
-
Un gruppo di sicurezza che consente al raccoglitore di raggiungere la porta delle metriche relative alle tue attività. Se le tue attività e il raccoglitore condividono un gruppo di sicurezza, aggiungi una regola di ingresso autoreferenziale per la porta delle metriche.
Attiva Prometheus esportatrici
Un Prometheus esportatore è un processo che espone le metriche in formato di Prometheus esposizione su un endpoint HTTP. /metrics In Amazon ECS, in genere esegui un esportatore come contenitore secondario con la stessa definizione di attività dell'applicazione o strumenti l'applicazione per esporre direttamente le metriche. Di solito vengono utilizzati i seguenti esportatori:
-
Node Exporter: metriche di Host-level infrastruttura per le attività sul tipo di avvio di Amazon EC2 (porta predefinita 9100). Per ulteriori informazioni, consulta il repository Node Exporter su.
GitHub -
JMX Exporter: metriche delle applicazioni JVM e Java per i carichi di lavoro Java. Per ulteriori informazioni, consulta il repository JMX Exporter su. https://github.com/prometheus/jmx_exporter
GitHub -
NGINX Prometheus Exporter: server web NGINX e metriche del proxy inverso. Per ulteriori informazioni, consulta il repository NGINX Exporter su. Prometheus
GitHub -
DCGM Exporter: metriche GPU NVIDIA per i carichi di lavoro della GPU (porta predefinita 9400). Per ulteriori informazioni, consulta il repository DCGM Exporter su. https://github.com/NVIDIA/dcgm-exporter
GitHub -
HAProxy Exporter — Metriche del load balancer HAProxy. Per ulteriori informazioni, consulta il repository HAProxy Exporter su. https://github.com/prometheus/haproxy_exporter
GitHub -
Apache Exporter: metriche del server HTTP Apache. Per ulteriori informazioni, consultate il repository Apache Exporter su.
GitHub
Aggiungete l'esportatore alla definizione dell'attività ed esponete la relativa porta delle metriche seguendo la documentazione ufficiale dell'esportatore. Per un catalogo completo degli esportatori disponibili, consulta Esportatori e integrazioni nella documentazione.
Fase 1: Configurare i gruppi di sicurezza
Verifica che il gruppo di sicurezza per le tue attività Amazon ECS consenta il traffico in entrata dal raccoglitore sulla porta delle metriche. Quando le tue attività e il raccoglitore condividono un gruppo di sicurezza, aggiungi una regola di ingresso autoreferenziale in modo che le risorse dello stesso gruppo di sicurezza possano comunicare. Il comando seguente consente il traffico in entrata sulla porta 80 proveniente dallo stesso gruppo di sicurezza:
aws ec2 authorize-security-group-ingress \ --group-idsg-security-group-id\ --ip-permissions IpProtocol=tcp,FromPort=80,ToPort=80,UserIdGroupPairs='[{GroupId=sg-security-group-id}]'
Passaggio 2: imposta la configurazione dello scrape
Per le attività di Amazon ECS che registri con AWS Cloud Map, utilizza DNS-based service discovery (dns_sd_configs) per trovare e analizzare automaticamente le attività all'inizio e alla fine. La dns_sd_configs sezione indica al raccoglitore di interrogare il nome DNS di AWS Cloud Map e di raccogliere tutti gli indirizzi IP restituiti. Quando Amazon ECS sostituisce un'attività, il raccoglitore rileva la modifica alla successiva richiesta DNS. La relabel_configs sezione aggiunge etichette coerenti alle tue metriche in modo da poter interrogare e filtrare i servizi. Per il set completo di opzioni di configurazione supportate, consultaConfigurazione dello scraper.
global: scrape_interval: 30s scrape_timeout: 10s scrape_configs: - job_name: 'ecs-payforadoption' dns_sd_configs: - names: ['payforadoption-go.Workshop-space'] type: A port: 80 metrics_path: '/metrics' relabel_configs: - target_label: service_name replacement: 'payforadoption-go' - target_label: cloudmap_namespace replacement: 'Workshop-space' - target_label: environment replacement: 'production' - target_label: compute_platform replacement: 'ecs-fargate'
Fase 3: Configurare il raschietto
Crea un raccoglitore VPC-connected gestito che analizzi le tue attività Amazon ECS e fornisca metriche al tuo set di dati: CloudWatch
Puoi utilizzarlo GetDefaultScraperConfiguration per recuperare una configurazione generica dello scraper o fornirne una tua.
Convalida la raccolta delle metriche
Dopo che il raccoglitore ha iniziato a fornire le metriche, esegui una query ad hoc CloudWatch utilizzando Query Studio per confermare l'arrivo delle metriche. Ad esempio, la seguente query restituisce la media delle richieste al secondo all'attività Amazon ECS negli ultimi cinque minuti:
rate(payforadoption_requests_total[5m])
Crea una dashboard personalizzata
Dopo che il raccoglitore ha iniziato a fornire le tue metriche Amazon ECS a CloudWatch, puoi creare una CloudWatch dashboard personalizzata per visualizzarle. Con i dashboard personalizzati, puoi combinare le metriche dei tuoi Prometheus esportatori in widget, aggiungere PromQL-based query e organizzare i widget per soddisfare le tue esigenze di monitoraggio. Per ulteriori informazioni, consulta Utilizzo delle dashboard. CloudWatch
Costi
PrometheusI collezionisti addebitano tariffe orarie e si applicano prezzi CloudWatch OpenTelemetry metrici di importazione. Per ulteriori informazioni sui CloudWatch prezzi, consulta Amazon Pricing. CloudWatch