GNU/Linux >> Znalost Linux >  >> Linux

Jak automaticky synchronizovat dva webové servery v Linuxu

Když přejdete z linuxového nadšence na linuxového administrátora/superuživatele v produkčním/serverovém prostředí, začnete chápat smysl práce s více než jedním webovým serverem.

Právě teď možná nevidíte logiku v tom, že dva podobné webové servery běží současně, ale přijde čas, kdy další serverové prostředí vytvoří ideální plán zálohování pro váš primární server.

[ Také by se vám mohlo líbit:Lsyncd – Synchronizace místních adresářů se vzdáleným Linuxem ]

Chcete-li snížit nebo zabránit nevyhnutelným výpadkům webových stránek, měl by být sekundární webový server nastaven tak, aby automaticky převzal řízení od primárního webového serveru. Tento proces nastavení, který umožňuje dvěma webovým serverům komunikovat mezi sebou, se nazývá synchronizace serveru.

Výhody synchronizace webového serveru

Pojďme diskutovat o některých výhodách synchronizace webového serveru.

  • Když jsou data zkopírována z primárního serveru do/ze sekundárního serveru, jsou zachována oprávnění, vlastnictví a další nastavení speciálních atributů z výchozího prostředí serveru.
  • Budete mít co do činění s menší šířkou pásma, protože cílené datové přenosy se řídí protokoly přenosu dat pro kompresi a dekompresi.
  • Pokud primární webový server již má soubory a adresáře smazané uživatelem a sekundární server má tyto soubory a adresáře stále na svém místě, proces přenosu dat a synchronizace tyto soubory a adresáře ověří a odstraní, aby se zajistilo, že adresář obou serverů struktury jsou synchronizované.
  • Akce synchronizace obou serverů se vztahuje také na změněné datové bajty a bloky.
  • Pokud se obáváte o šifrování dat během operací přenosu dat mezi servery, tento mechanismus synchronizace webových serverů podporuje SSH; šifrovaný síťový protokol.

Požadavky na synchronizaci dvou webových serverů

V tomto případě musíte mít spuštěné dva webové servery a jejich příslušné názvy domén nebo IP adresy. V mém případě použiji následující dva servery jako své primární a sekundární webové servery:

Main server IP address: 3.135.207.198
Secondary server IP address: 18.118.208.79

Instalace Rsync pro synchronizaci dvou webových serverů

Aby byla operace synchronizace našich webových serverů úspěšná, budeme potřebovat pomoc nástroje rsync. Můžete jej nainstalovat na preferovaný distribuční server Linuxu některým z následujících příkazů pro instalaci balíčku. Instalace Rsync by měla probíhat na hlavním serveru i na sekundárním serveru, který chcete synchronizovat.

$ sudo apt-get install rsync     [On Debian, Ubuntu and Mint]
$ sudo yum install rsync         [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
$ sudo emerge -a sys-apps/rsync  [On Gentoo Linux]
$ sudo pacman -S rsync           [On Arch Linux]
$ sudo zypper install rsync      [On OpenSUSE]    

Synchronizace dvou webových serverů pomocí Rsync v Linuxu

Před provedením synchronizace se ujistěte, že jste identifikovali svého uživatele rsync na hlavním/primárním serveru. Můžete použít již zavedený root uživatele na vašem systému Linux. Na mé straně použiji již existující ubuntu uživatel.

Dále musíte identifikovat adresáře serveru, které chcete synchronizovat na svých aktivních primárních a sekundárních serverech. Nakonec se pokusím synchronizovat adresáře webového serveru /var/www které existují na obou serverech.

Na svém záložním/sekundárním serveru spustím následující rsync příkaz, který ukazuje a spojuje jeho /var/www adresář s adresářem na hlavním/primárním serveru.

$ sudo rsync -avzhe ssh [email protected]:/var/www/ /var/www/

Podle provedeného rsync z výše uvedeného snímku obrazovky byly soubory a adresáře, které existovaly na hlavním serveru, synchronizovány a zkopírovány na záložní server.

[ Také by se vám mohlo líbit:Rsync Zobrazit pokrok při synchronizaci souborů v Linuxu ]

Automatická synchronizace dvou webových serverů pomocí Rsync v Linuxu

Nemusíte pokaždé synchronizovat své webové servery ručně. Chcete-li zautomatizovat tuto operaci synchronizace, zvažte následující dva kroky:

Krok 1:Konfigurace přihlášení SSH bez hesla

Na vašem záložním/sekundárním serveru potřebujete veřejný a soukromý klíč. Můžete jej vygenerovat z následujícího příkazu:

$ sudo ssh-keygen -t rsa -b 2048 

Nezapomeňte spustit výše uvedený příkaz na záložním serveru.

Nezapomeňte také přeskočit nastavení přístupové fráze stisknutím [Enter ] a ponechte pole přístupové fráze prázdné.

Dále je třeba tyto vygenerované veřejné a soukromé klíče zkopírovat na primární/hlavní server ze záložního serveru. K dosažení tohoto cíle použijte příkaz podobný následujícímu:

$ sudo ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]

Nyní přejděte na hlavní server a potvrďte nově přidané klíče na vašem hlavním serveru:

$ ssh [email protected]
$ sudo nano .ssh/rsa

Nyní jsme hotovi se sdílením požadovaných souborů klíčů s našimi dvěma servery (primárním a sekundárním).

Krok 2:Automatická synchronizace dvou webových serverů prostřednictvím úlohy Cron

Na záložním/sekundárním serveru nakonfigurujte soubor crontab pro automatickou synchronizaci serveru:

$ sudo crontab -e

Budete požádáni o výběr editoru pro otevření souboru crontab:

Na konec otevřeného souboru přidejte plán úlohy cron pro synchronizaci vašich serverů:

*/5   *   *   *   *   rsync -avzhe ssh [email protected]:/var/www/ /var/www/

Podle výše uvedeného záznamu úlohy cron v souboru crontab se hlavní a primární webový server automaticky synchronizují každých pět minut.

Jakmile uložíte změny a ukončíte editor, úloha cron by se měla sama nainstalovat a aktivovat.

$ sudo crontab -e

Automatická synchronizace vašeho primárního webového serveru se sekundárním webovým serverem vás ušetří od nutnosti řešit problémy s výpadky serveru, chyby a také vytvoří dokonalý plán zálohování pro produktivní a vysoce provozovaný webový server, který chcete zůstat aktivní.


Linux
  1. Takto funguje linuxový server

  2. Jak nainstalovat virtualizační Linux Server

  3. Nejlepší webové linuxové servery

  1. Jak nainstalovat webový server Apache na Debian 10 Linux

  2. Jak připojit váš linuxový server k projektu fondu NTP

  3. Jak nainstalovat webový server Nginx na Linux

  1. Jak synchronizovat čas na serveru Linux pomocí Chrony

  2. Jak zpevnit a zabezpečit webový server NGINX v Linuxu

  3. Jak nainstalovat Grafana na servery Linux