Questo documento descrive come configurare il deployment di Google Kubernetes Engine in modo da poter utilizzare il servizio gestito Google Cloud per Prometheus per raccogliere le metriche da TorchServe. Questo documento illustra come:
- Configura TorchServe per generare report sulle metriche.
- Configura una risorsa PodMonitoring per Managed Service per Prometheus per raccogliere le metriche esportate.
- Accedi a una dashboard in Cloud Monitoring per visualizzare le metriche.
Queste istruzioni si applicano solo se utilizzi la raccolta gestita con Managed Service per Prometheus. Se utilizzi la raccolta di cui hai eseguito il deployment autonomo, consulta la documentazione di TorchServe per informazioni sull'installazione.
Queste istruzioni sono fornite come esempio e dovrebbero funzionare nella maggior parte degli ambienti Kubernetes. Se hai difficoltà a installare un'applicazione o un esportatore a causa di criteri di sicurezza o organizzativi restrittivi, ti consigliamo di consultare la documentazione open source per ricevere assistenza.
Per informazioni su TorchServe, consulta TorchServe. Per informazioni su come configurare TorchServe su Google Kubernetes Engine, consulta la guida di GKE per TorchServe.
Prerequisiti
Per raccogliere le metriche da TorchServe utilizzando Managed Service per Prometheus e la raccolta gestita, il tuo deployment deve soddisfare i seguenti requisiti:
- Sul cluster deve essere in esecuzione Google Kubernetes Engine versione 1.21.4-gke.300 o successiva.
- Devi eseguire Managed Service per Prometheus con la raccolta gestita abilitata. Per maggiori informazioni, consulta la guida introduttiva alla raccolta gestita.
metrics_mode
è specificato nel file config.properties
o come variabile di ambiente.
Se configuri TorchServe autonomamente, ti consigliamo di apportare le seguenti aggiunte al file config.properties
.
Se stai seguendo il documento di Google Kubernetes Engine Servire LLM scalabili su GKE con TorchServe, queste aggiunte fanno parte della configurazione predefinita.
Inoltre, quando esegui il deployment di questa immagine in GKE, modifica il file YAML di deployment e servizio per esporre la porta delle metriche aggiunta:
Per verificare che TorchServe emetta le metriche sugli endpoint previsti:
- Configura il port forwarding utilizzando il seguente comando:
kubectl -n NAMESPACE_NAME port-forward SERVICE_NAME 8082
- Accedi all'endpoint
localhost:8082/metrics
utilizzando il browser o l'utilitàcurl
in un'altra sessione del terminale.
Definisci una risorsa PodMonitoring
Per il rilevamento dei target, l'operatore Managed Service per Prometheus richiede una risorsa PodMonitoring corrispondente a TorchServe nello stesso spazio dei nomi.
Puoi utilizzare la seguente configurazione di PodMonitoring:
Assicurati che i valori dei campiport
e matchLabels
corrispondano a quelli dei pod TorchServe che vuoi monitorare.
Per applicare le modifiche alla configurazione da un file locale, esegui il seguente comando:
kubectl apply -n NAMESPACE_NAME -f FILE_NAME
Puoi anche utilizzare Terraform per gestire le configurazioni.
Verificare la configurazione
Puoi utilizzare Esplora metriche per verificare di aver configurato correttamente TorchServe. L'importazione delle metriche da parte di Cloud Monitoring potrebbe richiedere uno o due minuti.
Per verificare che le metriche siano importate, procedi nel seguente modo:
-
Nella console Google Cloud, vai alla pagina leaderboard Esplora metriche:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Nella barra degli strumenti del riquadro Query Builder, seleziona il pulsante code MQL o code PromQL.
- Verifica che PromQL sia selezionato nel pulsante di attivazione/disattivazione Lingua. Il pulsante di attivazione/disattivazione della lingua si trova nella stessa barra degli strumenti che consente di formattare la query.
- Inserisci ed esegui la seguente query:
up{job="torchserve", cluster="CLUSTER_NAME", namespace="NAMESPACE_NAME"}
Visualizza dashboard
L'integrazione di Cloud Monitoring include la dashboard Panoramica di Prometheus di TorchServe. Le dashboard vengono installate automaticamente quando configuri l'integrazione. Puoi anche visualizzare anteprime statiche delle dashboard senza installare l'integrazione.
Per visualizzare una dashboard installata:
-
Nella console Google Cloud, vai alla pagina
Dashboard:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Seleziona la scheda Elenco dashboard.
- Scegli la categoria Integrazioni.
- Fai clic sul nome della dashboard, ad esempio Panoramica di Prometheus di TorchServe.
Per visualizzare un'anteprima statica della dashboard:
-
Nella console Google Cloud, vai alla pagina
Integrazioni:
Vai a Integrations (Integrazioni).
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Fai clic sul filtro della piattaforma di deployment Kubernetes Engine.
- Individua l'integrazione di TorchServe e fai clic su Visualizza dettagli.
- Seleziona la scheda Dashboard.
Risoluzione dei problemi
Per informazioni sulla risoluzione dei problemi di importazione delle metriche, consulta Problemi di raccolta dagli esportatori in Risoluzione dei problemi relativi all'importazione.