Varnish Cache · 7 min read · Feb 12, 2026
Instalar Varnish Cache 6 para Apache/Nginx no CentOS 8

Varnish Cache é um poderoso proxy HTTP reverso usado para acelerar aplicações web que está disponível como software Open-Source. O Varnish armazena em cache tanto conteúdo estático quanto dinâmico. Ele lida com todas as requisições de entrada antes que elas cheguem ao seu servidor web. Ele fica entre um navegador web e o servidor web Apache ou Nginx. O cache do Varnish armazena todas as requisições de página recebidas na memória, para que os servidores web não precisem criar a mesma página web repetidamente.
Neste post, mostraremos como instalar o cache do Varnish com Apache e Nginx no CentOS 8.
Pré-requisitos
- Um servidor rodando CentOS 8.
- Uma senha de root configurada no seu servidor.
Começando
Antes de começar, é recomendado atualizar os pacotes do seu sistema para a versão mais recente. Você pode atualizá-los executando o seguinte comando:
dnf update -yUma vez que todos os pacotes estejam atualizados, você pode prosseguir para o próximo passo.
Instalar Varnish
Por padrão, o pacote Varnish está incluído no repositório padrão do CentOS 8. Você pode instalá-lo executando o seguinte comando:
dnf install varnish -yApós instalar o Varnish, edite o arquivo de configuração padrão do Varnish e defina o endereço do servidor web Nginx ou Apache.
nano /etc/varnish/default.vclAltere as seguintes linhas:
backend default {
.host = "127.0.0.1";
.port = "8080";
}Salve e feche o arquivo quando terminar.
Configurar Varnish
Por padrão, o Varnish escuta na porta 6081. Portanto, você precisará configurar o Varnish para escutar na porta 80. Você pode configurá-lo editando o arquivo varnish.service:
nano /lib/systemd/system/varnish.serviceEncontre a seguinte linha:
ExecStart=/usr/sbin/varnishd -a :6081 -f /etc/varnish/default.vcl -s malloc,256mSubstitua-a pela seguinte linha:
ExecStart=/usr/sbin/varnishd -a :80 -f /etc/varnish/default.vcl -s malloc,256mSalve e feche o arquivo e, em seguida, recarregue o daemon do systemd para aplicar as alterações:
systemctl daemon-reloadEm seguida, inicie o serviço Varnish e habilite-o para iniciar na reinicialização do sistema com o seguinte comando:
systemctl start varnish
systemctl enable varnishVocê também pode verificar o status do Varnish com o seguinte comando:
systemctl status varnishVocê deve obter a seguinte saída:
? varnish.service - Varnish Cache, um acelerador HTTP de alto desempenho
Loaded: loaded (/usr/lib/systemd/system/varnish.service; disabled; vendor preset: disabled)
Active: active (running) since Fri 2021-03-12 04:17:32 EST; 4s ago
Process: 6391 ExecStart=/usr/sbin/varnishd -a :80 -f /etc/varnish/default.vcl -s malloc,256m (code=exited, status=0/SUCCESS)
Main PID: 6392 (varnishd)
Tasks: 217
Memory: 99.5M
CGroup: /system.slice/varnish.service
??6392 /usr/sbin/varnishd -a :80 -f /etc/varnish/default.vcl -s malloc,256m
??6402 /usr/sbin/varnishd -a :80 -f /etc/varnish/default.vcl -s malloc,256m
Mar 12 04:17:32 masternode systemd[1]: Starting Varnish Cache, um acelerador HTTP de alto desempenho...
Mar 12 04:17:32 masternode varnishd[6391]: Debug: Version: varnish-6.0.6 revision 29a1a8243dbef3d973aec28dc90403188c1dc8e7
Mar 12 04:17:32 masternode varnishd[6391]: Debug: Platform: Linux,4.18.0-193.6.3.el8_2.x86_64,x86_64,-junix,-smalloc,-sdefault,-hcritbit
Mar 12 04:17:32 masternode varnishd[6392]: Version: varnish-6.0.6 revision 29a1a8243dbef3d973aec28dc90403188c1dc8e7
Mar 12 04:17:32 masternode varnishd[6392]: Platform: Linux,4.18.0-193.6.3.el8_2.x86_64,x86_64,-junix,-smalloc,-sdefault,-hcritbit
Mar 12 04:17:32 masternode varnishd[6391]: Debug: Child (6402) Started
Mar 12 04:17:32 masternode varnishd[6392]: Child (6402) Started
Mar 12 04:17:32 masternode varnishd[6392]: Child (6402) said Child starts
Mar 12 04:17:32 masternode systemd[1]: Started Varnish Cache, um acelerador HTTP de alto desempenho.Neste ponto, o Varnish está iniciado e escutando na porta 80. Você pode verificar com o seguinte comando:
ss -antpl | grep varnishdVocê deve obter a seguinte saída:
LISTEN 0 10 127.0.0.1:34977 0.0.0.0:* users:(("varnishd",pid=1532,fd=11))
LISTEN 0 128 0.0.0.0:80 0.0.0.0:* users:(("cache-main",pid=1542,fd=6),("varnishd",pid=1532,fd=6))
LISTEN 0 128 [::]:80 [::]:* users:(("cache-main",pid=1542,fd=7),("varnishd",pid=1532,fd=7))
LISTEN 0 10 [::1]:34909 [::]:* users:(("varnishd",pid=1532,fd=10)) Neste ponto, o Varnish está instalado e configurado. Você pode agora prosseguir para o próximo passo.
Instalar e Configurar Nginx para Trabalhar com Varnish
Primeiro, você precisará instalar o pacote Nginx no seu servidor. Você pode instalá-lo com o seguinte comando:
dnf install nginx -yUma vez instalado, você precisará alterar a porta de escuta do Nginx de 80 para 8080. Você pode fazer isso editando o arquivo de configuração padrão do Nginx:
nano /etc/nginx/nginx.confAltere as seguintes linhas:
listen 8080 default_server;
listen [::]:8080 default_server;Salve e feche o arquivo e, em seguida, verifique o Nginx para qualquer erro de sintaxe usando o seguinte comando:
ginx -tVocê deve obter a seguinte saída:
nginx: o arquivo de configuração /etc/nginx/nginx.conf a sintaxe está ok
nginx: arquivo de configuração /etc/nginx/nginx.conf teste é bem-sucedidoEm seguida, inicie o serviço Nginx e habilite-o para iniciar na reinicialização do sistema:
systemctl start nginx
systemctl enable nginxVocê também pode verificar a porta de escuta do Nginx com o seguinte comando:
ss -antpl | grep 8080Você deve obter a seguinte saída:
LISTEN 0 128 0.0.0.0:8080 0.0.0.0:* users:(("nginx",pid=5569,fd=8),("nginx",pid=5568,fd=8))
LISTEN 0 128 [::]:8080 [::]:* users:(("nginx",pid=5569,fd=9),("nginx",pid=5568,fd=9)) Neste ponto, o cache do Varnish está instalado e configurado para encaminhar todas as requisições que chegam na porta 80 para o servidor web Nginx que está escutando na porta 8080.
Você pode verificar se o cache do Varnish está funcionando ou não com o seguinte comando:
curl -I http://localhostVocê deve obter a seguinte saída:
HTTP/1.1 200 OK
Server: nginx/1.14.1
Date: Fri, 12 Mar 2021 09:18:32 GMT
Content-Type: text/html
Content-Length: 4057
Last-Modified: Mon, 07 Oct 2019 21:16:24 GMT
ETag: "5d9bab28-fd9"
X-Varnish: 2
Age: 0
Via: 1.1 varnish (Varnish/6.0)
Accept-Ranges: bytes
Connection: keep-aliveInstalar e Configurar Apache para Trabalhar com Varnish
Primeiro, você precisará instalar o pacote do servidor web Apache no seu sistema. Você pode instalá-lo com o seguinte comando:
dnf install httpd -yApós instalar o Apache, edite o arquivo de configuração padrão do Apache e altere a porta de escuta de 80 para 8080.
nano /etc/httpd/conf/httpd.confAltere a seguinte linha:
Listen 8080Salve e feche o arquivo e, em seguida, inicie o serviço Apache e habilite-o para iniciar na reinicialização do sistema com o seguinte comando:
systemctl start httpd
systemctl enable httpdVocê também pode verificar a porta de escuta do Apache com o seguinte comando:
ss -antpl | grep httpdVocê deve obter a seguinte saída:
LISTEN 0 128 *:8080 *:* users:(("httpd",pid=7556,fd=4),("httpd",pid=7555,fd=4),("httpd",pid=7554,fd=4),("httpd",pid=7552,fd=4))Neste ponto, o cache do Varnish está instalado e configurado para encaminhar todas as requisições que chegam na porta 80 para o servidor web Apache que está escutando na porta 8080.
Você pode verificar se o cache do Varnish está funcionando ou não com o seguinte comando:
curl -I http://localhostVocê deve obter a seguinte saída:
Date: Fri, 12 Mar 2021 09:21:14 GMT
Server: Apache/2.4.37 (centos)
Content-Location: index.html.zh-CN
Vary: negotiate,accept-language
TCN: choice
Last-Modified: Fri, 14 Jun 2019 03:37:43 GMT
ETag: "fa6-58b405e7d6fc0;5bd5365602e05"
Accept-Ranges: bytes
Content-Length: 4006
Content-Type: text/html; charset=UTF-8
Content-Language: zh-cn
X-Varnish: 2
Age: 0
Via: 1.1 varnish (Varnish/6.0)
Connection: keep-aliveTrabalhando com a Linha de Comando do Varnish
O Varnish vem com várias utilidades úteis que ajudam você a monitorar e controlar o Varnish.
varnishadm é uma utilidade de linha de comando usada para listar os backends configurados.
varnishadmVocê deve ver a seguinte saída:
200
-----------------------------
Varnish Cache CLI 1.0
-----------------------------
Linux,4.18.0-193.6.3.el8_2.x86_64,x86_64,-junix,-smalloc,-sdefault,-hcritbit
varnish-6.0.6 revision 29a1a8243dbef3d973aec28dc90403188c1dc8e7
Type 'help' for command list.
Type 'quit' to close CLI session.Agora, execute o seguinte comando para listar todos os backends:
varnish> backend.listVocê deve ver a seguinte saída:
200
Backend name Admin Probe Last updated
boot.default probe Healthy (no probe) Sat, 13 Mar 2021 03:00:02 GMTvarnishlog
A utilidade varnishlog é usada para exibir os logs de todas as requisições de usuários.
varnishlogVocê deve obter a seguinte saída:
* << BeReq >> 6
- Begin bereq 5 fetch
- VCL_use boot
- Timestamp Start: 1615604631.507187 0.000000 0.000000
- BereqMethod GET
- BereqURL /
- BereqProtocol HTTP/1.1
- BereqHeader Host: 69.87.218.214
- BereqHeader Upgrade-Insecure-Requests: 1
- BereqHeader User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36
- BereqHeader Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
- BereqHeader Accept-Language: en-GB,en-US;q=0.9,en;q=0.8
- BereqHeader X-Forwarded-For: 106.213.193.241
- BereqHeader Accept-Encoding: gzip
- BereqHeader X-Varnish: 6
- VCL_call BACKEND_FETCH
- VCL_return fetch
- BackendOpen 31 boot.default 127.0.0.1 8080 127.0.0.1 58860
- BackendStart 127.0.0.1 8080
- Timestamp Bereq: 1615604631.507458 0.000270 0.000270
- Timestamp Beresp: 1615604631.507844 0.000657 0.000386
- BerespProtocol HTTP/1.1
- BerespStatus 200
- BerespReason OK
- BerespHeader Server: nginx/1.14.1
- BerespHeader Date: Sat, 13 Mar 2021 03:03:51 GMT
- BerespHeader Content-Type: text/html
- BerespHeader Content-Length: 4057
- BerespHeader Last-Modified: Mon, 07 Oct 2019 21:16:24 GMTvarnishstat
O comando varnishstat fornece informações sobre estatísticas em memória, armazenamento, threads criadas e objetos deletados.
varnishstatVocê deve ver a seguinte tela:

varnishtop
O comando varnishtop lê os logs de memória compartilhada do varnishd e apresenta uma lista continuamente atualizada das entradas de log mais comumente ocorridas.
varnishtopVocê deve ver a seguinte tela:

varnishhist
O varnishhist analisa os logs do varnish e imprime as últimas n requisições pelo seu processamento.
varnishhistVocê deve ver a seguinte tela:

Conclusão
No guia acima, você aprendeu como instalar e configurar o cache do Varnish com o servidor web Apache e Nginx. Você pode agora implementar o cache do Varnish no ambiente de produção e acelerar o desempenho do seu site. Sinta-se à vontade para me perguntar se você tiver alguma dúvida.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.