Questo documento mostra come configurare e utilizzare Cloud Logging. e Cloud Monitoring per i bilanciatori del carico di rete passthrough esterni.
Logging
I log forniscono informazioni utili per la risoluzione dei problemi e il monitoraggio del bilanciatore del carico di rete passthrough esterno. I log vengono aggregati per connessione ed esportati in tempo quasi reale. Vengono generati log per i flussi TCP, UDP, ESP, GRE, ICMP e ICMPv6 di ogni istanza bilanciata in base al carico sia per il traffico in entrata sia per quello in uscita. Per ulteriori informazioni sui campi forniti nella voce di log, consulta Campi di log.
Non sono previsti costi aggiuntivi per l'utilizzo dei log. In base a come importi log dei dati, i prezzi standard Cloud Logging BigQuery o Pub/Sub. L'attivazione dei log non influisce sul rendimento del bilanciatore del carico.
La registrazione offre i seguenti vantaggi:
Monitoraggio del traffico del bilanciatore del carico di rete passthrough esterno. Il logging per connessione ti offre informazioni su come ogni viene instradata verso backend di servizio.
Risoluzione dei problemi di rete. Puoi utilizzare i log del bilanciatore del carico di rete passthrough esterno per la risoluzione dei problemi. Per ulteriori informazioni, vedi Risolvi i problemi dei bilanciatori del carico di rete passthrough esterni.
Esempio di formato di log per i flussi da client esterno a VM
Il seguente diagramma mostra il traffico in entrata e in uscita per un client esterno (203.0.113.7), un bilanciatore del carico di rete passthrough esterno (198.51.100.99) e un'istanza di backend (10.240.0.2).
Log del bilanciatore del carico di rete passthrough esterno per le connessioni dal client al backend sono formattate come segue:
connection.clientIp
: 203.0.113.7connection.serverIp
: 198.51.100.99bytesSent
: 1256bytesReceived
: 4521
Campionamento e raccolta dei log
Google Cloud campiona i pacchetti che escono ed entrano nel backend del bilanciatore del carico delle VM in esecuzione. Questi pacchetti campionati vengono elaborati per generare log.
Non tutti i pacchetti vengono campionati. Google Cloud esegue il campionamento di un sottoinsieme variabile di pacchetti in base alla quantità di traffico sull'host fisico. La frequenza di campionamento più bassa possibile è 1 su 1024 pacchetti. La frequenza di campionamento è controllata dinamicamente da Google Cloud. Non puoi modificare il campionamento di conversione.
Il campionamento dei pacchetti interagisce con le regole firewall nei seguenti modi:
- I pacchetti vengono campionati prima dell'applicazione delle regole firewall in uscita.
- I pacchetti vengono campionati dopo l'applicazione delle regole del firewall in entrata.
Dopo il campionamento dei pacchetti, Google Cloud li elabora secondo la seguente procedura:
Aggregazione:i pacchetti campionati vengono aggregati in un intervallo di 5 secondi. per produrre una singola voce di flusso.
Campionamento dei log configurabile (secondario): si tratta di un secondo campionamento di processo, campionando i flussi. Puoi controllare la frazione delle voci di flusso che vengono emesse come voci di log in base al parametro logConfig.sampleRate. Quando
logConfig.sampleRate
è1.0
(100%), significa che tutti i pacchetti campionati vengono elaborati.Scrittura in logging: le voci di log vengono scritte in Cloud Logging.
Campi facoltativi
I record di log contengono campi obbligatori e facoltativi. La sezione Campi log elenca i campi facoltativi e quelli obbligatori. Tutti i campi obbligatori sono sempre inclusi. Puoi personalizzare i campi facoltativi da conservare.
Se selezioni Includi tutti i campi facoltativi, tutti i campi facoltativi nel log sono inclusi nei log di flusso. Quando vengono aggiunti nuovi campi facoltativi nel formato record, i log di flusso includono automaticamente i nuovi campi.
Se selezioni Escludi tutti i campi facoltativi, vengono omessi tutti i campi facoltativi.
Se selezioni personalizzato, puoi specificare i campi facoltativi che vuoi includere nel campo principale, ad esempio
serverInstance
oppure tramite nome e cognome, ad esempioserverInstance.vm
.
Quando vengono aggiunti nuovi campi facoltativi al formato del record, i log non li includeranno, a meno che non si tratti di un nuovo campo all'interno di un campo principale che hai specificato da includere.
Se specifichi un campo facoltativo personalizzato utilizzando i campi principali, quando vengono aggiunti nuovi campi facoltativi al formato del record all'interno di quel campo principale, i log includeranno automaticamente i nuovi campi. Ad esempio, se scegli di includereoptionalFieldA
, un nuovo campo aggiunto ai log con il nomeoptionalFieldA.subField1
verrà incluso automaticamente.
Per istruzioni su come personalizzare i campi facoltativi, consulta: Abilitare il logging su un nuovo servizio di backend.
Requisiti per l'indirizzo IP di origine del pacchetto di risposta
La registrazione campiona i pacchetti di risposta dalle VM di backend solo se l'indirizzo IP di origine di questi pacchetti corrisponde all'indirizzo IP della regola di inoltro del bilanciatore del carico. Per le connessioni TCP, i pacchetti di risposta devono sempre avere origini corrispondenti destinazione del pacchetto di richiesta; mentre per altri protocolli è possibile pacchetti di risposta per utilizzare un indirizzo IP di origine diverso. Per ulteriori informazioni, vedi Indirizzi IP per i pacchetti di richiesta e restituzione.
Il processo di campionamento dei pacchetti utilizzato dal logging del bilanciatore del carico di rete passthrough esterno omette tutti i pacchetti di risposta delle VM di backend se le origini di questi pacchetti di risposta non corrispondono a un indirizzo IP di una regola di inoltro per un bilanciatore del carico di rete passthrough esterno.
Abilita il logging su un nuovo servizio di backend
Console
Nella console Google Cloud, vai alla pagina Bilanciamento del carico.
- Fai clic sul nome del bilanciatore del carico.
- Fai clic su Modifica e poi su Configurazione backend.
- Seleziona Crea un servizio di backend, quindi completa la procedura richiesta del servizio di backend.
- Nella sezione Logging, seleziona la casella di controllo Attiva il logging.
- Imposta una frazione della frequenza di campionamento. Puoi impostare una tariffa su
0.0
fino a1.0
(valore predefinito). - (Facoltativo) Per includere tutti i campi facoltativi nei log, nella sezione Campi facoltativi, fai clic su Includi tutti i campi facoltativi.
- Per completare la modifica del servizio di backend, fai clic su Aggiorna.
- Per completare la modifica del bilanciatore del carico, fai clic su Aggiorna.
gcloud
Crea il servizio di backend per abilitare il logging con il
gcloud compute backend-services create
comando.
gcloud compute backend-services create BACKEND_SERVICE \ --region=REGION \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE \ --logging-optional=LOGGING_OPTIONAL \ --logging-optional-fields=OPTIONAL_FIELDS
Sostituisci quanto segue:
BACKEND_SERVICE
: il nome del backend completamente gestito di Google Cloud.REGION
: la regione del servizio di backend da creare.SAMPLE_RATE
: questo campo può essere specificato solo se la registrazione è attivata per questo servizio di backend.
Il valore del campo deve essere compreso tra
0.0 to 1.0
, dove0.0
indica che non vengono generati log e1.0
indica che vengono generati log per tutti i pacchetti campionati. Attivare il logging, ma impostare la frequenza di campionamento su0.0
, equivale a disattivare il logging. Il valore predefinito è1.0
.LOGGING_OPTIONAL
: i campi facoltativi che vuoi includere nei log:INCLUDE_ALL_OPTIONAL
per includere tutti i campi facoltativi.EXCLUDE_ALL_OPTIONAL
(predefinito) per escludere tutti i campi facoltativi.CUSTOM
per includere un elenco personalizzato dei campi facoltativi che hai specificare inOPTIONAL_FIELDS
.
OPTIONAL_FIELDS
: un elenco di elementi facoltativi separati da virgole da includere nei log.Ad esempio,
serverInstance.vm,serverGkeDetails
. Può essere impostato solo seLOGGING_OPTIONAL
è impostato suCUSTOM
.
API
Invia una richiesta POST
al metodo
regionBackendServices.insert
.
POST https://compute.googleapis.com/compute/v1/projects/`PROJECT_ID`/regions/`REGION`/backendServices
Escludi tutti i campi facoltativi
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
Includi tutti i campi facoltativi
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE, "optionalMode": "INCLUDE_ALL_OPTIONAL" } }
Includi un elenco personalizzato di campi facoltativi
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE, "optionalMode": "CUSTOM", "optionalFields": ["field1","field2",...] } }
Attivare il logging su un servizio di backend esistente
Console
Nella console Google Cloud, vai alla pagina Bilanciamento del carico.
- Fai clic sul nome del bilanciatore del carico.
- Fai clic su Modifica e poi fai clic su Configurazione backend.
- Accanto al tuo servizio di backend, fai clic su Modifica.
- Nella sezione Logging, seleziona la casella di controllo Attiva il logging.
- Imposta una frazione di Frequenza di campionamento. Puoi impostare una tariffa su
0.0
a1.0
(predefinito). - (Facoltativo) Per includere tutti i campi facoltativi nei log, nella sezione Nella sezione Campi facoltativi, fai clic su Includi tutti i campi facoltativi.
- Per completare la modifica del servizio di backend, fai clic su Aggiorna.
- Per completare la modifica del bilanciatore del carico, fai clic su Aggiorna.
gcloud
Abilita il logging su un servizio di backend esistente con
gcloud compute backend-services update
un comando kubectl.
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE \ --logging-optional=LOGGING_OPTIONAL \ --logging-optional-fields=OPTIONAL_FIELDS
Sostituisci quanto segue:
BACKEND_SERVICE
: il nome del backend completamente gestito di Google Cloud.REGION
: la regione del servizio di backend da creare.SAMPLE_RATE
: questo campo può essere specificato solo se il logging è abilitato per questo servizio di backend.
Il valore del campo deve essere compreso tra
0.0 to 1.0
, dove0.0
indica che non vengono generati log e1.0
indica che i log vengono generati per tutti i pacchetti campionati. Abilitazione in corso... logging, ma la frequenza di campionamento è impostata su0.0
equivale a disabilitare il logging. Il valore predefinito è1.0
.LOGGING_OPTIONAL
: i campi facoltativi che vuoi includere nei log:INCLUDE_ALL_OPTIONAL
per includere tutti i campi facoltativi.EXCLUDE_ALL_OPTIONAL
(predefinito) per escludere tutti i campi facoltativi.CUSTOM
per includere un elenco personalizzato dei campi facoltativi che hai specificare inOPTIONAL_FIELDS
.
OPTIONAL_FIELDS
: un elenco di elementi facoltativi separati da virgole da includere nei log.Ad esempio,
serverInstance.vm,serverGkeDetails
. Può essere impostato solo seLOGGING_OPTIONAL
è impostato suCUSTOM
.
API
Invia una richiesta PATCH
a
regionBackendServices/patch
.
PATCH https://compute.googleapis.com/compute/v1/projects/`PROJECT_ID`/regions/`REGION`/backendServices/`BACKEND_SERVICE`
Escludi tutti i campi facoltativi
"logConfig": { "enable": true, "sampleRate": SAMPLE_RATE, "optionalMode": "EXCLUDE_ALL_OPTIONAL" }
Includi tutti i campi facoltativi
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE, "optionalMode": "INCLUDE_ALL_OPTIONAL" } }
Includi un elenco personalizzato di campi facoltativi
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE, "optionalMode": "CUSTOM", "optionalFields": ["field1","field2",...] } }
Disabilita il logging su un servizio di backend esistente
Console
Nella console Google Cloud, vai alla pagina Bilanciamento del carico.
Fai clic sul nome del bilanciatore del carico.
Fai clic su
Modifica e poi su Configurazione backend.Per disattivare completamente il logging, deseleziona la casella di controllo Abilita il logging nella sezione Logging.
Se lasci abilitato il logging, puoi impostare una frazione di Frequenza di campionamento diversa. Puoi impostare la tariffa su un valore compreso tra
0.0
e1.0
(valore predefinito). Per generare log solo per il 20% dei pacchetti campionati, imposta il valore su0.2
.Per completare la modifica del servizio di backend, fai clic su Aggiorna.
Per completare la modifica del bilanciatore del carico, fai clic su Aggiorna.
gcloud
Disattiva il logging sul servizio di backend con il
comando gcloud compute backend-services update
.
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --no-enable-logging
Sostituisci quanto segue:
BACKEND_SERVICE
: il nome del servizio di backend.REGION
: la regione del servizio di backend.
API
Invia una richiesta PATCH
a
regionBackendServices/patch
.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID
/regions/REGION
/backendServices/BACKEND_SERVICE
{ "logConfig": { "enable": false } }
Visualizza i log
Quando i log vengono importati in Cloud Logging e non sono esclusi tramite un destinatario del router di log, puoi leggerli utilizzando l'API Cloud Logging e l'interfaccia a riga di comando Google Cloud.
Per visualizzare tutti i log del bilanciatore del carico di rete passthrough esterno:
Console
Nella console Google Cloud, vai alla pagina Esplora log.
Seleziona il tipo di risorsa External Passthrough Network Load Balancer (Regola del bilanciatore del carico di rete passthrough esterno).
Seleziona il nome del log loadbalancing.googleapis.com/flows.
Query sulla console
Nella console Google Cloud, vai alla pagina Esplora log.
Fai clic sul pulsante di attivazione/disattivazione Mostra query.
Incolla quanto segue nel campo della query. Sostituisci
PROJECT_ID
con il tuo ID progetto.resource.type="loadbalancing.googleapis.com/ExternalNetworkLoadBalancerRule" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com%2Fflows"
Fai clic su Esegui query.
Visualizzare i log di un servizio di backend specifico
Per visualizzare i log del bilanciatore del carico di rete passthrough esterno per un servizio di backend specifico:
Query della console
Nella console Google Cloud, vai alla pagina Esplora log.
Fai clic sul pulsante di attivazione/disattivazione Mostra query.
Incolla il codice seguente nel campo della query. Sostituisci
PROJECT_ID
con il tuo ID progetto eBACKEND_SERVICE_NAME
con il del tuo servizio di backend.resource.type="loadbalancing.googleapis.com/ExternalNetworkLoadBalancerRule" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com%2Fflows" resource.labels.backend_service_name="BACKEND_SERVICE_NAME"
Fai clic su Esegui query.
Visualizza i log per un gruppo di istanza di backend
Per visualizzare i log del bilanciatore del carico di rete passthrough esterno per uno specifico gruppo di istanza di backend:
Query sulla console
Nella console Google Cloud, vai alla pagina Esplora log.
Fai clic sul pulsante di attivazione/disattivazione Mostra query.
Incolla quanto segue nel campo della query. Sostituisci
PROJECT_ID
con l'ID del tuo progetto eBACKEND_GROUP_NAME
con il nome del gruppo di istanze.resource.type="loadbalancing.googleapis.com/ExternalNetworkLoadBalancerRule" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com%2Fflows" resource.labels.backend_group_name="BACKEND_GROUP_NAME"
Fai clic su Esegui query.
Campi log
I record di log contengono campi obbligatori, che sono i campi predefiniti di ogni log e campi facoltativi che aggiungono ulteriori informazioni. I campi facoltativi possono per ridurre i costi di archiviazione.
Alcuni campi del log sono in formato multicampo, con più di un dato
in un determinato campo. Ad esempio, il campo connection
è del tipo IpConnection
che contiene l'indirizzo IP e la porta di origine e di destinazione, più il
in un unico campo. Questi campi multicampo sono descritti nel
della seguente tabella del formato record.
La risorsa monitorata è loadbalancing.googleapis.com/ExternalNetworkLoadBalancerRule.
Campo | Formato del campo | Tipo di campo: obbligatorio o facoltativo | Descrizione |
---|---|---|---|
Connessione | IpConnection | Obbligatorio | Tupla di 5 elementi che descrive questa connessione. |
startTime | string | Obbligatorio | Timestamp (nel formato di stringa per la data RFC 3339) del primo pacchetto osservato durante l'intervallo di tempo aggregato. |
endTime | string | Obbligatorio | Timestamp (nel formato di stringa per la data RFC 3339) dell'ultimo pacchetto osservato durante l'intervallo di tempo aggregato. |
bytesSent | int64 | Obbligatorio | Numero di byte inviati dal server al client. |
bytesReceived | int64 | Obbligatorio | Numero di byte ricevuti dal server dal client. |
packetsSent | int64 | Obbligatorio | Numero di pacchetti inviati dal server al client. |
packetsReceived | int64 | Obbligatorio | Numero di pacchetti ricevuti dal server dal client. |
rtt | string | Obbligatorio | La latenza viene misurata solo per le connessioni TCP. La latenza è la somma del tempo di round trip (RTT) della rete stimato più il tempo impiegato per elaborare il pacchetto nel sistema operativo del client. Per i pacchetti campionati, l'RTT viene calcolato dal punto di vista di un backend bilanciato in base al carico misurando le differenze di tempo tra il backend che invia un segmento TCP e il backend che riceve un riconoscimento TCP per il numero di sequenza del segmento inviato. La latenza è formattata come una stringa che inizia con il numero di secondi e termina con "s" per indicare i secondi. I nanosecondi sono expressed as fractional seconds: ad esempio, la latenza di 250 millisecondi è formatted as "0.250000000s". |
serverInstance | InstanceDetails | Facoltativo | I dettagli dell'istanza VM di backend. |
clientLocation | GeographicDetails | Facoltativo | I metadati sulla località disponibili del client. |
serverGkeDetails | GkeDetails | Facoltativo | Metadati GKE per il backend del server. Disponibile solo se è un endpoint GKE. |
networkTier | NetworkTierDetails | Facoltativo | Livello di rete per connessioni esterne, compilato solo quando il client non si trova in in Google Cloud. |
Formato campo IpConnection
Campo | Tipo | Descrizione |
---|---|---|
clientIp | string | Indirizzo IP del client |
clientPort | int32 | Porta del client. Impostato solo per connessioni TCP e UDP. |
serverIp | string | Indirizzo IP del server (IP della regola di inoltro) |
serverPort | int32 | Porta del server. Impostato solo per le connessioni TCP e UDP. |
protocollo | int32 | Numero di protocollo IANA |
Formato campo InstanceDetails
Campo | Tipo | Descrizione |
---|---|---|
projectId | string | ID del progetto contenente la VM |
vm | string | Nome istanza della VM |
region | string | Regione della VM |
zone | string | Zona della VM |
vmIp | string | Indirizzo IPv4 interno principale dell'interfaccia di rete che ha pubblicato la connessione |
Formato del campo GeographicDetails
Campo | Tipo | Descrizione |
---|---|---|
continent | string | Nome del continente |
regionCode | string | Un codice regione CLDR Unicode come US o
FR . Per la maggior parte dei paesi, questi codici corrispondono direttamente ai
codici ISO-3166-2. |
subRegion | string | Un ID suddivisione CLDR Unicode, ad esempio una provincia o uno stato del paese, come
USCA o CAON . Questi codici Unicode derivano dalle suddivisioni definite
Standard ISO-3166-2.
|
city | string | Nome della città, ad esempio Mountain View per
Mountain View, California, USA. Non esiste un elenco canonico di valori validi per questa variabile. I nomi delle città possono contenere lettere, numeri, spazi e i seguenti caratteri US-ASCII: !#$%&'*+-.^_`|~ . |
asn | int32 | Il numero di sistema autonomo (ASN) della rete esterna a cui appartiene questo endpoint. |
Formato campo GkeDetails
Campo | Tipo | Descrizione |
---|---|---|
cluster | ClusterDetails | Metadati del cluster GKE |
pod | PodDetails | Metadati del pod GKE, compilati quando l'origine o la destinazione del traffico è un pod |
servizio | ServiceDetails | Metadati del servizio GKE, compilati solo negli endpoint del servizio. Il record contiene fino a due servizi. Se sono presenti più di due servizi pertinenti, questo campo contiene un singolo servizio con un indicatore speciale MANY_SERVICES. |
Formato del campo ClusterDetails
Campo | Tipo | Descrizione |
---|---|---|
cluster | string | Nome del cluster GKE |
clusterLocation | string | Località del cluster. La posizione del cluster può essere una zona o una regione. |
Formato del campo PodDetails
Campo | Tipo | Descrizione |
---|---|---|
pod | string | Nome del pod |
podNamespace | string | Spazio dei nomi del pod |
Formato del campo ServiceDetails
Campo | Tipo | Descrizione |
---|---|---|
service | string | Nome del servizio. Se sono presenti più di due servizi pertinenti, il campo viene impostato su un indicatore speciale MANY_SERVICES. |
serviceNamespace | string | Spazio dei nomi del servizio |
Formato del campo NetworkTierDetails
Campo | Tipo | Descrizione |
---|---|---|
networkTier | string | NetworkTier utilizzato nella connessione, uno dei [PREMIUM, STANDARD, FIXED_STANDARD, UNKNOWN]. |
Monitoraggio
I bilanciatori del carico di rete passthrough esterni esportano le metriche chiave in Cloud Monitoring.
Le metriche di monitoraggio possono essere utilizzate per le seguenti finalità:
- Valutare la configurazione, l'utilizzo e le prestazioni di un bilanciatore del carico
- Risoluzione dei problemi
- Migliorare l'utilizzo delle risorse e l'esperienza utente
Oltre alle dashboard predefinite in Monitoraggio, puoi creare dashboard personalizzate, configurare avvisi ed eseguire query sulle metriche tramite l'API Monitoring.
Visualizza le dashboard di Monitoring
Console
Nella console Google Cloud, vai alla pagina Monitoring.
Nel riquadro di navigazione, seleziona Dashboard.
Seleziona la dashboard Bilanciatori del carico Google Cloud. Vengono visualizzati tutti i bilanciatori del carico.
Seleziona il nome del bilanciatore del carico dall'elenco dei bilanciatori del carico.
Nel riquadro Dettagli del bilanciatore del carico di rete passthrough esterno, puoi visualizzare vari dettagli per il bilanciatore del carico selezionato. Questo riquadro mostra le configurazioni correnti.
Nel riquadro Metriche chiave, puoi visualizzare i grafici relativi a ogni metrica chiave. Per visualizzare suddivisioni specifiche, fai clic su Suddivisioni. Questo riquadro presenta i dati generati da configurazioni storiche, mentre il riquadro Dettagli bilanciatore del carico di rete passthrough esterno mostra solo le configurazioni correnti. Per ulteriori informazioni, consulta Dashboard e grafici.
Definire le dashboard personalizzate di monitoraggio
Puoi creare dashboard di Monitoring personalizzate del bilanciatore del carico di rete passthrough esterno.
Consulta Metriche e tipi di risorse per un elenco le metriche raccolte. Consulta la sezione Filtri per gli elenchi degli attributi che puoi utilizzare per filtrare i risultati.
Console
Nella console Google Cloud, vai alla pagina Monitoring.
Seleziona Dashboard > Crea dashboard.
Fai clic su Aggiungi grafico.
Assegna un titolo al grafico.
Seleziona metriche e filtri.
Per trovare le metriche del bilanciatore del carico di rete passthrough esterno, cerca la classe Prefisso
loadbalancing.googleapis.com/l3/external
.Fai clic su Salva.
Definire gli avvisi di Monitoring
Puoi definire avvisi di monitoraggio per diverse metriche del bilanciatore del carico di rete passthrough esterno:
Console
Nella console Google Cloud, vai alla pagina Monitoring.
Seleziona Avvisi > Crea un criterio.
Seleziona i tipi di risorse e le metriche.
Per trovare i tipi di risorse e le metriche del bilanciatore del carico di rete passthrough esterno, cerca
loadbalancing.googleapis.com/l3/external
nel campo Trova tipo di risorsa e metrica.Specifica una configurazione per impostare quando deve essere attivato un avviso.
Se vuoi, aggiungi i filtri.
Fai clic su Salva.
Frequenza e conservazione dei report sulle metriche
Le metriche per i bilanciatori del carico di rete passthrough esterni vengono esportate in Monitoring in batch con granularità di un minuto. I dati di monitoraggio vengono conservati per sei settimane. Le metriche si basano sul traffico campionato (la frequenza di campionamento è dinamica e non può essere rettificata). Il pannello fornisce l'analisi dei dati a intervalli predefiniti di un'ora (1 ora), sei ore (6 ore), un giorno (1 giorno), una settimana (1 sett.) e sei settimane (6 ore). Puoi richiedere manualmente un'analisi in qualsiasi intervallo da sei settimane a 60 secondi.
Metriche e tipi di risorse
Metriche
Le seguenti metriche per i bilanciatori del carico di rete passthrough esterni vengono registrate in Monitoraggio. Puoi utilizzare la modalità di queste metriche quando esegui le richieste API.
metric_name | Tipo | Descrizione |
---|---|---|
loadbalancing.googleapis.com/l3/external/ingress_bytes_count |
contatore | Il numero di byte inviati da un client a un backend del bilanciatore del carico di rete passthrough esterno. Per i flussi TCP, vengono conteggiati solo i byte nello stream dell'applicazione. |
loadbalancing.googleapis.com/l3/external/ingress_packets_count |
contatore | Il numero di pacchetti inviati da un client al backend di un bilanciatore del carico di rete passthrough esterno. |
loadbalancing.googleapis.com/l3/external/egress_bytes_count |
contatore | Il numero di byte inviati dal backend di un bilanciatore del carico di rete passthrough esterno a un client. Per i flussi TCP, vengono conteggiati solo i byte nello stream dell'applicazione. |
loadbalancing.googleapis.com/l3/external/egress_packets_count |
contatore | Il numero di pacchetti inviati da un backend del bilanciatore del carico di rete passthrough esterno a un client. |
loadbalancing.googleapis.com/l3/external/rtt_latencies |
distribuzione | Una distribuzione del tempo di risposta misurato sulle connessioni TCP per i flussi del bilanciatore del carico di rete passthrough esterno. Disponibile solo per il traffico TCP. |
Tipi di risorse
I bilanciatori del carico di rete passthrough esterni utilizzano i seguenti tipi di risorse:
tcp_lb_rule
udp_lb_rule
loadbalancing.googleapis.com/ExternalNetworkLoadBalancerRule
Un bilanciatore del carico di rete passthrough esterno può supportare TCP, UDP, ESP, GRE, ICMP e ICMPv6 per via del traffico.
Puoi specificare il tipo di risorsa come
tcp_lb_rule
o
udp_lb_rule
al limite
i dati monitorati sui protocolli TCP o UDP.
Puoi specificare il tipo di risorsa come
loadbalancing.googleapis.com/ExternalNetworkLoadBalancerRule
per monitorare tutti i protocolli supportati
TCP, UDP, ESP, GRE, ICMP e ICMPv6
protocolli.
Filtri
Le metriche vengono aggregate per ogni bilanciatore del carico di rete passthrough esterno. Puoi filtrare le metriche aggregate in base alle seguenti dimensioni.
Etichette delle risorse per tcp_lb_rule
o udp_lb_rule
Puoi limitare la query per risorsa. Puoi anche raggruppare i risultati in base a questi valori.
resource.label.<var>LABEL_KEY</var>:
label_key | Tipo | Descrizione |
---|---|---|
project |
string | L'identificatore del progetto Google Cloud associato a questa risorsa. |
load_balancer_name |
string | Il nome del bilanciatore del carico. |
region |
string | La regione
in cui si trova il backend del bilanciatore del carico, ad esempio
us-central1 , europe-west1 ,
asia-east1 . |
network_name |
string | La rete VPC in cui risiede il backend del bilanciatore del carico. |
backend_target_type |
string | Indica se il bilanciatore del carico di rete passthrough esterno è basato su pool di destinazione o su servizio di backend. I valori validi sono BACKEND_SERVICE o
TARGET_POOL . |
backend_target_name |
string | Per i bilanciatori del carico di rete passthrough esterni basati su pool di destinazione, il nome del pool di destinazione. Per i bilanciatori del carico di rete passthrough esterni basati sul servizio di backend, il nome del di servizio di backend. |
forwarding_rule_name |
string | Il nome della regola di inoltro. |
forwarding_rule_network_tier |
string | Il livello di rete della regola di inoltro. |
backend_name |
string | Il nome del backend che ha gestito la connessione. Per un bilanciatore del carico di rete passthrough esterno basato sul servizio di backend, il valore è il nome del gruppo di istanze di backend o del gruppo di endpoint di rete (NEG) che ha gestito la connessione. Per un bilanciatore del carico di rete passthrough esterno basato su pool di destinazione, il valore è il nome del pool di destinazione. |
backend_type |
string | Il tipo di backend che ha gestito la connessione. Per un bilanciatore del carico di rete passthrough esterno basato su servizio di backend,
il valore può essere Per un servizio basato su pool di destinazione
bilanciatore del carico di rete passthrough esterno, il valore è |
backend_scope |
string | Per un bilanciatore del carico di rete passthrough esterno basato sul servizio di backend, la zona o la regione gruppo di istanza di backend o NEG. Per un bilanciatore del carico di rete basato su pool di destinazione, il valore è |
backend_scope_type |
string | Il tipo di ambito del gruppo di backend che ha gestito la connessione. I valori validi sono Per un bilanciatore del carico di rete basato su pool di destinazione, il valore è
|
backend_failover_configuration |
string | La configurazione del failover del gruppo di backend che
ha gestito la connessione. I valori validi sono PRIMARY ,
BACKUP o UNKNOWN . |
backend_subnetwork_name |
string | Il nome della subnet del backend che ha ricevuto l'oggetto connessione. |
endpoint_zone |
string | La zona della VM di backend che ha gestito la connessione. |
Etichette risorse per loadbalancing.googleapis.com/ExternalNetworkLoadBalancerRule
Puoi limitare la query in base alla risorsa. Puoi anche raggruppare i risultati in base a questi e i relativi valori.
resource.label.<var>LABEL_KEY</var>:
label_key | Tipo | Descrizione |
---|---|---|
project |
string | L'identificatore del progetto Google Cloud associato a questa risorsa. |
region |
string | La regione
in cui si trova il backend del bilanciatore del carico, ad esempio
us-central1 , europe-west1 ,
asia-east1 . |
backend_network_name |
string | La rete VPC in cui risiede il backend del bilanciatore del carico. |
backend_target_type |
string | Il tipo di target di backend che ha gestito la connessione. I valori validi sono BACKEND_SERVICE o TARGET_POOL . |
backend_service_name |
string | Il nome del servizio di backend che ha gestito la connessione. Se
backend_target_type è TARGET_POOL , quindi il valore è
UNSUPPORTED_FOR_TARGET_POOL . |
primary_target_pool |
string | Il nome del pool di destinazione principale. Se backend_target_type è BACKEND_SERVICE , il valore è UNSUPPORTED_FOR_BACKEND_SERVICE . |
target_pool |
string | Il nome del pool di destinazione. Se backend_target_type è BACKEND_SERVICE , il valore è UNSUPPORTED_FOR_BACKEND_SERVICE . |
forwarding_rule_name |
string | Il nome della regola di inoltro del bilanciatore del carico di rete passthrough esterno. |
backend_group_name |
string | Il nome del gruppo di backend che ha gestito la connessione.
Se backend_target_type è TARGET_POOL , il valore è UNSUPPORTED_FOR_TARGET_POOL . |
backend_group_type |
string | Il tipo di gruppo di backend che ha gestito la connessione. Se Se |
backend_group_scope |
string | L'ambito del gruppo di backend (nome della zona o della regione) che ha gestito le
connessione. Se backend_target_type è TARGET_POOL ,
il valore sarà UNSUPPORTED_FOR_TARGET_POOL . |
backend_subnetwork_name |
string | Il nome della subnet del backend che ha ricevuto l'oggetto connessione. |
backend_zone |
string | La zona della VM di backend che ha gestito la connessione. |
Etichette metriche
Puoi limitare la query in base all'etichetta della metrica. Puoi anche raggruppare i risultati in base a questi valori.
metric.label.<var>LABEL_KEY</var>:
label_key | Tipo | Descrizione |
---|---|---|
client_country |
string | Il paese del client che ha avviato la connessione al bilanciatore del carico di rete passthrough esterno. |
client_continent |
string | Il continente del client che ha avviato la connessione con il bilanciatore del carico di rete passthrough esterno. |
protocol |
string | Il protocollo nella connessione per la risorsa Questo campo viene lasciato vuoto per le risorse |
Monitoraggio delle richieste API
Puoi creare query arbitrarie sulle metriche del bilanciatore del carico di rete passthrough esterno utilizzando la richiesta projects.timeSeries.list della versione 3 dell'API Monitoring. La struttura esatta delle varie definizioni segue la semantica dei filtri di monitoraggio generici.
Richieste API di esempio
Ottieni tutti i byte inviati da tutti i bilanciatori del carico di rete passthrough esterni nel progetto tra le 12:00 e le 12:02 UTC del 01-07-2019 con aggregati di 1 milione.
Parametri timeSeries.list:
- name: projects/
PROJECT_ID
- Filtro:
resource.type = "tcp_lb_rule"
Emetric.name="loadbalancing.googleapis.com/l3/external/egress_bytes_count"
- interval.start_time:
2019-07-01T12:00:00Z
- interval.end_time:
2019-07-01T12:02:00Z
- aggregation.alignmentPeriod:
60s
- aggregation.crossSeriesReducer:
REDUCE_SUM
- aggregation.perSeriesAligner:
ALIGN_SUM
- name: projects/
Ottieni la misurazione del tempo di risposta mediano su tutti i bilanciatori del carico di rete passthrough esterni nel progetto tra le 12:19 e le 12:20 UTC del 01/07/2019, suddivisa per paese del client.
Parametri timeSeries.list:
- name: projects/
PROJECT_ID
- Filtro:
resource.type = "tcp_lb_rule"
ANDmetric.name="loadbalancing.googleapis.com/l3/external/rtt_latencies"
- interval.start_time:
2019-07-01T12:19:00Z
- interval.end_time:
2019-07-01T12:20:00Z
- aggregation.alignmentPeriod:
60s
- aggregation.crossSeriesReducer:
REDUCE_SUM
- aggregation.groupByFields:
metric.label.client_country
- aggregation.perSeriesAligner:
ALIGN_PERCENTILE_50
- name: projects/
Ottieni byte totali da un bilanciatore del carico di rete passthrough esterno specifico durante 12:19-12:20 UTC del 01-07-2019, suddivisi per zona endpoint e continente client.
timeSeries.list parametri:
- name: progetti/
PROJECT_ID
- Filtro:
resource.type = "tcp_lb_rule"
Eresource.label.load_balancer_name = "netlb-bs-1"
Emetric.name="loadbalancing.googleapis.com/l3/external/ingress_bytes_count"
- interval.start_time:
2019-07-01T12:19:00Z
- interval.end_time:
2017-07-01T12:20:00Z
- aggregation.alignmentPeriod:
60s
- aggregation.crossSeriesReducer:
REDUCE_SUM
- aggregation.groupByFields:
metric.label.client_continent
- aggregation.groupByFields:
resource.label.endpoint_zone
- aggregation.perSeriesAligner:
ALIGN_SUM
- name: progetti/
Passaggi successivi
- Leggi le informazioni concettuali sui bilanciatori del carico di rete passthrough esterni
- Configura un bilanciatore del carico di rete passthrough esterno
- Scopri di più su Metriche, serie temporali e risorse di monitoraggio
- Scopri di più sulle regole di forwarding
- Scopri di più sulla risoluzione dei problemi di registrazione