1,Varnish的安装
1,操作系统:redhat or centos
2,依赖关系:
autoconf
automake
jemalloc-devel
libedit-devel
libtool
ncurses-devel
pcre-devel
pkgconfig
python-docutils
python-sphinx
2,安装varnish(这里使用yum安装)以及后端服务器。
添加varnish的源(epel-release源)
yum install epel-release
rpm --nosignature -i https://repo.varnish-cache.org/redhat/varnish-4.0.el6.rpm(注意,centos 6版本的系统最好安装varnishi4.0的版本,如果安装4.1的版本的话,会提示lib库版本较低,要手动编译安装相关依赖条件 )
yum -y install varnish nginx
3,启动varnish
首先我们来看下,安装完成varnish之后为我们提供了那些命令
varnishadm:命令行管理varnish命令
varnishd:启动varnish的命令
varnishlog:查看varnishlog的
varnishncsa:查看varnish的accesslog
varnishstat:查看varnish状态。
这些是常用的一些命令,具体的使用方法可以man帮助看下。
varnish的配置文件在/etc/varnish/default.vcl,我们可以打开来看下,开始我们就是用默认的配置文件,后面会对相关的配置文件进行学习说明。首先我们是要保证其正确运行起来。
#
# This is an example VCL file for Varnish.
#
# It does not do anything by default, delegating control to the
# builtin VCL. The builtin VCL is called when there is no explicit
# return statement.
#
# See the VCL chapters in the Users Guide at https://www.varnish-cache.org/docs/
# and http://varnish-cache.org/trac/wiki/VCLExamples for more examples.
# Marker to tell the VCL compiler that this VCL has been adapted to the
# new 4.0 format.
vcl 4.0;
# Default backend definition. Set this to point to your content server.
#后端的真实服务器
backend default {
.host = "127.0.0.1";
.port = "80";
}
sub vcl_recv {
# Happens before we check if we have this in cache already.
#
# Typically you clean up the request here, removing cookies you don‘t need,
# rewriting the request, etc.
}
sub vcl_backend_response {
# Happens after we have read the response headers from the backend.
#
# Here you clean the response headers, removing silly Set-Cookie headers
# and other mistakes your backend does.
}
sub vcl_deliver {
# Happens when we have all the pieces we need, and are about to send the
# response to the client.
#
# You can do accounting or modifying the final object here.}
varnish的启动脚本在/etc/rc.d/init.d/varnish,varnish的启动参数配置在/etc/sysconfig/varnish.看下启动参数配置:
RELOAD_VCL=1 #是否自动加载vcl配置文件
VARNISH_VCL_CONF=/etc/varnish/default.vcl #配置文件的位置
VARNISH_LISTEN_PORT=6081#varnish的监听端口,对外提供服务的端口
VARNISH_ADMIN_LISTEN_ADDRESS=127.0.0.1#管理地址
VARNISH_ADMIN_LISTEN_PORT=6082#管理端口
VARNISH_SECRET_FILE=/etc/varnish/secret #安全密钥文件
# The minimum number of worker threads to start
VARNISH_MIN_THREADS=50
# The Maximum number of worker threads to start
VARNISH_MAX_THREADS=1000
# Cache file size: in bytes, optionally using k / M / G / T suffix.
VARNISH_STORAGE_SIZE=256M
# Backend storage specification
VARNISH_STORAGE="malloc,${VARNISH_STORAGE_SIZE}"
# Default TTL used when the backend does not specify one
VARNISH_TTL=120
# DAEMON_OPTS is used by the init script.启动varnish应用的时候使用的参数
DAEMON_OPTS="-a ${VARNISH_LISTEN_ADDRESS}:${VARNISH_LISTEN_PORT} -f ${VARNISH_VCL_CONF} -T ${VARNISH_ADMIN_LISTEN_ADDRESS}:${VARNISH_ADMIN_LISTEN_PORT} -p thread_pool_min=${VARNISH_MIN_THREADS} \
-p thread_pool_max=${VARNISH_MAX_THREADS} \
-u root -g root \
-S ${VARNISH_SECRET_FILE} \
-s ${VARNISH_STORAGE}" service varnish start
到此,我们就启动了varnish。可以使用相关命令查看下其进程等等。
本文出自 “linux菜鸟” 博客,请务必保留此出处http://ludihua.blog.51cto.com/4601284/1901902
原文:http://ludihua.blog.51cto.com/4601284/1901902