GNU/Linux >> Linux Esercitazione >  >> Linux

Come condividere le risorse tra più server web?

Soluzione 1:

Esistono diversi modi per farlo in base alle tue esigenze.

  • Utilizza un file server centrale montato con fx NFS sui server web
  • Come sopra, ma ridondante, quindi se uno va giù l'altro prende il sopravvento
  • Utilizzare una sorta di strumento di sincronizzazione (rsync per esempio) e ospitare i file localmente sui server web. Quindi imposta un cronjob per sincronizzare i file tra i server a un intervallo specifico.
  • Utilizza un CDN come Amazon S3, Akamai ecc.

I primi due sono i migliori se hai molti nuovi file in arrivo. La terza sarebbe la soluzione ideale se non aggiungi o modifichi file così spesso poiché gli utenti riceveranno 404 su contenuti statici non ancora sincronizzati.

L'ultima opzione potrebbe essere ideale in molti modi, ma potrebbe anche rivelarsi la più costosa delle 4. Dovresti anche riscrivere i tuoi siti web per supportarla.

Soluzione 2:

Un altro ottimo modo per ridurre il carico sui server web ed eseguire il bilanciamento del carico è con squid (vale a dire squid3) Configuralo come proxy inverso con memorizzazione nella cache. Se lo imposti in questo modo, memorizzerà nella cache contenuti statici come immagini ecc. Sull'HDD (predefinito) o sulla RAM (più veloce e migliore). È in grado di eseguire il round robin anche su altri server squid se un particolare nodo è sovraccarico.

Soluzione 3:

Una soluzione a questa sfida che ho impiegato è avere la copia di lettura/scrittura principale dei file su un'unità NFS condivisa, ma anche mantenere una copia di sola lettura su ciascun server Web in modo che un errore dell'host NFS metta l'accesso ai file in modalità di sola lettura piuttosto che perderli completamente.

  • I file risiedono sull'host centrale, condivisi con host web tramite montaggio NFS
  • rsync viene eseguito ogni 15 minuti per mantenere aggiornata la copia di sola lettura su ciascun host web.
  • Un check_link lo script bash viene eseguito ogni minuto per assicurarsi che il montaggio NFS sia ancora presente e, in caso contrario, scambia un collegamento simbolico alla copia di sola lettura.

Maggiori dettagli si trovano in questo articolo da quando ho impostato questo sistema per la prima volta.

Vantaggi:

  • Le letture dei file sono altamente disponibili
  • Nessuna race condition per le scritture di file
  • I nuovi file sono immediatamente disponibili per tutti gli host web.

Aspetti negativi:

  • un po' complesso.
  • il numero di copie di sola lettura scala con il numero di host web, il che potrebbe essere eccessivo se ne hai molti più di due.
  • Le scritture di file non sono altamente disponibili.
  • Potenziale fino a 1 minuto di inattività prima di passare alla copia di sola lettura.

Linux
  1. Come trasferire file tra server in Linux utilizzando SCP e FTP

  2. Come modificare più file e passare da uno all'altro in VIM utilizzando i buffer

  3. Come comprimere più file su Linux

  4. Come modificare l'estensione di più file?

  5. Come rinominare più file usando Trova?

Come modificare più file usando Vim Editor

Come scaricare file da server Linux remoti

Come sincronizzare automaticamente i file tra due server Linux

Come condividere file di giochi Steam tra Linux e Windows

Come utilizzare Rsync per copiare/sincronizzare file tra server

Come condividere file tra Ubuntu e Windows 10?