官方文档:https://info.varnish-software.com/the-varnish-book
填写信息后能够下载pdf文件

Varnish是一款高性能的开源HTTP加速器
系统centos7

安装varnish

编译安装

源码包下载地址:http://varnish-cache.org/releases/
这里使用的是varnish-5.1.3.tgz
安装epel仓库

 yum install -y epel-release.noarch 
 yum makecache fast && yum repolist enabled

安装依赖包

yum install -y autoconf automake \
jemalloc-devel libedit-devel libtool \
ncurses-devel pcre-devel pkgconfig \
python-docutils python-sphinx graphviz

下载(wget下载不动,用浏览器或者迅雷下载)

cd  wget http://varnish-cache.org/_downloads/varnish-5.1.3.tgz

编译安装

tar axf varnish-5.1.3.tgz
cd varnish-5.1.3
sh autogen.sh
./configure --prefix=/usr/local/varnish
make && \
make check && \
make install && \
echo $?

安装完成后会在/usr/local/varnish下生成文件
varnish安装使用

生成配置文件

mkdir config
cp ./share/doc/varnish/example.vcl config/default.vcl

yum安装

安装epel仓库

 yum install -y epel-release.noarch 
 yum makecache fast && yum repolist enabled

安装varnish(epel仓库中不是最新版的)
yum install -y varnish

配置

编辑default.vcl
yum 安装在/etc/varnish/default.vcl
编译安装在config/default.vcl

vim default.vcl

grep -v "^#" default.vcl|grep -v "^$"|grep -v "\s*#"

vcl 4.0;
backend default {
    .host = "127.0.0.1";
    .port = "80";
}
sub vcl_recv {
}
sub vcl_backend_response {
}
sub vcl_deliver {
}

安装httpd用于测试
yum install -y httpd
systemctl start http

启动varnish

/usr/local/varnish/sbin/varnishd  -P /tmp/varnish.pid \
-a :12345 -T 127.0.0.1:6082 \
-s malloc,256MB -f /usr/local/varnish/config/default.vcl -t 60 
参数 说明
-P PID文件
-a http监听地址和端口(可以指定多个)
-T telnet监听地址和端口
-s 后端存储
-f vcl脚本文件
-t 生存时间
-F 在前端运行
其他参数
-b 后端地址很端口(和-f相斥)
-n varnish工作目录

访问测试
varnish安装使用

重新读取配置文件
systemctl reload varnish

./varnishadm vcl.load vc101 /etc/varnish/default.vcl
./varnishadm vcl.use vc101