Pesquisa de site

Instale Varnish Cache 5.2 para Apache no Debian e Ubuntu


Varnish Cache (também chamado de Varnish) é um acelerador HTTP de código aberto e de alto desempenho com um design moderno. Ele armazena o cache na memória, garantindo que os recursos do servidor web não sejam desperdiçados na criação da mesma página web repetidamente quando solicitado por um cliente.

Ele pode ser configurado para rodar na frente de um servidor web para servir páginas de uma forma muito mais rápida, fazendo com que os sites carreguem rapidamente. Ele suporta balanceamento de carga com verificação de integridade de back-ends, reescrita de URL, tratamento elegante de back-ends “mortos” e oferece suporte parcial para ESI (Edge Side Included).

Em nossa série de artigos sobre Varnish Cache, mostramos como configurar o Varnish para Nginx e o Varnish para servidores web Apache em um sistema CentOS 7.

Neste artigo, explicaremos como instalar e configurar o Varnish Cache 5.2 como front-end para o servidor Apache HTTP em sistemas Debian e Ubuntu.

Requisitos:

  1. Um sistema Ubuntu instalado com LAMP Stack
  2. Um sistema Debian instalado com LAMP Stack
  3. Um sistema Debian/Ubuntu com endereço IP estático

Passo 1: Instale o Varnish Cache no Debian e Ubuntu

1. Felizmente, existem pacotes pré-compilados para a versão mais recente do Varnish Cache 5 (ou seja, 5.2 no momento em que este artigo foi escrito), então você precisa adicionar o repositório oficial do Varnish em seu sistema, conforme mostrado abaixo.

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

Importante: Se você estiver usando Debian, instale o pacote debian-archive-keyring para verificar os repositórios oficiais do Debian .

sudo apt-get install debian-archive-keyring

2. Depois disso, crie um arquivo chamado /etc/apt/sources.list.d/varnishcache_varnish5.list que contém a configuração do repositório abaixo. Certifique-se de substituir ubuntu e xenial pela sua distribuição e versão do Linux.

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

3. Em seguida, atualize o repositório de pacotes de software e instale o cache de verniz usando os comandos a seguir.

sudo apt update
sudo apt install varnish

4. Após instalar o Varnish Cache, os principais arquivos de configuração serão instalados no diretório /etc/varnish/.

  • /etc/default/varnish – o arquivo de configuração do ambiente verniz.
  • /etc/varnish/default.vcl – arquivo de configuração principal do verniz, é escrito usando a linguagem de configuração Vanish (VCL).
  • /etc/varnish/secret – arquivo secreto de verniz.

Para confirmar se a instalação do Varnish foi bem-sucedida, execute o seguinte comando para ver a versão.

varnishd -V

Etapa 2: configurar o Apache para funcionar com o Varnish Cache

5. Agora você precisa configurar o Apache para funcionar com o Varnish Cache. Por padrão, o Apache escuta na porta 80, você precisa alterar a porta padrão do Apache para 8080 para permitir que ele seja executado atrás do cache do Varnish.

Portanto, abra o arquivo de configuração das portas Apache /etc/apache2/ports.conf e encontre a linha listen 80, depois altere-a para listen 8080.

Alternativamente, basta executar o comando sed para alterar a porta 80 para 8080 como segue.

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

6. Você também precisa fazer alterações no arquivo do host virtual localizado em /etc/apache2/sites-available/.

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

Altere o número da porta para 8080.

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

7. Em sistemas que usam systemd, o arquivo de configuração de ambiente /etc/default/varnish está obsoleto e não é mais considerado.

Você precisa copiar o arquivo /lib/systemd/system/varnish.service para /etc/systemd/system/ e fazer algumas alterações nele.

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

Você precisa modificar a diretiva de serviço ExecStart, ela define as opções de tempo de execução do daemon do verniz. Defina o valor do sinalizador -a, que define a porta que o verniz escuta, de 6081 a 80.

8. Para efetuar as alterações acima no arquivo da unidade de serviço de verniz, execute o seguinte comando systemctl:

sudo systemctl daemon-reload

9. Em seguida, configure o Apache como um servidor backend para o proxy Varnish, no arquivo de configuração /etc/varnish/default.vcl.

sudo vi /etc/varnish/default.vcl 

Usando a seção backend, você pode definir o IP do host e a porta do seu servidor de conteúdo. A seguir está a configuração de back-end padrão que usa o host local (defina-a para apontar para o seu servidor de conteúdo real).

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

10. Depois de realizar toda a configuração acima, reinicie o daemon Apache e Varnish digitando os seguintes comandos.

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

Etapa 3: testar o cache do Varnish no Apache

11. Por fim, teste se o cache do Varnish está ativado e funcionando com o servidor Apache HTTP usando o comando cURL abaixo para visualizar o cabeçalho HTTP.

curl -I http://localhost

É isso! Para obter mais informações sobre o Varnish Cache, visite – https://github.com/varnishcache/varnish-cache

Neste tutorial, explicamos como configurar o Varnish Cache 5.2 para o servidor Apache HTTP em sistemas Debian e Ubuntu. Você pode compartilhar quaisquer idéias ou dúvidas conosco por meio dos comentários abaixo.