Migrazione dal bilanciatore di carico Nginx a RELIANOID ADC

Visualizza categorie

Migrazione dal bilanciatore di carico Nginx a RELIANOID ADC

6 min letto

Panoramica #

Il bilanciamento del carico tra più istanze di un'applicazione è un ottimo modo per migliorare le prestazioni riducendo il sovraccarico e la latenza e aumentando la consegna memorizzando nella cache le risorse statiche.

Sebbene Nginx abbia un ottimo scopo nel servizio web, la piattaforma presenta molte complessità. Con l'aumentare del traffico, diventa più difficile bilanciare il carico del traffico di livello 4 e di livello 7 senza sacrificare la sicurezza. Per questo motivo, è necessario un sistema di bilanciamento del carico con funzionalità più avanzate che offra il controllo su un'applicazione aziendale tramite un'interfaccia utente di facile accesso.

In questo articolo, discuteremo come trasferire le configurazioni del sistema di bilanciamento del carico Nginx RELIANOID ADC.

Prerequisiti #

Per seguire questa guida, assicurati di soddisfare i seguenti parametri di riferimento.

  1. Un'istanza di RELIANOID l'appliance deve essere installata sulla workstation o su una piattaforma cloud. Richiedi una valutazione se non hai ancora installato un'istanza.
  2. Devi avere accesso al pannello web. Se non lo fai, segui questo veloce guida d'installazione.
  3. Nginx è un gioco da ragazzi per te, ma non sei soddisfatto delle sue capacità di bilanciamento del carico. Quindi, hai bisogno RELIANOID per intervenire.
  4. Un server virtuale è essenziale per distribuire il traffico ai server back-end. Se non ne hai creato uno, segui questa guida su creazione di un server virtuale di livello 4 e livello 7 (Farm)

Concetti basilari #

a monte: La direttiva upstream definisce un cluster di server che ospitano un'applicazione web. Di solito, upstream è definito all'interno del contesto http. In RELIANOID ADC, il Servizi La sezione contiene una sottosezione back-end per la gestione dei server host.

ascoltare: L'opzione di ascolto definisce quale porta Nginx ascolterà il traffico in entrata dal web. RELIANOID utilizza un Porta virtuale per ascoltare il traffico in entrata attraverso a Fattoria.

posizione: Il contesto della posizione consente di fornire istruzioni sulle directory per recuperare i dati dai file HTML.

proxy_pass: Questa direttiva viene utilizzata quando si specifica la posizione dei server proxy. Di solito, la posizione è il APPREZZIAMO assegnato alla direttiva a monte. Un concetto simile in RELIANOID è un Fattoria. Qui è dove si definiscono un indirizzo IP e una porta che sono connessi a un servizio contenente server back-end.

Server: Questa direttiva specifica un server che ospita un'applicazione utilizzando il suo indirizzo IP nei formati ipv4 o ipv6. Il blocco del server è dove si definisce il file posizione direttiva, la ascoltatore includere direttiva. È possibile definire un server in RELIANOID tramite la BACKEND .

ssl_ciphers e ssl_protocols: Le direttive ssl_ciphers e ssl_protocol vengono utilizzate quando si limita la connessione alle versioni SSL/TLS più forti o più recenti. Alcuni di questi protocolli includono TLSV1 e TLSV2. La cifratura predefinita con nginx è ALTA:!aNULL:!MD5. Per utilizzare cifrature e personalizzare i protocolli SSL in RELIANOID, è necessario utilizzare il listener HTTPS. Accedi al parametri HTTPS all'interno delle impostazioni globali di quella Fattoria.

Configurazioni di esempio: abilitazione delle sessioni permanenti #

La persistenza della sessione, nota anche come sticky session, è una tecnica utilizzata nel bilanciamento del carico per garantire che le richieste di un client vengano inviate allo stesso server in un cluster per la durata di una sessione. Questo viene spesso utilizzato per mantenere lo stato o per garantire che le risorse, come file o dati, siano disponibili per il client durante la sessione. Esistono diversi modi per implementare la persistenza della sessione, incluso l'utilizzo di cookie o l'affinità dell'indirizzo IP. Il metodo utilizzato dipende dai requisiti specifici dell'applicazione e dall'architettura di bilanciamento del carico.

Configurazioni Nginx #

Nginx ha principalmente due metodi per abilitare la persistenza della sessione, ovvero utilizzando il file hash_ip metodo di bilanciamento del carico e l'uso di biscotti appiccicosi.

IP_hash: Il metodo di bilanciamento del carico hash_ip acquisisce gli indirizzi IP di destinazione e di origine e li utilizza per formare un'identità univoca per una connessione stabilita.

server backend upstream { hash_ip; server192.168.0.112; server192.168.0.115; }

biscotto appiccicoso: È inoltre possibile utilizzare i cookie appiccicosi definendo a biscotto appiccicoso opzione all'interno del contesto a monte.

server backend upstream { server 192.168.0.112; server192.168.0.116; cookie appiccicoso zensessionid scade=2h domain=.example.com path="/"; }

zensessionid identifica in modo univoco un cookie e il suo server associato. Dalla configurazione di cui sopra, il cookie scade in 2 ore.

RELIANOID configurazioni #

Per abilitare la persistenza dei cookie durante l'utilizzo RELIANOID bilanciatore del carico:

  1. Vai su LSLB> Fattorie e fare clic su Modifica Icona su una fattoria http.
  2. Passare alla Servizi Tab.
  3. Scorri fino a raggiungere il persistenza .
  4. Per abilitare la persistenza utilizzando l'indirizzo IP del client, selezionare la persistenza IP: cliente indirizzo.
  5. oracle_jd_edwards_load_balancing_farm

  6. Per abilitare la persistenza della sessione utilizzando un cookie, ignorare il passaggio 4 e lasciare il file Persistenza campo a Nessuna persistenza.
  7. Attiva inserto biscotto pulsante e compilare il Nome, dominio, sentiero, e Tempo di vivere(TTL) in secondi.
  8. Aggiorna le impostazioni facendo clic su APPLICA pulsante.

Configurazioni di esempio: creazione di regole di reindirizzamento #

Le regole di reindirizzamento vengono utilizzate per reindirizzare automaticamente una pagina Web a un'altra pagina Web. Viene spesso utilizzato quando un sito Web ha modificato la struttura o il contenuto o quando una pagina è stata spostata in una nuova posizione. Le regole di reindirizzamento possono essere utilizzate per garantire che gli utenti e i motori di ricerca vengano indirizzati alla pagina corretta e per evitare collegamenti interrotti. Esistono diversi tipi di reindirizzamenti che possono essere utilizzati, inclusi reindirizzamenti 301, reindirizzamenti 302 e reindirizzamenti meta refresh. Il tipo di reindirizzamento utilizzato dipende dalle esigenze specifiche del sito Web e dal motivo del reindirizzamento.

Configurazioni Nginx #

Per creare una regola di reindirizzamento, dichiariamo una direttiva return all'interno dei contesti server o location. La direttiva return viene utilizzata quando si desidera reindirizzare gli utenti da un URL a un altro o da un canale non protetto a un server protetto.
Le regole di reindirizzamento di Nginx seguono la seguente sintassi.

return ( 301 | 302 | 303 | 307 ) URL di reindirizzamento;

Ecco una configurazione di esempio durante il reindirizzamento degli utenti da un http non protetto a una posizione https protetta.

server { # Reindirizza gli utenti all'ascolto HTTPS 80; nome_server test.relianoid.com www.test.relianoid.com; return 301 https://www.test.relianoid.com$request_uri; }

Migliori $ request_uri L'opzione garantisce che tutto il traffico http sullo stesso dominio venga reindirizzato all'https protetto anche se il percorso cambia.

RELIANOID configurazioni #

Per ottenere un risultato simile con RELIANOID ADC.

  1. Assicurati di avere due fattorie in esecuzione, entrambe HTTP and https. Fare riferimento a questo articolo su come creare layer 4 e layer load farm
  2. Vai su LSLB >> Fattorie e fare clic sul Modifica icona su una fattoria https.
  3. individuare il Servizi scheda e aprire uno qualsiasi dei servizi configurati per modificarli. Se non ce n'è, fare clic su Nuovo servizio pulsante e crearne uno.
  4. Scorri fino a raggiungere il Reindirizzare sezione e attivare Abilita reindirizzamento.
  5. oracle_jd_edwards_load_balancing_farm

  6. Seleziona il tipo di reindirizzamento Aggiungere, codice di reindirizzamento 301 e scrivi l'URL completo di dove reindirizzare. In questo esempio, usiamo http://10.0.0.18
  7. Aggiornare le configurazioni facendo clic su APPLICA pulsante.

Configurazioni di esempio: riscrittura delle regole di intestazione #

Le intestazioni HTTP sono essenziali per host e client per condividere informazioni aggiuntive oltre alle richieste di query. Queste intestazioni consentono ai clienti di accedere alle risorse nelle loro lingue preferite e di accedere alle pagine Web ottimizzate per i loro dispositivi. I server Web possono utilizzare queste informazioni per ottimizzare il tipo di informazioni da servire ai client utilizzando le intestazioni dei cookie.

Sfortunatamente, l'utilizzo di molte intestazioni di risposta potrebbe rivelare molte informazioni sensibili che gli hacker potrebbero utilizzare per tentativi di exploit. Pertanto, è essenziale rimuovere le intestazioni non attendibili o modificare alcuni contenuti. Questo aiuta a prevenire attacchi dannosi come il cross-site scripting fornendo Protezione X-XSS.

Configurazioni Nginx #

Nginx fornisce 2 direttive per la modifica e l'aggiunta di intestazioni. Questi includono aggiungi_intestazione and more_set_headers. Usa queste intestazioni di posizione all'interno del blocco di posizione.

Esempio di configurazione utilizzando aggiungi_intestazione in nginx.

posizione / { ... add_header Server “nomeserver”; ... }

more_set_headers non è installato nativamente in Nginx, quindi gli utenti di solito installano questo plugin manualmente prima di compilare nginx.

Esempio di configurazione utilizzando more_set_headers.

posizione /{ ... more_set_headers Server “nomeserver”; ... }

RELIANOID configurazioni #

  1. In primo luogo, andare a LSLB>>Fattorie e seleziona un file HTTP farm di cui vorresti impostare le regole.
  2. Sotto Global impostazioni, fare clic sul impostazioni avanzate scheda.
  3. Nelle impostazioni avanzate, Seleziona il Consentire a tutti opzione all'interno di riscrivi le intestazioni di posizione regola.
  4. oracle_jd_edwards_load_balancing_farm

  5. Aggiornare le configurazioni facendo clic su APPLICA pulsante.
  6. Scorri fino alla sezione delle intestazioni e fai clic su Crea regola pulsante.
  7. Nelle Tipo opzione a discesa, scegline una adatta alla tua applicazione. In questo esempio, useremo Risposta: aggiungi intestazione.
  8. oracle_jd_edwards_load_balancing_farm

  9. Immettere l'intestazione di cui si desidera modificare il valore. Per questo esempio, cambieremo il valore di server intestazione.
  10. Salvare le configurazioni facendo clic su APPLICA pulsante.
  11. Restart farm per rendere effettive le configurazioni.

Risorse addizionali #

Utilizzo del programma Let's encrypt per generare automaticamente un certificato SSL.
Bilanciamento del carico Datalink/Uplink Con RELIANOID ADC.
Bilanciamento del carico DNS con RELIANOID ADC.
Protezione dagli attacchi DDoS.
Monitoraggio di applicazioni, integrità e rete nell'ADC Relianoid.
Configurazione del Web Application Firewall.
Configurazione dei certificati SSL per il bilanciamento del carico.

📄 Scarica questo documento in formato PDF #

    EMAIL: *

    Sviluppato da BetterDocs