Varnish cache je bezplatný a opensource vysoce výkonný HTTP akcelerátor používaný ke zrychlení rychlosti, jakou webové servery obsluhují webové stránky.
Mezipaměť ukládá webové stránky do paměti, takže webový server nemusí webové stránky obsluhovat znovu pokaždé, když si je klienti vyžádají.
To v konečném důsledku zvyšuje rychlost vašeho serveru, což zvyšuje vaše šance na vyšší hodnocení od Googlu. V tomto článku se dozvíte, jak nainstalovat mezipaměť Varnish na CentOS 7.
Krok 1:Instalace úložiště EPEL
Prvním krokem je instalace EPEL, což je zkratka pro Extra Packages for Enterprise Linux. Obsahuje extra balíčky a závislosti, které jsou vyžadovány pro hladký chod balíčků.
sudo yum install -y epel-release
Ukázkový výstup
Krok 2:Nainstalujte Nginx
Další na řadě je instalace webového serveru Nginx.
Chcete-li nainstalovat Nginx, spusťte příkaz
yum install nginx -y
Ukázkový výstup
Krok 3:Spusťte a povolte Nginx
Jakmile úspěšně nainstalujete Nginx, nezapomeňte jej spustit a povolit při spouštění pomocí níže uvedených příkazů
Ukázkový výstup
systemctl start nginx
systemctl enable nginx
Chcete-li potvrdit, že Nginx je spuštěn a spuštěn, spusťte příkaz:
systemctl status nginx
Ukázkový výstup
Ve výchozím nastavení běží Nginx na portu 80. Chcete-li to ověřit, použijte příkaz netstat
netstat -pnltu
Ukázkový výstup
Krok 4:Instalace laku
Dále nainstalujte lak pomocí příkazu níže
yum install varnish
Ukázkový výstup
Krok 5. Spusťte a povolte lak
Po úspěšné instalaci mezipaměti Varnish se musíme ujistit, že je v provozu.
Pro spuštění mezipaměti Varnish spusťte příkaz
systemctl start varnish
Chcete-li povolit mezipaměť Varnish při spuštění
systemctl enable varnish
Ukázkový výstup
Chcete-li potvrdit, že mezipaměť Varnish běží, spusťte příkaz
systemctl status varnish
Ukázkový výstup
Skvělé, Varnish funguje podle očekávání.
Další informace, jako jsou data o vydání, verzi a instalaci, můžete zobrazit pomocí příkazu
rpm -qi
Ukázkový výstup
Krok 6:Nakonfigurujte Varnish jako reverzní proxy pro Nginx
Protože mezipaměť Varnish je umístěna před webovým serverem, aby obsluhovala požadavky HTTP, musíme změnit výchozí port Nginx na port 8080 a později nakonfigurovat Varnish tak, aby naslouchal na portu 80.
Otevřete konfigurační soubor Nginx
vim /etc/nginx/nginx.conf
Vyhledejte blok Server a proveďte změny podle obrázku
.....
server {
listen 8080 default_server;
listen [::] 8080 default_server;
....
}
Uložte a ukončete textový editor.
Aby se změny projevily, restartujte Nginx
systemctl restart nginx
Nyní by měl Nginx běžet na portu 8080
Dále přejděte do konfiguračního souboru Varnish
vim /etc/varnish/default.vcl
Vyhledejte výchozí blok backendu a ujistěte se, že se podobá řádkům zobrazeným níže
backend default {
.host = "127.0.0.1";
.port = "8080";
}
Poznámka:
.host =Odkazuje na IP adresu backendového webového serveru.
.port =Odkazuje na port backendového webového serveru, na kterém běží.
Uložte a ukončete textový editor.
Musíme nakonfigurovat Varnish, aby naslouchal portu 80. Přejděte na konfigurační soubor níže
vim /etc/varnish/varnish.params
Upravte hodnotu 'VARNISH_LISTEN_PORT'
linka na HTTP port 80.
VARNISH_LISTEN_PORT=80
Uložit konec ukončí textový editor.
Restartujte lak.
systemctl restart varnish
Znovu ověřte port, na kterém Varnish naslouchá
netstat -plntu
Z výše uvedeného výstupu jasně vidíme, že Nginx naslouchá na portu 8080, zatímco Varnish naslouchá na portu 80, což je přesně to, co chceme.
Nyní nakonfigurujeme firewall.
Krok 7:Nainstalujte a nakonfigurujte bránu firewall
Musíme nainstalovat firewall a povolit protokoly http a https.
Chcete-li nainstalovat firewall, spusťte
yum install firewalld -y
Ukázkový výstup
Nyní spusťte a povolte spuštění brány firewall při spuštění.
systemctl start firewalld
systemctl enable firewalld
Ukázkový výstup
Nyní povolme porty 80 (http) a 443 (https)
firewall-cmd --add-port=80/tcp --zone=public --permanent
firewall-cmd --add-port=443/tcp --zone=public --permanent
Nakonec znovu načtěte firewall, aby se změny projevily.
firewall-cmd --reload
Skvělý! Jedinou zbývající položkou je otestovat naši konfiguraci.
Krok 8:Testování konfigurace laku
Chcete-li otestovat lak, spusťte následující příkaz
curl -I localhost
Získáte výstup podobný tomuto:
Chcete-li zkontrolovat protokoly, spusťte následující příkaz.
varnishncsa
Otevřete prohlížeč a vyhledejte adresu svého serveru
https://server-ip
Zpět na příkazový řádek si všimnete generování některých protokolů
Tím se dostáváme na konec tohoto tutoriálu. Úspěšně jsme nainstalovali Varnish a nakonfigurovali jej tak, aby fungoval jako reverzní proxy k webovému serveru Nginx.