Utilizza i controlli di integrità

Google Cloud fornisce meccanismi di controllo di integrità determinare se le istanze di backend rispondono correttamente al traffico. Questo documento descrive come creare e utilizzare i controlli di integrità per bilanciatori del carico e Cloud Service Mesh.

In questa pagina si presuppone che tu abbia familiarità con i seguenti concetti:

Creazione dei controlli di integrità

Google Cloud ti consente di creare o selezionare un controllo di integrità a completare la configurazione del backend del bilanciatore del carico nella console Google Cloud.

Puoi anche creare un controllo di integrità indipendentemente dalla configurazione del bilanciatore del carico nella console Google Cloud. È utile se devi creare il tuo oppure se devi usare un controllo di integrità per più carichi bilanciatori del carico e bilanciatori del carico. Puoi creare un controllo di integrità utilizzando la console Google Cloud, Google Cloud CLI o le API REST.

Console

  1. Vai alla pagina Controlli di integrità nella console Google Cloud.
    Vai alla pagina Controlli di integrità
  2. Fai clic su Crea un controllo di integrità.
  3. Nella pagina Crea un controllo di integrità, fornisci le seguenti informazioni:
      .
    • Nome: specifica un nome per il controllo di integrità.
    • Descrizione: se vuoi, puoi fornire una descrizione.
    • Ambito: seleziona un ambito, Globale o A livello di regione. a seconda del tipo di bilanciatore del carico.
      • Se hai selezionato A livello di regione, scegli una Regione dal menu a discesa.
    • Protocollo: scegli un controllo di integrità. protocollo.
    • Porta: fornisci un numero di porta. Quando crei un controllo di integrità, nella console Google Cloud, devi specificare utilizzando un numero di porta.
    • Protocollo proxy: facoltativamente, puoi aggiungere un'intestazione proxy al protocollo richieste effettuate dai sistemi di probe del controllo di integrità.
    • Percorso di richiesta e risposta: per i protocolli HTTP, HTTPS e HTTP2, facoltativamente puoi fornire un percorso dell'URL per il probe del controllo di integrità sistemi da contattare. Per ulteriori informazioni informazioni, consulta Flag aggiuntivi per HTTP, HTTPS e Controlli di integrità HTTP/2.
    • Richiesta e risposta: per i protocolli TCP e SSL, puoi specifica una stringa di testo ASCII da inviare e la risposta di testo prevista stringa. Per ulteriori informazioni, consulta Flag aggiuntivi per l'integrità SSL e TCP controlli.
    • Intervallo di controllo: definisci il periodo di tempo dall'inizio di uno all'inizio di quella successiva.
    • Timeout: definisci per quanto tempo Google Cloud attende una risposta a una sonda. Il suo valore deve essere minore o uguale a all'intervallo di controllo.
    • Soglia di integrità: definisci il numero di probe sequenziali che deve riuscire affinché l'istanza VM sia considerata integro.
    • Soglia di stato non integro: definisci il numero di probe sequenziali che perché l'istanza VM sia considerata in stato non integro.
  4. Fai clic su Crea.

gcloud

  • Per creare un controllo di integrità globale, utilizza il compute health-checks create appropriato :

    gcloud compute health-checks create PROTOCOL NAME \
        --global \
        --description=DESCRIPTION \
        --check-interval=CHECK_INTERVAL \
        --timeout=TIMEOUT \
        --healthy-threshold=HEALTHY_THRESHOLD \
        --unhealthy-threshold=UNHEALTHY_THRESHOLD \
        PORT_SPECIFICATION \
        ADDITIONAL_FLAGS
    
  • Per creare un controllo di integrità a livello di regione, utilizza il compute health-checks create appropriato :

    gcloud compute health-checks create PROTOCOL NAME \
        --region=REGION \
        --description=DESCRIPTION \
        --check-interval=CHECK_INTERVAL \
        --timeout=TIMEOUT \
        --healthy-threshold=HEALTHY_THRESHOLD \
        --unhealthy-threshold=UNHEALTHY_THRESHOLD \
        PORT_SPECIFICATION \
        ADDITIONAL_FLAGS
    

Sostituisci quanto segue:

  • PROTOCOL definisce il protocollo utilizzato per il controllo di integrità. Valido sono grpc, http, https, http2, ssl e tcp.
  • NAME è il nome del controllo di integrità. All'interno di un determinato progetto: Ogni controllo di integrità globale deve avere un nome univoco e un'integrità a livello di regione devono avere nomi univoci all'interno di una data regione.
  • REGION: tutti i bilanciatori del carico ad eccezione di I bilanciatori del carico delle applicazioni esterni regionali e i bilanciatori del carico delle applicazioni interni regionali utilizzano controlli di integrità globali (--global). I bilanciatori del carico delle applicazioni interni regionali utilizzano le applicazioni regionali la cui regione deve corrispondere a quella del servizio di backend.
  • DESCRIPTION è una descrizione facoltativa.
  • CHECK_INTERVAL è la quantità di tempo dall'inizio di un integrità e controllare la connessione del sistema di probe all'inizio di quella successiva. Le unità sono secondi. Se omesso, Google Cloud utilizza il valore 5s (5 secondi).
  • TIMEOUT è la quantità di tempo di attesa di Google Cloud per una risposta a un probe. Il valore di TIMEOUT deve essere inferiore a o uguale a CHECK_INTERVAL. Le unità sono in secondi. Se omesso, Google Cloud utilizza il valore 5s (5 secondi).
  • HEALTHY_THRESHOLD e UNHEALTHY_THRESHOLD specificano di probe sequenziali che devono avere esito positivo o negativo affinché l'istanza VM integro o non integro. Se uno dei due viene omesso, Google Cloud utilizza una soglia predefinita di 2.
  • PORT_SPECIFICATION: definisce la specifica della porta utilizzando uno tra i flag delle specifiche delle porte.
  • ADDITIONAL_FLAGS sono altri flag per specificare le porte specifiche di PROTOCOL. Consulta la sezione Flag aggiuntivi per HTTP, controlli di integrità HTTPS e HTTP/2 Flag aggiuntivi per l'integrità SSL e TCP controlli o Flag aggiuntivo per i controlli di integrità gRPC.

Terraform

Per creare un controllo di integrità globale, utilizza google_compute_health_check.

resource "google_compute_health_check" "health_check_tcp_with_logging" {
  provider = google-beta

  name = "health-check-tcp"

  timeout_sec        = 1
  check_interval_sec = 1

  tcp_health_check {
    port = "22"
  }

  log_config {
    enable = true
  }
}

Per creare un controllo di integrità a livello di regione, utilizza google_compute_region_health_check.

resource "google_compute_region_health_check" "default" {
  name               = "tcp-health-check-region-west"
  timeout_sec        = 5
  check_interval_sec = 5
  tcp_health_check {
    port = "80"
  }
  region = "us-west1"
}

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta: Comandi Terraform di base.

API

Modifica controlli di integrità

Non puoi convertire un controllo di integrità in un controllo di integrità legacy (o viceversa) Modificare il controllo di integrità. Non puoi inoltre modificare il nome o (ad esempio, da globale a regionale).

Console

  1. Vai alla pagina Controlli di integrità nella console Google Cloud.
    Vai alla pagina Controlli di integrità
  2. Fai clic su un controllo di integrità per visualizzarne i dettagli.
  3. Se devi modificare il controllo di integrità, fai clic su Modifica, quindi:
      .
    • Apporta le modifiche necessarie ai parametri.
    • Fai clic su Salva.

gcloud

  1. Identifica il nome e l'ambito del controllo di integrità. Per istruzioni, vedi Elenca i controlli di integrità.

  2. Ad eccezione del nome, del protocollo e dell'ambito di un controllo di integrità, puoi modificare qualsiasi dei flag comuni, la specifica delle porte e altri flag aggiuntivi. Per modificare un controllo di integrità esistente, utilizza il compute health-checks update appropriato kubectl. Per i flag omessi, vengono conservate le impostazioni preconfigurate.

    • Esempio di modifica di un controllo di integrità globale: il comando seguente modifica un controllo di integrità HTTP globale denominato hc-http-port-80 modificando l'intervallo di controllo, il timeout e il percorso di richiesta:

      gcloud compute health-checks update http hc-http-port-80 \
          --global \
          --check-interval=20s \
          --timeout=15s \
          --request-path="/health"
      
    • Esempio di modifica di un controllo di integrità a livello di regione: il comando seguente modifica un controllo di integrità TCP a livello di regione in us-west1 denominato hc-west1-tcp-ldap modificando le specifiche della porta:

      gcloud compute health-checks update tcp hc-west1-tcp-ldap \
          --region=us-west1 \
          --port=631
      

API

  1. Identifica il nome e l'ambito del controllo di integrità. Consulta la scheda controlli di integrità per ulteriori istruzioni.

  2. Ad eccezione del nome, del protocollo e dell'ambito di un controllo di integrità, puoi modificare qualsiasi dei flag comuni, la specifica delle porte e altri flag aggiuntivi con queste chiamate API. Utilizza le chiamate API patch per conservare tutte le chiamate preconfigurate impostazioni che non sono esplicitamente configurate nella richiesta.

Elenca controlli di integrità

Console

  1. Vai alla pagina Controlli di integrità nella console Google Cloud.
    Vai alla pagina Controlli di integrità
  2. Fai clic su un controllo di integrità per visualizzarne i dettagli.

gcloud

Per elencare i controlli di integrità, utilizza il comando compute health-checks list:

  • Per elencare i controlli di integrità globali:

    gcloud compute health-checks list \
        --global
    
  • Per elencare i controlli di integrità a livello di regione: sostituisci REGION_LIST con un elenco delimitato da virgole di regioni Google Cloud su cui eseguire query.

    gcloud compute health-checks list \
        --regions=REGION_LIST
    

Dopo aver individuato il nome e l'ambito di un controllo di integrità, utilizza il comando compute health-checks describe per e visualizzare la configurazione attuale.

  • Per descrivere un controllo di integrità globale, sostituisci NAME con il relativo nome.

    gcloud compute health-checks describe NAME \
        --global
    
  • Per descrivere un controllo di integrità a livello di regione, sostituisci NAME con la relativa nome e REGION con la relativa regione.

    gcloud compute health-checks describe NAME \
        --region=REGION
    

API

Per elencare i controlli di integrità, utilizza queste chiamate API:

Per descrivere l'attuale configurazione di un controllo di integrità, utilizza queste chiamate API:

Flag aggiuntivi

In questa sezione vengono descritti i flag aggiuntivi che puoi utilizzare durante la creazione o la modifica un controllo di integrità. Alcuni flag, come le specifiche della porta, devono essere impostati utilizzando gcloud o l'API.

Flag delle specifiche delle porte

Se crei un controllo di integrità utilizzando Google Cloud CLI o l'API, hai due opzioni per specificare la porta del controllo di integrità. La tabella seguente mostra le opzioni delle specifiche delle porte per un bilanciatore del carico e un backend validi combinazioni. Il termine gruppo di istanze si riferisce ai gruppi di istanze non gestite, gruppi di istanze gestite a livello di zona o gruppi di istanze gestite a livello di regione.

Ogni controllo di integrità può utilizzare un solo tipo di specifica della porta.

Prodotto Tipo di backend Opzioni delle specifiche della porta
Bilanciatore del carico di rete passthrough esterno Gruppi di istanze --port: specifica una porta TCP in base al numero, da 1 per 65535
Il flag --use-serving-port verrà ignorato per un'integrità controllo associato a un bilanciatore del carico di rete passthrough esterno perché i servizi di backend per i bilanciatori del carico di rete passthrough esterni non ha una specifica della porta.
Bilanciatore del carico di rete passthrough interno Gruppi di istanze --port: specifica una porta TCP in base al numero, da 1 per 65535
Il flag --use-serving-port verrà ignorato per un'integrità controllo associato a un bilanciatore del carico di rete passthrough interno perché i servizi di backend per i bilanciatori del carico di rete passthrough interni non ha una specifica della porta.
Bilanciatore del carico delle applicazioni esterno globale

Bilanciatore del carico delle applicazioni esterno regionale

Bilanciatore del carico delle applicazioni interno tra regioni

Bilanciatore del carico delle applicazioni interno regionale

Bilanciatore del carico di rete proxy esterno globale

Bilanciatore del carico di rete proxy classico

Bilanciatore del carico di rete proxy esterno regionale

Bilanciatore del carico di rete proxy interno regionale

Bilanciatore del carico di rete proxy interno tra regioni

Cloud Service Mesh
NEG a livello di zona --port: specifica una porta TCP in base al numero, da 1 per 65535
--use-serving-port: utilizza la porta di ciascun endpoint nella gruppo di endpoint di rete.
Gruppi di istanze --port: specifica una porta TCP in base al numero, da 1 per 65535
--use-serving-port: utilizza lo stesso gruppo di istanze denominato porta a cui è abbonato il servizio di backend.

Se ometti la specifica della porta, Google Cloud utilizza quanto segue predefiniti:

  • Se il protocollo del controllo di integrità è TCP o HTTP, utilizza --port=80.
  • Se il protocollo del controllo di integrità è SSL, HTTPS o HTTP2, utilizza --port=443.
  • Se il protocollo del controllo di integrità è GRPC, non esiste un valore predefinito implicito. tu deve includere le specifiche della porta.

Flag aggiuntivi per i controlli di integrità HTTP, HTTPS e HTTP/2

Oltre ai flag comuni e alle specifiche delle porte, puoi utilizzare seguenti flag facoltativi per i controlli di integrità HTTP, HTTPS e HTTP/2. Questo esempio crea un controllo di integrità HTTP denominato hc-http-port-80 utilizzando la porta 80 con di intervallo, di timeout e di soglia di integrità.

gcloud compute health-checks create HTTP_PROTOCOL hc-http-port-80 \
    COMMON_FLAGS \
    PORT_SPECIFICATION \
    --host=HOST \
    --proxy-header=PROXY_HEADER \
    --request-path=REQUEST_PATH \
    --response=RESPONSE
  • HTTP_PROTOCOL: può essere http (HTTP/1.1 senza TLS), https (HTTP/1.1 con TLS) o http2 (HTTP/2 con TLS).
  • COMMON_FLAGS: definisce i flag comuni. Consulta la sezione Creazione di sicurezza.
  • PORT_SPECIFICATION: definisce la specifica della porta utilizzando uno tra i flag delle specifiche delle porte.
  • HOST ti consente di fornire un'intestazione HTTP Host. Se omesso, l'indirizzo IP dell'indirizzo IP della regola di forwarding del bilanciatore del carico.
  • PROXY_HEADER deve essere NONE o PROXY_V1. Se omesso, Google Cloud utilizza NONE. Il valore PROXY_V1 aggiunge l'intestazione PROXY UNKNOWN\r\n.
  • REQUEST_PATH specifica il percorso dell'URL utilizzato da Google Cloud durante l'invio di richieste di controllo di integritàà. Se omesso, la richiesta di controllo di integrità viene inviato a /.
  • RESPONSE definisce una risposta prevista facoltativa. Stringhe di risposta devono rispettare queste regole:
    • La stringa di risposta deve essere composta da lettere ASCII, numeri e spazi.
    • La stringa di risposta può contenere fino a 1024 caratteri.
    • La corrispondenza con caratteri jolly non è supportata.
    • Il controllo basato sui contenuti non supporta l'inversione. ad esempio, gli operatori come ! in HAProxy non sono supportati.

Se Google Cloud trova la stringa di risposta prevista in qualsiasi punto della primi 1024 byte del corpo della risposta ricevuta e se lo stato HTTP è 200 (OK), il probe viene considerato riuscito.

I flag --request-path e --response modificano i criteri di successo per il probe del controllo di integrità.

Flag aggiuntivi per i controlli di integrità SSL e TCP

Oltre ai flag comuni e alle specifiche delle porte, puoi utilizzare seguenti flag facoltativi per i controlli di integrità SSL e TCP. Questo esempio crea un controllo di integrità TCP denominato hc-tcp-3268 utilizzando la porta 3268 con intervallo predefinito di timeout e di soglia di integrità.

gcloud compute health-checks create tcp hc-tcp-3268 \
    COMMON_FLAGS \
    PORT_SPECIFICATION \
    --proxy-header=PROXY_HEADER \
    --request=REQUEST_STRING \
    --response=RESPONSE_STRING
  • Il protocollo può essere tcp (in questo esempio) o ssl.
  • COMMON_FLAGS: definisce i flag comuni. Consulta la sezione Creazione di sicurezza.
  • PORT_SPECIFICATION: definisce la specifica della porta utilizzando uno tra i flag delle specifiche delle porte.
  • PROXY_HEADER deve essere NONE o PROXY_V1. Se omesso, Google Cloud utilizza NONE. Il valore PROXY_V1 aggiunge l'intestazione PROXY UNKNOWN\r\n.
  • REQUEST_STRING: puoi fornire una stringa di massimo 1024 ASCII da inviare una volta stabilita la sessione TCP o SSL.
  • RESPONSE_STRING: puoi fornire una stringa di massimo 1024 ASCII caratteri per la risposta prevista.

I flag --request e --response modificano i criteri di successo per il probe del controllo di integrità. Se utilizzi il flag --response, da solo o in combinazione con il flag --request , la risposta restituita deve corrispondere esattamente alla stringa di risposta prevista.

Flag aggiuntivo per i controlli di integrità gRPC

Il server gRPC di backend deve implementare il servizio di integrità gRPC come descritto in il protocollo per il controllo di integrità gRPC. Google Cloud invia un messaggio HealthCheckRequest ai tuoi backend tramite chiamando il metodo Check del servizio sanitario sul tuo backend. Il servizio nella richiesta sia impostato su una stringa vuota, a meno che non sia specificato.

Un controllo di integrità gRPC può controllare lo stato di un servizio gRPC. Puoi includere un stringa, che può contenere fino a 1024 caratteri ASCII, ovvero il nome di un Servizio gRPC in esecuzione su una VM di backend o un NEG. A questo scopo, utilizza quanto segue: flag facoltativo per i controlli di integrità gRPC:

--grpc-service-name=GRPC_SERVICE_NAME

Ad esempio, potresti avere i seguenti servizi e lo stato che il backend si registra con il servizio gRPC Health del backend.

  • MyPackage.ServiceA con stato di pubblicazione SERVING
  • MyPackage.ServiceB con stato di pubblicazione NOT_SERVING
  • Nome del servizio non specificato con lo stato di pubblicazione NOT_SERVING

Se crei un controllo di integrità rispetto a MyPackage.ServiceA, come segue, Il probe del controllo di integrità restituisce HEALTHY, perché lo stato del servizio è SERVING.

gcloud beta compute health-checks create grpc MyGrpcHealthCheckServiceA \
    --grpc-service-name=MyPackage.ServiceA

Se crei un controllo di integrità rispetto a MyPackage.ServiceB, il probe del controllo di integrità restituisce UNHEALTHY perché lo stato del servizio è NOT_SERVING.

Se crei un controllo di integrità rispetto a MyPackage.ServiceC, che non è registrato con il servizio gRPC Health, il probe del controllo di integrità restituisce Stato gRPC NOT_FOUND, che equivale a UNHEALTHY.

Se crei un controllo di integrità confrontandolo con il nome del servizio vuoto, il controllo il probe restituisce lo stato UNHEALTHY, perché il nome del servizio vuoto è registrato con lo stato NOT_SERVING.

Controlli di integrità legacy

Questa sezione descrive come creare, modificare ed elencare le versioni HTTP e HTTPS precedenti e controlli di integrità. Non puoi convertire un controllo di integrità legacy in un controllo di integrità. non è possibile convertire un controllo di integrità in un controllo di integrità precedente.

Per scoprire quali tipi di bilanciatori del carico supportano i controlli di integrità legacy, consulta Guida al bilanciatore del carico.

Crea controlli di integrità legacy

Console

Anche se la pagina dei controlli di integrità della console Google Cloud elenca e ti consente modificare sia i controlli di integrità che i controlli di integrità legacy, creare un nuovo controllo di integrità legacy dall'integrità della console Google Cloud dei controlli.

Puoi creare un controllo di integrità legacy nella console Google Cloud solo durante la creazione di un modello basato su pool bilanciatore del carico di rete passthrough esterno. Per creare autonomamente il controllo di integrità precedente, utilizza gcloud di questa sezione o le istruzioni dell'API.

gcloud

Per creare un controllo di integrità precedente, utilizza compute http-health-checks create :

gcloud compute LEGACY_CHECK_TYPE create NAME \
    --description=DESCRIPTION \
    --check-interval=CHECK_INTERVAL \
    --timeout=TIMEOUT \
    --healthy-threshold=HEALTHY_THRESHOLD \
    --unhealthy-threshold=UNHEALTHY_THRESHOLD \
    --host=HOST \
    --port=PORT \
    --request-path=REQUEST_PATH

Sostituisci quanto segue:

  • LEGACY_CHECK_TYPE è http-health-checks per una versione precedente di HTTP o https-health-checks per un controllo di integrità HTTPS legacy. Se stai creando il controllo di integrità legacy per un modello basato su pool di destinazione bilanciatore del carico di rete passthrough esterno, devi utilizzare http-health-checks.
  • NAME è il nome del controllo di integrità precedente. All'interno di un determinato progetto, ogni controllo di integrità legacy deve avere un nome univoco.
  • DESCRIPTION è una descrizione facoltativa.
  • CHECK_INTERVAL è la quantità di tempo dall'inizio di uno all'inizio di quella successiva. Le unità sono in secondi. Se omesso, Google Cloud utilizza il valore 5s (5 secondi).
  • TIMEOUT è la quantità di tempo che Google Cloud utilizzerà attenderemo una risposta a un probe. Il valore di TIMEOUT deve essere minore o uguale al CHECK_INTERVAL. Le unità sono in secondi. Se omesso, Google Cloud utilizza il valore 5s (5 secondi).
  • HEALTHY_THRESHOLD e UNHEALTHY_THRESHOLD specificano il numero di probe sequenziali che devono avere esito positivo o negativo per una VM in stato integro o non integro. Se uno dei due viene omesso, Google Cloud utilizza una soglia predefinita di 2.
  • HOST ti consente di fornire un'intestazione HTTP host. Se omesso, il valore Viene utilizzato l'indirizzo IP della regola di forwarding del bilanciatore del carico.
  • PORT ti consente di fornire un numero di porta. Se omesso, Google Cloud utilizza 80.
  • REQUEST_PATH specifica il percorso dell'URL che Google Cloud per l'invio di richieste di controllo di integrità. Se omesso, il controllo di integrità richiesta inviata a /.

API

Terraform

Modifica controlli di integrità legacy

Console

  1. Vai alla pagina Controlli di integrità nella console Google Cloud.
    Vai alla pagina Controlli di integrità
  2. Fai clic su un controllo di integrità per visualizzarne i dettagli.
  3. Fai clic su Modifica , apporta le modifiche e quindi fai clic su Salva.

gcloud

  • Per modificare un controllo di integrità HTTP precedente, utilizza compute http-health-checks update sostituendo NAME con il suo nome. Durante la modifica di una versione precedente controllo di integrità con gcloud, le impostazioni preconfigurate per i flag che ometti sono vengono conservati. OTHER_OPTIONS sono le opzioni descritte in creando un controllo di integrità legacy.

    gcloud compute http-health-checks update NAME \
      OTHER_OPTIONS
    
  • Per modificare un controllo di integrità HTTPS precedente, utilizza compute https-health-checks update sostituendo NAME con il suo nome. Durante la modifica di una versione precedente controllo di integrità con gcloud, le impostazioni preconfigurate per i flag che ometti sono vengono conservati. OTHER_OPTIONS sono le opzioni descritte in creando un controllo di integrità legacy.

    gcloud compute https-health-checks update NAME \
      OTHER_OPTIONS
    

API

Ad eccezione del nome e del tipo di un controllo di integrità legacy, puoi modificare qualsiasi dei flag utilizzati per la sua creazione. patch Le chiamate API conservano tutte le impostazioni preconfigurate che non sono impostate esplicitamente nel la richiesta di patch.

Elenca controlli di integrità legacy

Console

  1. Vai alla pagina Controlli di integrità nella console Google Cloud.
    Vai alla pagina Controlli di integrità
  2. Fai clic su un controllo di integrità precedente per visualizzarne i dettagli.

gcloud

  1. Per elencare i controlli di integrità HTTP legacy, utilizza il comando compute http-health-checks list:

    gcloud compute http-health-checks list
    

    Per elencare i controlli di integrità HTTPS precedenti, utilizza il comando compute https-health-checks list:

    gcloud compute https-health-checks list
    
  2. Per descrivere un controllo di integrità HTTP precedente, utilizza compute http-health-checks describe sostituendo NAME con il suo nome.

    gcloud compute http-health-checks describe NAME
    

    Per descrivere un controllo di integrità HTTPS precedente, utilizza compute https-health-checks describe sostituendo NAME con il suo nome.

    gcloud compute https-health-checks describe NAME
    

API

  1. Per elencare i controlli di integrità legacy:

  2. Per descrivere un controllo di integrità precedente:

Crea le regole firewall obbligatorie

Devi creare regole firewall in entrata applicabili a tutte le VM da caricare bilanciato per consentire il traffico dall'IP di controllo di integrità più intervalli. Le seguenti crea una regola firewall applicabile alle istanze VM identificate da un tag target specifico.

Questo esempio consente a tutto il traffico TCP dall'integrità di Google Cloud e controllare i sistemi nelle istanze VM. (il traffico TCP include SSL, HTTP, HTTPS e traffico HTTP/2). Se preferisci, puoi specificare le porte oltre al TCP protocol; Tuttavia, se specifichi le porte, le regole del firewall potrebbero specifiche di un particolare controllo di integrità. Se utilizzi tcp:80 per il protocollo e porta 80, questo consente il traffico TCP sulla porta 80, quindi Google Cloud potrebbe contattare tramite HTTP sulla porta 80, ma non è stato possibile contattarle utilizzando HTTPS dalla porta 443.

Console

  1. Nella console Google Cloud, vai alla pagina Criteri firewall.
    Vai ai criteri firewall
  2. Fai clic su Crea regola firewall.
  3. Nella pagina Crea una regola firewall, fornisci le seguenti informazioni:
      .
    • Nome: specifica un nome per la regola. Per questo esempio, utilizza fw-allow-health-checks.
    • Rete: scegli una rete VPC.
    • Priorità: inserisci un numero per la priorità. I numeri più bassi hanno priorità più elevate. Assicurati che la regola firewall abbia un principale rispetto ad altre regole che potrebbero negare il traffico in entrata.
    • Direzione del traffico: scegli In entrata.
    • Azione in caso di corrispondenza: scegli consenti.
    • Target: scegli Tag di destinazione specificati e inserisci i tag nel campo Tag di destinazione. Per questo esempio, utilizza allow-health-checks.
    • Filtro di origine: seleziona Intervalli IP.
    • Intervalli IP di origine: inserisci l'intervallo IP di origine in base al tuo il tipo di bilanciatore del carico, il tipo di traffico e il tipo di controllo di integrità. Vedi IP probe intervalli e regole firewall.
    • Protocolli e porte consentiti: utilizza tcp e la porta configurata in il controllo di integrità. TCP è il protocollo sottostante per tutti controllo di integrità protocolli.
    • Fai clic su Crea.
  4. Su ciascuna delle istanze di cui si esegue il bilanciamento del carico, aggiungi la rete il tag in modo che si applichi la nuova regola firewall in entrata. Questo esempio utilizza allow-health-checks per il tag di rete.

gcloud

  1. Utilizza il seguente comando gcloud per creare una regola firewall denominata fw-allow-health-checks che consente le connessioni TCP in entrata, da sistemi di controllo di integrità di Google Cloud alle istanze dei servizi rete VPC con il tag allow-health-checks. In base al tipo di bilanciatore del carico, un insieme diverso sonda gli intervalli IP e le regole firewall è supportato per il traffico IPv6 verso i backend. Ad esempio: 2600:2d00:1:b029::/64 viene utilizzato per i bilanciatori del carico delle applicazioni esterni globali e bilanciatori del carico di rete proxy esterni globali.

    Sostituisci NETWORK_NAME con il nome del tuo rete VPC e sostituisci PORT con e le porte utilizzate dal bilanciatore del carico.

    gcloud compute firewall-rules create fw-allow-health-checks \
        --network=NETWORK_NAME \
        --action=ALLOW \
        --direction=INGRESS \
        --source-ranges=SOURCE_IP_RANGE \
        --target-tags=allow-health-checks \
        --rules=tcp:PORT

    Il valore di SOURCE_IP_RANGE dipende da: il tipo di bilanciatore del carico, il tipo di traffico e il tipo di controllo di integrità. Vedi IP probe intervalli e regole firewall.

  2. Su ciascuna delle istanze di cui si esegue il bilanciamento del carico, aggiungi la rete il tag in modo che si applichi la nuova regola firewall in entrata. Questo esempio utilizza allow-health-checks per il tag di rete.

Fai riferimento alle gcloud regole firewall documentazione e l'API documentazione per ulteriori dettagli.

Documentazione correlata:

Associa i controlli di integrità ai bilanciatori del carico

Se non l'hai ancora fatto, consulta la Panoramica dei controlli di integrità: seleziona una controllo di integrità.

Per associare un controllo di integrità a un nuovo bilanciatore del carico, consulta la guida alla configurazione per il rispettivo bilanciatore del carico. Questa sezione descrive come associare un controllo di integrità con un servizio di backend di un bilanciatore del carico esistente.

In questa sezione si presuppone che tu abbia già:

Console

Per associare un controllo di integrità a un bilanciatore del carico esistente:

  1. Vai alla pagina Bilanciamento del carico nella console Google Cloud.
    Vai alla pagina Bilanciamento del carico
  2. Fai clic su un bilanciatore del carico per visualizzarne i dettagli.
  3. Fai clic su Modifica , quindi su Configurazione backend.
  4. Scegli un controllo di integrità dal menu Controllo di integrità.
  5. Fai clic su Aggiorna.

gcloud

Per associare un controllo di integrità a un servizio di backend esistente, segui questi passaggi: passaggi.

  1. Identificare il nome e l'ambito del servizio di backend. La bilanciatori del carico di rete passthrough esterni, bilanciatori del carico di rete passthrough interni, bilanciatori del carico di rete proxy interni regionali e i bilanciatori del carico di rete proxy esterni hanno un solo servizio di backend per carico con il bilanciatore del carico di rete passthrough esterno regionale. Gli Application Load Balancer esterni e i bilanciatori del carico delle applicazioni interni hanno uno o più servizi di backend associati a una singola mappa URL.

    • Per elencare i servizi di backend per i bilanciatori del carico di rete passthrough interni, esegui questo comando sostituendo REGION_LIST con un elenco delimitato da virgole delle regioni Google Cloud su cui eseguire query.

      gcloud compute backend-services list \
          --filter="region:( REGION1 REGION2 ... ) AND loadBalancingScheme=INTERNAL"
      
    • Per elencare i servizi di backend per i bilanciatori del carico di rete passthrough esterni, esegui questo comando sostituendo ogni REGION con Google Cloud regione su cui eseguire la query.

      gcloud compute backend-services list \
          --filter="region:( REGION1 REGION2 ... ) AND loadBalancingScheme=EXTERNAL"
      
    • Per elencare i servizi di backend per i bilanciatori del carico di rete con proxy esterno globale, esegui questo comando .

      gcloud compute backend-services list \
          --global \
          --filter="loadBalancingScheme=EXTERNAL_MANAGED" \
          --filter="protocol=(SSL,TCP)"
      
    • Per elencare i servizi di backend per i bilanciatori del carico di rete proxy classici, esegui questo comando .

      gcloud compute backend-services list \
          --global \
          --filter="loadBalancingScheme=EXTERNAL" \
          --filter="protocol=(SSL,TCP)"
      
    • Per elencare i servizi di backend per i bilanciatori del carico di rete proxy esterni regionali, esegui questo comando .

      gcloud compute backend-services list \
          --region=REGION \
          --filter="loadBalancingScheme=EXTERNAL_MANAGED" \
          --filter="protocol=(SSL,TCP)"
      
    • Per elencare i servizi di backend per i bilanciatori del carico di rete proxy interni regionali, esegui questo comando sostituendo REGION_LIST con un elenco delimitato da virgole delle regioni Google Cloud su cui eseguire query.

      gcloud beta compute backend-services list \
          --filter="region:( REGION1 REGION2 ... ) AND loadBalancingScheme=INTERNAL_MANAGED"
      
    • Per elencare i servizi di backend per i bilanciatori del carico di rete proxy esterni utilizzando SSL, esegui . I servizi di backend per questi bilanciatori del carico e sono sempre globali, indipendentemente dal livello di servizio di rete.

      gcloud compute backend-services list \
          --global \
          --filter="loadBalancingScheme=EXTERNAL" \
          --filter="protocol=(SSL,TCP)"
      
    • Per identificare i servizi di backend per un bilanciatore del carico delle applicazioni esterno, devi prima identificare un URL mappa e poi descrivi la mappa. Mappe di URL e servizi di backend per i bilanciatori del carico delle applicazioni esterni o i bilanciatori del carico delle applicazioni interni tra regioni sono sempre globali, a prescindere dal livello di servizio di rete. Sostituisci URL_MAP_NAME con il nome della mappa URL. La e i servizi di backend utilizzati dal bilanciatore del carico sono elencati nella risposta.

      gcloud compute url-maps list \
          --global
      
      gcloud compute url-maps describe URL_MAP_NAME \
          --global
      
    • a identificare i servizi di backend per un bilanciatore del carico delle applicazioni esterno regionale un bilanciatore del carico delle applicazioni interno regionale, devi prima identificare una mappa URL, quindi descrivere mappa. Sia le mappe URL che i servizi di backend per questi bilanciatori del carico sono a livello di regione. Sostituisci REGION_LIST con un elenco di delimitato da virgole di Regioni Google Cloud su cui eseguire query. Sostituisci URL_MAP_NAME con il nome della mappa URL e REGION con la relativa regione. I servizi di backend utilizzati dal bilanciatore del carico sono elencate nella risposta.

      gcloud compute url-maps list \
          --regions=REGION_LIST
      
      gcloud compute url-maps describe URL_MAP_NAME \
          --region=REGION
      
  2. Identifica un controllo di integrità. Consulta la sezione Elenco dei controlli di integrità.

  3. Associa un controllo di integrità al servizio di backend utilizzando il comando compute backend-services update. Ciascun servizio di backend deve fare riferimento a un singolo controllo di integrità. Nella seguenti comandi, sostituisci BACKEND_SERVICE_NAME con il nome del servizio di backend, HEALTH_CHECK_NAME con il nome del e, se necessario, REGION con la regione Google Cloud del servizio di backend, il controllo di integrità entrambi.

    • Per modificare il controllo di integrità per un bilanciatore del carico di rete passthrough interno: il servizio di backend del bilanciatore del carico di rete passthrough interno è regionale. Può fare riferimento a un un controllo di integrità a livello di regione o globale. L'esempio seguente mostra un di riferimento per controllo di integritàà a livello di regione. Se utilizzi un controllo di integrità globale con il bilanciatore del carico di rete passthrough interno, utilizza --global-health-checks anziché --health-checks-region.

      gcloud compute backend-services update BACKEND_SERVICE_NAME \
          --region=REGION \
          --health-checks=HEALTH_CHECK_NAME \
          --health-checks-region=REGION
      
    • a modificare il controllo di integrità per un bilanciatore del carico di rete passthrough esterno: un servizio di backend del bilanciatore del carico di rete passthrough esterno è regionale. Può fare riferimento a un controllo di integrità a livello di regione.

      gcloud compute backend-services update BACKEND_SERVICE_NAME \
          --region=REGION \
          --health-checks=HEALTH_CHECK_NAME \
          --health-checks-region=REGION
      
    • Per modificare il controllo di integrità per un bilanciatore del carico di rete proxy esterno globale, bilanciatore del carico di rete proxy classico, bilanciatore del carico delle applicazioni esterno globale, bilanciatore del carico delle applicazioni classico o un bilanciatore del carico delle applicazioni interno tra regioni: sia il backend e il controllo di integrità sono globali per questi bilanciatori del carico. I bilanciatori del carico delle applicazioni possono fare riferimento a più un controllo di integrità se fa riferimento a più di un servizio di backend.

      gcloud compute backend-services update BACKEND_SERVICE_NAME \
          --global \
          --health-checks HEALTH_CHECK_NAME \
          --global-health-checks
      
    • Per modificare il controllo di integrità per un bilanciatore del carico delle applicazioni esterno regionale, un bilanciatore del carico di rete proxy esterno regionale, un bilanciatore del carico delle applicazioni interno regionale o Network Load Balancer proxy interno regionale: sia il backend e il controllo di integrità sono a livello di regione. Alcuni bilanciatori del carico fare riferimento a più controllo di integrità se possono fare riferimento a più controlli di integrità di servizio di backend.

      gcloud compute backend-services update BACKEND_SERVICE_NAME \
          --region=REGION \
          --health-checks=HEALTH_CHECK_NAME \
          --health-checks-region=REGION
      

API

  1. Puoi elencare i servizi di backend con backendServices.list chiamata API.

  2. Visualizza i controlli di integrità.

  3. Per associare un controllo di integrità a un servizio di backend, utilizza una di queste API chiamate:

Associa i controlli di integrità legacy ai bilanciatori del carico di rete passthrough esterni basati su pool di destinazione

Per associare un controllo di integrità legacy a un nuovo bilanciatore del carico di rete passthrough esterno, consulta Configurare un bilanciatore del carico di rete passthrough esterno con una destinazione pool. Questa sezione descrive come associare un controllo di integrità legacy a un bilanciatore del carico di rete passthrough esterno basato su pool di destinazione.

In questa sezione si presuppone che tu abbia già:

Console

per associare un controllo di integrità a un pool di destinazione esistente basato su un pool di destinazione. bilanciatore del carico di rete passthrough esterno:

  1. Vai alla pagina Bilanciamento del carico nella console Google Cloud.
    Vai alla pagina Bilanciamento del carico
  2. Fai clic su un bilanciatore del carico per visualizzarne i dettagli.
  3. Fai clic su Modifica , quindi su Configurazione backend.
  4. Scegli un controllo di integrità legacy dal menu Controllo di integrità. (solo vengono mostrati i controlli di integrità legacy idonei.
  5. Fai clic su Aggiorna.

gcloud

per associare un controllo di integrità a un pool di destinazione esistente basato su un pool di destinazione. bilanciatore del carico di rete passthrough esterno:

  1. Identifica i pool di destinazione. Un bilanciatore del carico di rete passthrough esterno ha almeno uno di destinazione e potrebbe avere un pool di backup secondario.

    gcloud compute target-pools list
    
  2. Identifica un controllo di integrità precedente utilizzando il protocollo HTTP. Visualizza legacy controlli di integrità, se necessario.

  3. Associa il controllo di integrità precedente ai pool di destinazione. Nella seguenti comandi, sostituisci TARGET_POOL_NAME con il nome di il pool di destinazione, REGION con la sua regione, LEGACY_CHECK_NAME con il nome dell'integrità legacy controllo. Il controllo di integrità legacy deve utilizzare il protocollo HTTP.

    • Per rimuovere un controllo di integrità HTTP legacy da un pool di destinazione:

      gcloud compute target-pools remove-health-checks TARGET_POOL_NAME \
          --region=REGION \
          --http-health-check LEGACY_CHECK_NAME
      
    • Per aggiungere un controllo di integrità HTTP legacy a un pool di destinazione:

      gcloud compute target-pools add-health-checks TARGET_POOL_NAME \
          --region=REGION \
          --http-health-check LEGACY_CHECK_NAME
      

API

  1. Puoi elencare i pool di destinazione con targetPools.list chiamata API.

  2. Visualizza i controlli di integrità legacy e identificare un controllo di integrità HTTP legacy.

  3. Per associare un controllo di integrità HTTP precedente a un pool di destinazione, utilizza l'API chiama targetPools.addHealthCheck.

Controlla lo stato del controllo di integrità

Dopo aver associato un controllo di integrità a un servizio di backend o a un pool di destinazione, puoi ottenere istantaneamente lo stato del controllo di integrità per i backend del bilanciatore del carico.

Console

  1. Vai alla pagina di riepilogo del bilanciamento del carico.
    Vai alla pagina Bilanciamento del carico pagina
  2. Fai clic sul nome di un bilanciatore del carico.
  3. In Backend, controlla la colonna Stato integro. Lo stato di integrità è per ogni gruppo di istanza di backend o gruppo di endpoint di rete.

gcloud

  • Per tutti i bilanciatori del carico, ad eccezione dei bilanciatori del carico di rete passthrough esterni basati su pool di destinazione, Identificare il nome e l'ambito (globale o regionale) del servizio di backend. Per un elenco completo dei bilanciatori del carico e degli ambiti, consulta Backend Google Cloud.

    Utilizza la compute backend-services get-health sostituendo NAME con il nome del servizio di backend, e REGION con la rispettiva regione, se necessario.

    • Per ottenere lo stato di integrità istantaneo di un servizio di backend globale:

      gcloud compute backend-services get-health GLOBAL_BACKEND_SERVICE_NAME \
          --global
      
    • Per ottenere lo stato di integrità istantaneo di un servizio di backend regionale:

      gcloud compute backend-services get-health REGIONAL_BACKEND_SERVICE_NAME \
          --region=REGION
      
  • Per i bilanciatori del carico di rete passthrough esterni basati su pool di destinazione, identifica il nome e regione del pool di destinazione del bilanciatore del carico, quindi usa compute target-pools get-health sostituendo NAME con il nome del pool di destinazione, e REGION con la rispettiva regione.

    gcloud compute target-pools get-health TARGET_POOL_NAME \
        --region=REGION
    

API

  • Per tutti i bilanciatori del carico, ad eccezione dei bilanciatori del carico di rete passthrough esterni basati su pool di destinazione, Identificare il nome e l'ambito (globale o regionale) del servizio di backend. Per un elenco completo dei bilanciatori del carico e degli ambiti, consulta Backend Google Cloud.

  • Per i bilanciatori del carico di rete passthrough esterni basati su pool di destinazione, utilizza targetPools.getHealth