Zoeken op website

Installeer Varnish Cache 5.2 voor Apache op Debian en Ubuntu


Varnish Cache (ook wel Varnish genoemd) is een open source, krachtige HTTP-accelerator met een modern ontwerp. Het slaat de cache op in het geheugen en zorgt ervoor dat webserverbronnen niet worden verspild door steeds opnieuw dezelfde webpagina te maken wanneer daarom wordt gevraagd door een client.

Het kan worden geconfigureerd om vóór een webserver te draaien om pagina's veel sneller weer te geven, waardoor websites snel worden geladen. Het ondersteunt taakverdeling met statuscontrole van backends, herschrijven van URL's, elegante afhandeling van "dode" backends en biedt gedeeltelijke ondersteuning voor ESI (Edge Side Inclusief).

In onze reeks artikelen over Varnish Cache hebben we laten zien hoe u Varnish voor Nginx- en Varnish voor Apache-webservers kunt instellen op een CentOS 7-systeem.

In dit artikel leggen we uit hoe je Varnish Cache 5.2 installeert en configureert als front-end voor Apache HTTP-server op een Debian- en Ubuntu-systeem.

Vereisten:

  1. Een Ubuntu-systeem geïnstalleerd met LAMP Stack
  2. Een Debian-systeem geïnstalleerd met LAMP Stack
  3. Een Debian/Ubuntu-systeem met een statisch IP-adres

Stap 1: Installeer Varnish Cache op Debian en Ubuntu

1. Gelukkig zijn er vooraf gecompileerde pakketten voor de nieuwste versie van Varnish Cache 5 (d.w.z. 5.2 op het moment van schrijven), zodat je moet een officiële Varnish-repository aan uw systeem toevoegen, zoals hieronder weergegeven.

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

Belangrijk: als u Debian gebruikt, installeer dan het pakket debian-archive-keyring om de officiële Debian-repository's te verifiëren .

sudo apt-get install debian-archive-keyring

2. Maak daarna een bestand met de naam /etc/apt/sources.list.d/varnishcache_varnish5.list dat de onderstaande opslagplaatsconfiguratie bevat. Zorg ervoor dat u ubuntu en xenial vervangt door uw Linux-distributie en -versie.

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

3. Update vervolgens de opslagplaats van het softwarepakket en installeer de verniscache met behulp van de volgende opdrachten.

sudo apt update
sudo apt install varnish

4. Na het installeren van Varnish Cache worden de belangrijkste configuratiebestanden geïnstalleerd in de map /etc/varnish/.

  • /etc/default/varnish – het configuratiebestand van de vernisomgeving.
  • /etc/varnish/default.vcl – hoofdlakconfiguratiebestand, het is geschreven met behulp van de vanish-configuratietaal (VCL).
  • /etc/varnish/secret – geheim vernisbestand.

Om te bevestigen dat de Varnish-installatie succesvol was, voert u de volgende opdracht uit om de versie te bekijken.

varnishd -V

Stap 2: Configureer Apache om met Varnish Cache te werken

5. Nu moet je Apache configureren om met Varnish Cache te werken. Standaard luistert Apache op poort 80. U moet de standaard Apache-poort wijzigen in 8080 om deze in te schakelen achter Varnish-caching.

Open dus het Apache-poortenconfiguratiebestand /etc/apache2/ports.conf en zoek de regel luister 80 en verander deze vervolgens in luister 8080.

U kunt ook gewoon de opdracht sed uitvoeren om poort 80 als volgt te wijzigen in 8080.

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

6. U moet ook wijzigingen aanbrengen in uw virtuele hostbestand in /etc/apache2/sites-available/.

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

Wijzig het poortnummer in 8080.

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

7. Op systemen die systemd gebruiken, is het omgevingsconfiguratiebestand /etc/default/varnish verouderd en wordt er niet meer rekening mee gehouden.

U moet het bestand /lib/systemd/system/varnish.service naar /etc/systemd/system/ kopiëren en er een paar wijzigingen in aanbrengen.

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

U moet de servicerichtlijn ExecStart wijzigen, deze definieert de runtime-opties van de lak-daemon. Stel de waarde van de vlag -a in, die definieert naar welke poort lak luistert, van 6081 tot 80.

8. Om de bovenstaande wijzigingen in het lakservice-eenheidbestand door te voeren, voert u de volgende systemctl-opdracht uit:

sudo systemctl daemon-reload

9. Configureer vervolgens Apache als een backend-server voor de Varnish-proxy, in het /etc/varnish/default.vcl configuratiebestand.

sudo vi /etc/varnish/default.vcl 

Met behulp van de backend-sectie kunt u het host-IP en de poort voor uw inhoudsserver definiëren. Het volgende is de standaard backend-configuratie die gebruik maakt van de localhost (stel dit zo in dat het verwijst naar uw daadwerkelijke inhoudsserver).

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

10. Zodra u alle bovenstaande configuraties heeft uitgevoerd, start u de Apache- en Varnish-daemon opnieuw op door de volgende opdrachten te typen.

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

Stap 3: Test Varnish Cache op Apache

11. Test ten slotte of de Varnish-cache is ingeschakeld en werkt met de Apache HTTP-server met behulp van de onderstaande cURL-opdracht om de HTTP-header te bekijken.

curl -I http://localhost

Dat is het! Ga voor meer informatie over Varnish Cache naar – https://github.com/varnishcache/varnish-cache

In deze tutorial hebben we uitgelegd hoe je Varnish Cache 5.2 instelt voor de Apache HTTP-server op Debian- en Ubuntu-systemen. U kunt uw gedachten of vragen met ons delen via de onderstaande feedback.