本人对varnish也是新手,这里记录一下安装步骤!

环境:centos6.6

varnish安装包下载:wget https://repo.varnish-cache.org/source/varnish-3.0.7.tar.gz

先上我的拓扑图 (基础拓扑为LVSDR环境)  LVS不在这里讲解

安装

yum -y install gcc gcc-c++ make autoconf automake
yum -y install automake autoconf libtool ncurses-devel libxslt groff pcre-devel pkgconfig readline-devel
tar -zxf varnish-3.0.7.tar.gz
cd varnish-3.0.7
./configure --prefix=/usr/local/varnish
make;make install

拷贝文件到系统

cp redhat/varnish.initrc /etc/init.d/varnish
cp redhat/varnish.sysconfig /etc/sysconfig/varnish
cp redhat/varnish_reload_vcl /usr/local/varnish/bin

修改varnish配置文件

vim /etc/sysconfig/varnish

修改为如下内容 (里面有许多varnish的性能配置)

VARNISH_VCL_CONF=/usr/local/varnish/etc/varnish/default.vcl

VARNISH_LISTEN_PORT=80

VARNISH_SECRET_FILE=/usr/local/varnish/etc/varnish/secret

vim /etc/init.d/varnish

pidfile=/var/run/varnish.pid
exec="/usr/local/varnish/sbin/varnishd"
reload_exec="/usr/local/varnish/bin/varnish_reload_vcl"
# Done parsing, set up command
VARNISHADM="/usr/local/varnish/bin/varnishadm $secret -T $VARNISH_ADMIN_LISTEN_ADDRESS:$VARNISH_ADMIN_LISTEN_PORT"

注:也可以将/usr/local/varnish/bin添加到系统的PATH中,这样就不需要编辑varnish_reload_vcl

生成varnish管理秘钥:

/usr/bin/uuidgen > /usr/local/varnish/etc/varnish/secret
chmod 644 /usr/local/varnish/etc/varnish/secret

VCL配置(对应拓扑图)

vim /usr/local/varnish/etc/varnish/default.vcl

backend web1 {
.host = "192.168.0.38";
.port = "80";
.connect_timeout = 1s;
.first_byte_timeout = 5s;
.between_bytes_timeout = 2s;
} backend web2 {
.host = "192.168.0.162";
.port = "80";
.connect_timeout = 1s;
.first_byte_timeout = 5s;
.between_bytes_timeout = 2s;
} director syw_web random {
{ .backend = web1; .weight =2; }
{ .backend = web2; .weight =2; } } #clean cache
acl purge {
"localhost";
"127.0.0.1";
"192.168.0.162";
"192.168.0.167";
} sub vcl_recv {
if (req.http.host ~ "^192.168.0.193"){
set req.backend = syw_web;} if (req.request == "PURGE") {
if (!client.ip ~purge) {
error 405 "Not Allowed";
}
return(lookup); #find localhost cache
} if (req.request == "GET" && req.url ~ "\.(png|swf|txt|png|gif|jpg|css|js|htm|html)$") {
unset req.http.cookie;
} if (req.url ~ "^/images") {
unset req.http.cookie;
} #if (req.http.Cache-Control ~ "(no-cache|max-age=0)"){
# purge_url(req.url);
#}
# return (lookup); #获取客户端ip
# if (req.restarts == 0) {
if (req.http.x-forwarded-for) {
set req.http.X-Forwarded-For =
req.http.X-Forwarded-For + ", " + client.ip;
} else {
set req.http.X-Forwarded-For = client.ip;
}
# }
}
检查VCL配置是否正确:
/etc/init.d/varnish configtest

/usr/local/varnish/sbin/varnishd -C -f /usr/local/varnish/etc/varnish/fdfs.vcl #启动varnish: service varnish start #查看varnish状态: /etc/init.d/varnish status # 动态加载VCL配置: /etc/init.d/varnish reload # 停止varnish: /etc/init.d/varnish stop

先就说这么多吧

更多精华请参考

http://www.it165.net/admin/html/201405/2999.html

http://www.51itstudy.com/30132.html

Varnish安装使用(初学)的更多相关文章

  1. 高性能HTTP加速器Varnish安装与配置

    导读 Varnish是一款高性能且开源的反向代理服务器和HTTP加速器,它采用了全新的软件体系结构,和现在的硬件体系配合紧密.下面就由我给大家简单说说他的安装与配置. 安装 安装pcre 如果没有安装 ...

  2. varnish安装

    安装pcrevarnish 依赖pcre进行url正则匹配. cd pcre-8.12./configure --prefix=/usr/local/make&&make instal ...

  3. 高性能HTTP加速器Varnish安装与配置(包含常见错误)

    Varnish是一款高性能的开源HTTP加速器.挪威最大的在线报纸Verdens Gang使用3台Varnish取代了原来的12台Squid,性能竟然比曾经更好.Varnish 的作者Poul-Hen ...

  4. varnish安装和配置

    实验环境:CentOS7 Varnish是高性能开源的反向代理服务器和HTTP缓存服务器. #varnish服务器:172.16.252.142 [root@varnish localhost]#yu ...

  5. Centos7.4 小白式安装(初学)

    虚拟机安装Centos7.4系统 适用人群(初学者) 下载Centos7.4镜像 https://pan.baidu.com/s/1NtjfdHV3OWAvfDj5vrR7HQ  提取码:hzzw 虚 ...

  6. Varnish快速安装及测试

    实验环境: slave-147:   192.168.75.147 slave-148:    192.168.75.148 两台机器均已关闭selinux,关闭iptables. varnish部署 ...

  7. Varnish 6.2.2 的介绍与安装

    一.简介 Varnish 是一款高性能且开源的反向代理服务器和 HTTP 加速器,其采用全新的软件体系机构,和现在的硬件体系紧密配合,与传统的 Squid 相比,Varnish 具有性能更高.速度更快 ...

  8. 安装Varnish 及遇到的坑

      转自:http://ixdba.blog.51cto.com/2895551/682555   一.安装Varnish Varnish的安装非常简单,下面逐步介绍: 1.安装前的准备  Varni ...

  9. Varnish – 高性能http加速器

    Varnish是一款高性能且开源的反向代理服务器和http加速器.与传统的Squid相比,Varnish具有性能更高.速度更快.管理更方便 等诸多优点.作者Poul-Henning Kamp是Free ...

随机推荐

  1. ViewPager+tab+Fragment的滑动

    package teamhgl.xinwensudu; import android.os.Bundle;import android.support.v4.app.Fragment;import a ...

  2. java中 几种数据库连接池 的写法

    JDBC连接数据库 •创建一个以JDBC连接数据库的程序,包含7个步骤: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.l ...

  3. SpringMyBatis解析1-使用示例

    MyBatis使用介绍 MyBatis的详细使用介绍  http://www.cnblogs.com/xrq730/category/796495.html 建立PO public class Per ...

  4. HTML DOM学习之三

    1.创建新的HTML元素:appendChild(); 如需向HTML DOM添加元素,首先必须创建该元素,然后把它追加到已有的元素上: <div id="div1"> ...

  5. 《DSP using MATLAB》示例Example4.4

    代码: x1 = [2, 3, 4]; x2 = [3, 4, 5, 6]; % x1 x2 sequences % n1 = 0:1:2; n2 = 0:1:3; n1 = 0:1:length(x ...

  6. 单机c1000k连接

    单机c1000k连接即单机实现百万连接,首先要注意的是连接是虚拟的逻辑的,连接最终落于 网卡,清晰概念才能更深入更清晰的想出问题的解决办法. 参考 http://www.ideawu.net/blog ...

  7. 20145223《Java程序程序设计》第4周学习总结

    20145223 <Java程序设计>第4周学习总结 教材学习内容总结 面向对象中,子类继承父类避免重复的行为定义,不过并不是为了避免重复定义行为就使用继承.程序代码重复在以后修改代码的时 ...

  8. Delphi中Messagedlg用法

    if MessageDlg('Welcome to my Delphi application. Exit now?', mtConfirmation, [mbYes, mbNo], 0) = mrY ...

  9. django base.html

    <!DOCTYPE html> <html> <head> <title>{% block title %}默认标题{% endblock %} - 自 ...

  10. BZOJ2061 : Country

    记忆化搜索,设$f[i][j]$表示符号$i$一开始kmp指针为$j$,中间匹配了多少次,$g[i][j]$则表示匹配结束后kmp指针的位置. 时间复杂度$O(nl^2)$. #include< ...