Google Cloud Managed Service per Prometheus è la soluzione multi-cloud e cross-project completamente gestita di Google Cloud per le metriche di Prometheus. Ti consente di monitorare e creare avvisi sui tuoi carichi di lavoro a livello globale utilizzando Prometheus, senza dover gestire e utilizzare manualmente Prometheus su larga scala.
Managed Service per Prometheus raccoglie metriche dagli esportatori Prometheus e consente di eseguire query sui dati a livello globale utilizzando PromQL, il che significa che utilizzando eventuali dashboard di Grafana esistenti Avvisi e flussi di lavoro basati su PromQL. È compatibile con i cloud ibridi e multi-cloud, può monitorare Kubernetes, VM e carichi di lavoro serverless su Cloud Run, conserva i dati per 24 mesi e mantiene la portabilità rimanendo compatibile con Prometheus a monte. Puoi anche integrare il monitoraggio di Prometheus eseguendo query su oltre 6500 metriche gratuite in Cloud Monitoring, incluse le metriche di sistema GKE gratuite, utilizzando PromQL.
Questo documento fornisce una panoramica del servizio gestito e ulteriori documenti come configurare ed eseguire il servizio. Per ricevere aggiornamenti regolari su nuovi funzioni e release, invia il campo modulo di registrazione.
Scopri come The Home Depot utilizza Managed Service per Prometheus per ottenere un'osservabilità unificata in 2200 negozi che eseguono cluster Kubernetes on-premise:
Panoramica del sistema
Google Cloud Managed Service per Prometheus ti offre la familiarità di Prometheus supportata dall'infrastruttura globale, multi-cloud e tra progetti di Cloud Monitoring.
Managed Service per Prometheus si basa su Monarch, il stesso archivio dati scalabile a livello globale usato per il monitoraggio di Google. Poiché Managed Service per Prometheus utilizza lo stesso backend e le stesse API di Cloud Monitoring, entrambe le metriche di Cloud Monitoring e le metriche importate da Managed Service per Prometheus sono interrogabili mediante PromQL in Cloud Monitoring, Grafana o qualsiasi altro strumento che possono leggere l'API Prometheus.
In un deployment di Prometheus standard, la raccolta dei dati, la valutazione delle query, la valutazione di regole e avvisi e lo spazio di archiviazione dei dati vengono gestiti all'interno di un singolo server Prometheus. Managed Service per Prometheus ripartisce le responsabilità per questi in più componenti:
- La raccolta dei dati viene gestita da raccoglitori gestiti, raccoglitori di cui è stato eseguito il deployment da remoto, dall'OpenTelemetry Collector o dall'Agente di gestione, che esegue lo scraping degli esportatori locali e inoltra i dati raccolti a Monarch. Questi collector possono essere utilizzati per i carichi di lavoro Kubernetes, serverless e VM tradizionali e possono essere eseguiti ovunque, inclusi altri cloud e deployment on-premise.
- La valutazione delle query è gestita da Monarch, che esegue query e risultati di unioni su tutti i servizi Google Cloud regioni e in un massimo di 1000 progetti Google Cloud.
- La valutazione di regole e avvisi viene gestita scrivere avvisi PromQL in Cloud Monitoring che vengono eseguite completamente nel cloud oppure mediante l'esecuzione in locale e configurati localmente che eseguono regole e automaticamente gli avvisi al datastore globale Monarch e inoltrano avvisi attivati per Prometheus AlertManager.
- L'archiviazione dei dati è gestita da Monarch, che archivia tutti i dati di Prometheus per 24 mesi senza costi aggiuntivi.
Grafana si connette al datastore Monarch globale anziché ai singoli server Prometheus. Se hai configurato i raccoglitori Managed Service per Prometheus in tutti i tuoi deployment, questa singola istanza di Grafana ti offre una visualizzazione unificata di tutte le tue metriche su tutti i tuoi cloud.
Raccolta dei dati
Puoi utilizzare Managed Service per Prometheus in una delle quattro modalità: raccolta dei dati gestita, con dati di cui è stato eseguito il deployment autonomo , con OpenTelemetry Collector, oppure con l'Ops Agent.
Managed Service per Prometheus offre un operatore per la raccolta gestita dei dati in ambienti Kubernetes. Ti consigliamo di utilizzare la raccolta gestita, poiché elimina la complessità del deployment, del ridimensionamento, dello sharding, della configurazione e della manutenzione dei server Prometheus. La raccolta gestita è supportata sia per gli ambienti Kubernetes GKE sia per quelli non GKE.
Con la raccolta dei dati di cui è stato eseguito il deployment autonomo, puoi gestire l'installazione di Prometheus come che hai sempre. L'unica differenza rispetto a Prometheus upstream è che esegui il programma binario sostitutivo drop-in di Managed Service per Prometheus anziché il programma binario di Prometheus upstream.
OpenTelemetry Collector può essere utilizzato per eseguire lo scraping dei dati degli esportatori Prometheus e inviare a Managed Service per Prometheus. OpenTelemetry supporta strategia a agente singolo per tutti gli indicatori, dove un raccoglitore può essere utilizzato metriche (incluse quelle Prometheus), log e tracce in qualsiasi ambiente.
Puoi configurare Ops Agent su qualsiasi istanza Compute Engine per eseguire lo scraping e inviare le metriche di Prometheus al datastore globale. Uso intensivo dell'agente semplifica l'individuazione delle VM ed elimina la necessità di installare, eseguire il deployment o configurare Prometheus in ambienti VM.
Se hai un servizio Cloud Run che scrive metriche Prometheus o metriche OTLP, puoi utilizzare un sidecar e Managed Service per Prometheus per inviare le metriche a Cloud Monitoring.
- Per raccogliere le metriche di Prometheus da Cloud Run, utilizza il metodo Sidecar di Prometheus.
- Per raccogliere le metriche OTLP da Cloud Run, utilizza il metodo File collaterale di OpenTelemetry.
Puoi eseguire raccoglitori gestiti, a deployment autonomo e OpenTelemetry in deployment on-prem e su qualsiasi cloud. Collettori in esecuzione al di fuori di Google Cloud e inviare dati a Monarch per l'archiviazione a lungo termine e l'esecuzione di query a livello globale.
Quando scegli tra le diverse opzioni di raccolta, considera quanto segue:
Raccolta gestita:
- Approccio consigliato da Google per tutti gli ambienti Kubernetes.
- Deployment eseguito tramite la UI di GKE, gcloud CLI,
l'interfaccia a riga di comando
kubectl
o Terraform. - Operazione di Prometheus: generazione di configurazioni di scrape, scalabilità l'importazione, la definizione delle regole di ambito ai dati giusti e così via. gestite dall'operatore Kubernetes.
- Lo scraping e le regole vengono configurati utilizzando risorse personalizzate leggere (RP).
- Ideale per chi desidera un'esperienza più pratica e completamente gestita.
- Migrazione intuitiva da prometheus-operator.
- Supporta la maggior parte dei casi d'uso di Prometheus attuali.
- Assistenza completa dall'assistenza tecnica di Google Cloud.
Raccolta di cui è stato eseguito il deployment autonomo:
- Un sostituto temporaneo del programma binario Prometheus upstream.
- Puoi usare il meccanismo di deployment che preferisci, prometheus-operator o manuale e deployment continuo.
- Lo scraping viene configurato utilizzando i metodi che preferisci, come le annotazioni o l'operatore Prometheus.
- La scalabilità e lo sharding funzionale vengono eseguiti manualmente.
- Ideale per un'integrazione rapida in configurazioni esistenti più complesse. Puoi riutilizzare le configurazioni esistenti ed eseguire l'upstream di Prometheus Managed Service per Prometheus uno accanto all'altro.
- Le regole e gli avvisi vengono in genere eseguiti all'interno di singoli server Prometheus, che potrebbe essere preferibile per le implementazioni edge poiché la valutazione delle regole locali non comporta alcun traffico di rete.
- Potrebbe supportare casi d'uso long-tail non ancora supportati dalla raccolta gestita, ad esempio le aggregazioni locali per ridurre la cardinalità.
- Assistenza limitata da parte dell'assistenza tecnica di Google Cloud.
Il Collector OpenTelemetry:
- Un unico raccoglitore in grado di raccogliere metriche (incluso Prometheus) metriche) da qualsiasi ambiente e inviarle a qualsiasi backend compatibile. Può essere utilizzato anche per raccogliere log e tracce e inviarli a qualsiasi un backend compatibile, inclusi Cloud Logging e Cloud Trace.
- Deployment manuale o tramite deployment in qualsiasi ambiente di computing o Kubernetes utilizzando Terraform. Può essere utilizzato per inviare metriche da ambienti stateless come Cloud Run.
- Lo scraping viene configurato utilizzando configurazioni simili a Prometheus nel Ricevitore Prometheus.
- Supporta pattern di raccolta di metriche basate su push.
- I metadati vengono inseriti da qualsiasi cloud utilizzando processori di rilevamento di risorse.
- Le regole e gli avvisi possono essere eseguiti utilizzando un criterio di avviso di Cloud Monitoring o la valutazione autonoma delle regole.
- Supporta al meglio i flussi di lavoro e le funzionalità di cross-signal, come gli esempi.
- Assistenza limitata da parte dell'assistenza tecnica Google Cloud.
L'agente operativo:
- Il modo più semplice per raccogliere e inviare i dati delle metriche Prometheus originari da ambienti Compute Engine, inclusi Linux e Windows distributrici.
- Eseguito il deployment utilizzando gcloud CLI, l'interfaccia utente di Compute Engine o Terraform.
- Lo scraping viene configurato utilizzando configurazioni simili a Prometheus nel ricevitore Prometheus dell'agente, basato su OpenTelemetry.
- Le regole e gli avvisi possono essere eseguiti utilizzando Cloud Monitoring o di valutazione delle regole autonomo.
- È fornito in bundle con agenti di logging e metriche di processo facoltativi.
- Assistenza completa da parte dell'assistenza tecnica di Google Cloud. Per iniziare, consulta la guida introduttiva alla raccolta gestita, la guida introduttiva alla raccolta di dati con deployment automatico, la guida introduttiva al raccoltore OpenTelemetry o la guida introduttiva all'agente Ops.
Se utilizzi il servizio gestito al di fuori di Google Kubernetes Engine o Google Cloud, potrebbe essere necessaria un'ulteriore configurazione; consulta Eseguire la raccolta gestita all'esterno di di Google Cloud, Esegui raccolta di cui è stato eseguito il deployment autonomo all'esterno Google Cloud o Aggiungi OpenTelemetry processori.
Valutazione delle query
Managed Service per Prometheus supporta qualsiasi interfaccia utente di query che può chiamare l'API Prometheus Query, tra cui Grafana e l'interfaccia utente di Cloud Monitoring. Esistente Le dashboard di Grafana continuano a funzionare quando si passa da Prometheus locale a Managed Service per Prometheus e continuare a usare PromQL in repository open source popolari e sui forum della community.
Puoi usare PromQL per eseguire query su oltre 6500 query metriche in Cloud Monitoring, anche senza inviare dati Managed Service per Prometheus. Puoi anche utilizzare PromQL per eseguire query sulle metriche Kubernetes gratuite, sulle metriche personalizzate e sulle metriche basate su log.
Per informazioni su come configurare Grafana per eseguire query Managed Service per i dati Prometheus, vedi Eseguire query utilizzando Grafana.
Per informazioni su come eseguire query sulle metriche di Cloud Monitoring utilizzando PromQL, consulta PromQL in Cloud Monitoring.
Valutazione di regole e avvisi
Managed Service per Prometheus fornisce un sistema di avviso completamente basato su cloud pipeline e un valutatore autonomo delle regole, entrambi valuta le regole in base a tutti i dati Monarch accessibile in un ambito delle metriche. La valutazione delle regole in base a un ambito delle metriche di più progetti elimina la necessità di collocare in modo congiunto tutti i dati di interesse su un singolo server Prometheus o all'interno di un singolo progetto Google Cloud e ti consente di impostare le autorizzazioni IAM su gruppi di progetti.
Poiché tutte le opzioni di valutazione delle regole accettano il formato rule_files
standard di Prometheus, puoi eseguire facilmente la migrazione a Managed Service per Prometheus copiando e incollando
le regole esistenti o quelle disponibili nei repository open source più diffusi. Se utilizzi i collector di cui hai eseguito il deployment autonomo, puoi continuare a valutare le regole di registrazione localmente nei tuoi collector. I risultati delle regole di registrazione
e di avviso vengono archiviati in Monarch, proprio come i dati metrici raccolti direttamente. Puoi anche migrare le regole di avviso Prometheus
Criteri di avviso basati su PromQL in Cloud Monitoring.
Per la valutazione degli avvisi con Cloud Monitoring, consulta Avvisi PromQL in Cloud Monitoring.
Per la valutazione delle regole con la raccolta gestita, consulta Valutazione delle regole gestite e avvisi.
Per la valutazione delle regole con la raccolta di cui è stato eseguito il deployment da remoto, il Collector OpenTelemetry e Ops Agent, consulta Valutazione delle regole e generazione di avvisi con deployment automatico.
Per informazioni su come ridurre la cardinalità utilizzando regole di registrazione su deployment autonomo raccoglitori, consulta Controllo dei costi e attribuzione.
Archiviazione dei dati
Tutti i dati di Managed Service per Prometheus vengono archiviati per 24 mesi senza costi aggiuntivi.
Managed Service per Prometheus supporta un intervallo di scansione minimo di 5 secondi. I dati sono completamente memorizzati granularità per 1 settimana, poi viene ridotto a punti di 1 minuto per le 5 successive settimane, poi viene ridotto a punti di 10 minuti e archiviato per il resto il periodo di conservazione.
Managed Service per Prometheus non ha limiti al numero di account attivi serie temporali o serie temporali totali.
Per ulteriori informazioni, consulta Quote e limiti entro il documentazione di Cloud Monitoring.
Fatturazione e quote
Managed Service per Prometheus è un prodotto Google Cloud e di fatturazione e delle quote di utilizzo.
Fatturazione
La fatturazione per il servizio si basa principalmente su il numero di campioni di metriche importati nello spazio di archiviazione. Inoltre, è previsto un costo nominale per le chiamate API di lettura. Managed Service per Prometheus non verranno addebitati costi per l'archiviazione o la conservazione dei dati delle metriche.
- Per i prezzi attuali, vedi Riepilogo dei prezzi di Google Cloud Managed Service per Prometheus.
- Per stimare la fattura in base al numero previsto di serie temporali o campioni previsti al secondo, consulta la scheda Suite operativa di Google Cloud Calcolatore prezzi di Google Cloud.
- Per suggerimenti su come ridurre la fattura o determinare le fonti di costi elevati, consulta Controlli dei costi e attribuzione.
- Per informazioni sulla motivazione del modello di prezzi, consulta Determinazione del prezzo in termini di controllabilità e prevedibilità.
- Per esempi di prezzi, consulta la sezione Esempio di prezzi in base ai campioni importati.
Quote
Managed Service per Prometheus condivide le quote di importazione e lettura con Cloud Monitoring. La quota di importazione predefinita è 500 QPS per progetto con un massimo di 200 campioni in una singola chiamata, ovvero 100.000 campioni al secondo. La La quota di lettura predefinita è di 100 QPS per ambito delle metriche.
Puoi aumentare queste quote per supportare la metrica e la query come i bilanciatori del carico e i volumi di archiviazione. Per informazioni sulla gestione delle quote e sulla richiesta di aumenti delle quote, consulta Utilizzo delle quote.
Termini di servizio e conformità
Managed Service per Prometheus fa parte di Cloud Monitoring e pertanto eredita determinati contratti e certificazioni da Cloud Monitoring, tra cui (a titolo esemplificativo):
- I Termini di servizio di Google Cloud
- L'Accordo sul livello del servizio (SLA) per le operazioni
- US DISA e Livelli di conformità FedRAMP
- Supporto di VPC-SC (Controlli di servizio VPC)
Passaggi successivi
- Inizia a utilizzare la raccolta gestita.
- Inizia con la raccolta di dati con deployment automatico.
- Inizia a utilizzare OpenTelemetry Collector.
- Inizia a utilizzare Ops Agent.
- Utilizza PromQL in Cloud Monitoring per eseguire query sulle metriche Prometheus.
- Utilizza Grafana per eseguire query sulle metriche di Prometheus.
- Eseguire query sulle metriche di Cloud Monitoring utilizzando PromQL.
- Leggi le best practice e visualizza i diagrammi di architettura.