Wyszukiwanie w witrynie

Zainstaluj Varnish Cache 5.2 dla Apache na Debianie i Ubuntu


Varnish Cache (zwany także Varnish) to wysokowydajny akcelerator HTTP typu open source o nowoczesnym wyglądzie. Przechowuje pamięć podręczną w pamięci, zapewniając, że zasoby serwera WWW nie są marnowane na tworzenie tej samej strony internetowej na żądanie klienta.

Można go skonfigurować tak, aby działał przed serwerem internetowym, aby wyświetlać strony znacznie szybciej, dzięki czemu strony internetowe ładują się szybciej. Obsługuje równoważenie obciążenia ze sprawdzaniem stanu backendów, przepisywaniem adresów URL, płynną obsługą „martwych” backendów i oferuje częściową obsługę ESI (Edge Side Zawiera).

W naszej serii artykułów dotyczących Varnish Cache pokazaliśmy, jak skonfigurować Varnish dla Nginx i Varnish dla serwerów WWW Apache w systemie CentOS 7.

W tym artykule wyjaśnimy, jak zainstalować i skonfigurować Varnish Cache 5.2 jako nakładkę na serwer Apache HTTP w systemach Debian i Ubuntu.

Wymagania:

  1. System Ubuntu zainstalowany ze stosem LAMP
  2. System Debian zainstalowany ze stosem LAMP
  3. System Debian/Ubuntu ze statycznym adresem IP

Krok 1: Zainstaluj Varnish Cache na Debianie i Ubuntu

1. Na szczęście istnieją wstępnie skompilowane pakiety dla najnowszej wersji Varnish Cache 5 (tzn. 5.2 w momencie pisania tego tekstu), więc możesz musisz dodać oficjalne repozytorium Varnish w swoim systemie, jak pokazano poniżej.

curl -L https://packagecloud.io/varnishcache/varnish5/gpgkey | sudo apt-key add -

Ważne: jeśli używasz Debian, zainstaluj pakiet debian-archive-keyring w celu weryfikacji oficjalnych repozytoriów Debiana .

sudo apt-get install debian-archive-keyring

2. Następnie utwórz plik o nazwie /etc/apt/sources.list.d/varnishcache_varnish5.list, który zawiera poniższą konfigurację repozytorium. Pamiętaj, aby zastąpić ubuntu i xenial swoją dystrybucją i wersją Linuksa.

deb https://packagecloud.io/varnishcache/varnish5/ubuntu/ xenial main  
deb-src https://packagecloud.io/varnishcache/varnish5/ubuntu/ xenial  main

3. Następnie zaktualizuj repozytorium pakietów oprogramowania i zainstaluj pamięć podręczną lakieru za pomocą poniższych poleceń.

sudo apt update
sudo apt install varnish

4. Po zainstalowaniu Varnish Cache główne pliki konfiguracyjne zostaną zainstalowane w katalogu /etc/varnish/.

  • /etc/default/varnish – plik konfiguracyjny środowiska lakierniczego.
  • /etc/varnish/default.vcl – główny plik konfiguracyjny lakieru, napisany przy użyciu języka konfiguracji Vanish (VCL).
  • /etc/varnish/secret – tajny plik lakieru.

Aby potwierdzić, że instalacja programu Varnish zakończyła się pomyślnie, uruchom następujące polecenie, aby zobaczyć wersję.

varnishd -V

Krok 2: Skonfiguruj Apache do pracy z pamięcią podręczną Varnish

5. Teraz musisz skonfigurować Apache do współpracy z Varnish Cache. Domyślnie Apache nasłuchuje na porcie 80, musisz zmienić domyślny port Apache na 8080, aby umożliwić mu działanie za buforowaniem Varnish.

Otwórz więc plik konfiguracyjny portów Apache /etc/apache2/ports.conf i znajdź linię listen 80, a następnie zmień ją na listen 8080.

Alternatywnie, po prostu uruchom polecenie sed, aby zmienić port 80 na 8080 w następujący sposób.

sudo sed -i "s/Listen 80/Listen 8080/" /etc/apache2/ports.conf

6. Musisz także wprowadzić zmiany w pliku hosta wirtualnego znajdującego się w /etc/apache2/sites-available/.

sudo vi /etc/apache2/sites-available/000-default.conf

Zmień numer portu na 8080.

<VirtualHost *:8080>
	#virtual host configs here
</VirtualHost>

7. W systemach korzystających z systemd plik konfiguracyjny środowiska /etc/default/varnish jest przestarzały i nie jest już dłużej brany pod uwagę.

Musisz skopiować plik /lib/systemd/system/varnish.service do /etc/systemd/system/ i wprowadzić w nim kilka zmian.

sudo cp /lib/systemd/system/varnish.service /etc/systemd/system/
sudo vi /etc/systemd/system/varnish.service

Musisz zmodyfikować dyrektywę usługi ExecStart, definiuje ona opcje wykonawcze demona lakieru. Ustaw wartość flagi -a, która definiuje port, którego nasłuchuje lakier, z 6081 na 80.

8. Aby zastosować powyższe zmiany w pliku jednostki serwisowej lakieru, uruchom następującą komendę systemctl:

sudo systemctl daemon-reload

9. Następnie skonfiguruj Apache jako serwer zaplecza dla proxy Varnish w pliku konfiguracyjnym /etc/varnish/default.vcl.

sudo vi /etc/varnish/default.vcl 

Korzystając z sekcji backend, możesz zdefiniować adres IP hosta i port dla swojego serwera treści. Poniżej znajduje się domyślna konfiguracja zaplecza, która korzysta z hosta lokalnego (ustaw ją tak, aby wskazywała rzeczywisty serwer zawartości).

backend default {
    .host = "127.0.0.1";
    .port = "8080";
}

10. Po wykonaniu całej powyższej konfiguracji zrestartuj demona Apache i Varnish, wpisując następujące polecenia.

sudo systemctl restart apache
sudo systemctl start varnish
sudo systemctl enable varnish
sudo systemctl status varnish

Krok 3: Przetestuj pamięć podręczną lakieru na Apache

11. Na koniec sprawdź, czy pamięć podręczna Varnish jest włączona i czy współpracuje z serwerem HTTP Apache, używając polecenie cURL poniżej, aby wyświetlić nagłówek HTTP.

curl -I http://localhost

Otóż to! Więcej informacji na temat Varnish Cache można znaleźć na stronie – https://github.com/varnishcache/varnish-cache

W tym samouczku wyjaśniliśmy, jak skonfigurować Varnish Cache 5.2 dla serwera Apache HTTP w systemach Debian i Ubuntu. Możesz podzielić się z nami swoimi przemyśleniami lub pytaniami, korzystając z komentarzy poniżej.