Lavorare con i pool di bilanciatori di carico delle applicazioni

Il pool " IBM Cloud® " Application Load Balancer for VPC (ALB) è un gruppo di destinazioni back-end che ricevono il traffico in entrata dal bilanciatore di carico e forniscono la risposta al traffico in uscita. Il pool comprende un protocollo, un algoritmo di bilanciamento del carico, destinazioni back-end (istanze VPC), controlli di integrità delle destinazioni back-end e persistenza delle sessioni.

In una configurazione di bilanciamento del carico, un ascoltatore è considerato la risorsa padre. È possibile associare i pool a quell'ascoltatore in due modi: facendovi riferimento direttamente o indirettamente. Per l'associazione diretta, configurare il pool come default_pool dell'ascoltatore. Per l'associazione indiretta, fare riferimento al pool da un altro pool attraverso una relazione failsafe_policy.target, assicurandosi che l'altro pool sia già collegato all'ascoltatore.

Le seguenti condizioni si applicano a tutti i pool di bilanciatori di carico delle applicazioni:

  • È possibile associare più pool a un listener quando i pool secondari sono configurati come " failsafe_policy.target".
  • Non sono ammesse assegnazioni di pool duplicate; ogni pool deve essere unico per ogni ascoltatore.
  • Questa funzione è disponibile solo per i bilanciatori di carico della famiglia Application.
  • Quando si utilizza un failsafe_policy.target, l' protocol deve corrispondere al protocollo del pool primario oppure utilizzare un protocollo compatibile consentito. Al momento, solo http e https sono considerati compatibili.

È possibile configurare i pool al momento della creazione di un bilanciatore di carico delle applicazioni o in un secondo momento con la seguente procedura:

  1. Dal browser, apri la console IBM Cloud ed effettua l'accesso al tuo account.

  2. Selezionare Menu di navigazione Icona del menu, quindi fare clic su Infrastrutture Icona VPC > Rete > Bilanciatori di carico.

  3. Fare clic sul bilanciatore di carico dell'applicazione che si desidera modificare.

  4. Nella pagina dei dettagli del bilanciatore di carico dell'applicazione, fare clic sulla scheda " Pool di back-end ", quindi selezionare il pool che si desidera modificare.

  5. Configura le seguenti opzioni per il tuo pool:

    • Nome della piscina: Il nome del pool. Idealmente, un nome che descriva la funzione svolta da questo pool.
    • Protocol: seleziona il protocollo per le tue istanze in questo pool. Il protocollo del pool deve corrispondere al protocollo del listener associato. Ad esempio, se il listener utilizza HTTP, anche il pool deve utilizzare HTTP. Allo stesso modo, se il listener utilizza TCP, anche il pool deve utilizzare TCP.

    HTTP invia i dati come testo in chiaro che può essere intercettato ed è considerato insicuro. Si raccomanda di scegliere il protocollo https invece di http. Per maggiori dettagli si veda: https://www.cloudflare.com/learning/ssl/why-is-http-not-secure/

    • Metodo: selezionare la modalità con cui il bilanciatore di carico distribuisce il traffico tra le istanze del pool:
      • Round robin: inoltra a turno le richieste a ciascuna istanza. Tutte le istanze ricevono approssimativamente un numero uguale di connessioni client.
      • Weighted round robin: inoltra le richieste a ciascuna istanza in proporzione al peso assegnato. Ad esempio, si hanno le istanze A, B e C, i cui pesi sono impostati rispettivamente su 60, 60 e 30. Le istanze A e B ricevono un numero uguale di connessioni e l'istanza C riceve metà del numero di connessioni.
      • Least connections: inoltra le richieste all'istanza con il minor numero di connessioni al momento attuale.
    • Session stickiness: seleziona se tutte le richieste durante la sessione di un utente vengono inviate alla stessa istanza.
    • Controllo dello stato: configura le modalità con cui il bilanciatore di carico verifica lo stato delle istanze. Per informazioni sulla configurazione dei controlli sanitari, vedere Lavorare con i controlli sanitari.
  6. Seleziona le impostazioni della richiesta (facoltativo) per i tuoi controlli di integrità. Se non si specificano valori, vengono utilizzate le impostazioni predefinite per il controllo dello stato di integrità. Sono disponibili le seguenti opzioni:

    • Metodo di richiesta: scegliere uno tra GET o POST. È possibile personalizzare le intestazioni delle richieste per entrambi i metodi. È possibile, se lo si desidera, personalizzare il corpo della richiesta quando si utilizza il metodo POST .
    • Corpo della richiesta: specificare il corpo della richiesta HTTP da utilizzare per i controlli di integrità. Se non viene specificato alcun valore, le richieste di controllo dello stato non includono un corpo della richiesta.
    • Intestazione host: includere l'intestazione host per garantire che la richiesta utilizzi il protocollo HTTP/1.1. In caso contrario, il sistema imposta come valore predefinito HTTP/1.0.
    • Aggiungi altre intestazioni di richiesta: aggiungi una o più intestazioni di richiesta aggiuntive.
      • Nome dell'intestazione: per il metodo di richiesta " GET ", scegliere una delle seguenti opzioni: content-type, accept, authorization, cookie, origin, referrer o user-agent. Per il metodo di richiesta " POST ", scegliere una delle seguenti opzioni: content-type, content-length, application-json o accept-encoding.
      • Valore: inserire il valore corrispondente al nome dell'intestazione specificato.
  7. Seleziona le impostazioni di risposta (facoltative) per i tuoi controlli di integrità. Personalizzare i valori della risposta corretti durante i controlli di integrità. Se non si specificano valori, vengono utilizzate le impostazioni predefinite per il controllo dello stato di integrità. Sono disponibili le seguenti opzioni:

    • Corpo della risposta: inserisci il testo del corpo della risposta.
    • Codice di risposta: è possibile specificare più valori separati da virgole compresi nell'intervallo 100-599. Per specificare un intervallo, utilizzare XX. Ad esempio, 2XX corrisponde alle risposte comprese nell'intervallo 200-299.
  8. Per aggiungere un pool di backup a un pool esistente, configurare un “ failsafe policy ”. Assicurarsi che nel bilanciatore di carico esista già almeno un altro pool.

    • Azione: l'azione da eseguire quando il pool primario non è più in condizioni ottimali. Quando si modifica un pool di back-end in un bilanciatore di carico, è possibile specificare una delle seguenti azioni di " failsafe policy ":
      • Avanti: - Il bilanciatore di carico indirizza le richieste verso un pool di backup designato. Questa operazione garantisce un percorso di failover pulito verso un altro gruppo di server applicativi. È necessario disporre di un pool di backup già configurato e pronto a ricevere il traffico.
      • Rifiuto: - Il bilanciatore di carico rifiuta tutte le richieste in entrata e il client non riceve alcuna risposta.
      • Errore: - Il bilanciatore di carico respinge le richieste con un codice di stato 503 " HTTP " ("Servizio non disponibile"), informando il client che il servizio è temporaneamente non disponibile.
    • Destinazione: Qui si seleziona il pool di backup. Se si specifica un pool di destinazione, il valore di " action " deve essere forward

Se le istanze nel pool non sono in condizioni ottimali e l'applicazione funziona correttamente, verificare i valori del protocollo di integrità e del percorso di integrità. Verificare inoltre che eventuali gruppi di sicurezza associati alle istanze consentano il traffico tra il bilanciatore di carico e le istanze.

Aggiungere membri ai pool del bilanciatore di carico delle applicazioni

È possibile aggiungere membri ai pool del bilanciatore di carico delle applicazioni dopo aver creato un bilanciatore di carico delle applicazioni, seguendo la procedura riportata di seguito:

  1. Dal browser, apri la console IBM Cloud ed effettua l'accesso al tuo account.
  2. Selezionare Menu di navigazione Icona del menu, quindi fare clic su Infrastrutture Icona VPC > Rete > Bilanciatori di carico.
  3. Fare clic sul bilanciatore di carico dell'applicazione che si desidera modificare.
  4. Nella pagina dei dettagli del bilanciatore di carico dell'applicazione, fare clic sulla scheda " Pool di back-end " e selezionare il pool che si desidera modificare.
  5. Seleziona la scheda "Membri " e poi clicca su "Aggiungi membri + ".
  6. Configurare le seguenti opzioni dei membri:
    • Tipo di iscrizione: selezionare una delle seguenti opzioni: Compute server instances oppure Other. I dispositivi di elaborazione includono le istanze di server virtuali e i servizi di elaborazione in cloud ( Bare Metal Servers ) all’interno della VPC selezionata. Per collegare altre istanze del server, ad esempio in PowerVS,, selezionare Other.
    • Aggiungi i dati dei membri:
      • Tipo: selezionare una delle seguenti opzioni: IP address oppure FQDN.
      • Valore dell'indirizzo: per il tipo " IP address ", inserire un indirizzo IP; per il tipo " FQDN", inserire il nome di dominio.
      • Porta del server: inserire il valore della porta del server.
  7. Fai clic su Aggiungi + per aggiungere un nuovo membro. Ripetere i passaggi precedenti per creare eventuali nuovi membri aggiuntivi prima di associare tutti i nuovi membri.
  8. Fai clic su " Allega " per salvare e allegare i tuoi membri.