Varnish安装使用(初学)
本人对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安装使用(初学)的更多相关文章
- 高性能HTTP加速器Varnish安装与配置
导读 Varnish是一款高性能且开源的反向代理服务器和HTTP加速器,它采用了全新的软件体系结构,和现在的硬件体系配合紧密.下面就由我给大家简单说说他的安装与配置. 安装 安装pcre 如果没有安装 ...
- varnish安装
安装pcrevarnish 依赖pcre进行url正则匹配. cd pcre-8.12./configure --prefix=/usr/local/make&&make instal ...
- 高性能HTTP加速器Varnish安装与配置(包含常见错误)
Varnish是一款高性能的开源HTTP加速器.挪威最大的在线报纸Verdens Gang使用3台Varnish取代了原来的12台Squid,性能竟然比曾经更好.Varnish 的作者Poul-Hen ...
- varnish安装和配置
实验环境:CentOS7 Varnish是高性能开源的反向代理服务器和HTTP缓存服务器. #varnish服务器:172.16.252.142 [root@varnish localhost]#yu ...
- Centos7.4 小白式安装(初学)
虚拟机安装Centos7.4系统 适用人群(初学者) 下载Centos7.4镜像 https://pan.baidu.com/s/1NtjfdHV3OWAvfDj5vrR7HQ 提取码:hzzw 虚 ...
- Varnish快速安装及测试
实验环境: slave-147: 192.168.75.147 slave-148: 192.168.75.148 两台机器均已关闭selinux,关闭iptables. varnish部署 ...
- Varnish 6.2.2 的介绍与安装
一.简介 Varnish 是一款高性能且开源的反向代理服务器和 HTTP 加速器,其采用全新的软件体系机构,和现在的硬件体系紧密配合,与传统的 Squid 相比,Varnish 具有性能更高.速度更快 ...
- 安装Varnish 及遇到的坑
转自:http://ixdba.blog.51cto.com/2895551/682555 一.安装Varnish Varnish的安装非常简单,下面逐步介绍: 1.安装前的准备 Varni ...
- Varnish – 高性能http加速器
Varnish是一款高性能且开源的反向代理服务器和http加速器.与传统的Squid相比,Varnish具有性能更高.速度更快.管理更方便 等诸多优点.作者Poul-Henning Kamp是Free ...
随机推荐
- ViewPager+tab+Fragment的滑动
package teamhgl.xinwensudu; import android.os.Bundle;import android.support.v4.app.Fragment;import a ...
- java中 几种数据库连接池 的写法
JDBC连接数据库 •创建一个以JDBC连接数据库的程序,包含7个步骤: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.l ...
- SpringMyBatis解析1-使用示例
MyBatis使用介绍 MyBatis的详细使用介绍 http://www.cnblogs.com/xrq730/category/796495.html 建立PO public class Per ...
- HTML DOM学习之三
1.创建新的HTML元素:appendChild(); 如需向HTML DOM添加元素,首先必须创建该元素,然后把它追加到已有的元素上: <div id="div1"> ...
- 《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 ...
- 单机c1000k连接
单机c1000k连接即单机实现百万连接,首先要注意的是连接是虚拟的逻辑的,连接最终落于 网卡,清晰概念才能更深入更清晰的想出问题的解决办法. 参考 http://www.ideawu.net/blog ...
- 20145223《Java程序程序设计》第4周学习总结
20145223 <Java程序设计>第4周学习总结 教材学习内容总结 面向对象中,子类继承父类避免重复的行为定义,不过并不是为了避免重复定义行为就使用继承.程序代码重复在以后修改代码的时 ...
- Delphi中Messagedlg用法
if MessageDlg('Welcome to my Delphi application. Exit now?', mtConfirmation, [mbYes, mbNo], 0) = mrY ...
- django base.html
<!DOCTYPE html> <html> <head> <title>{% block title %}默认标题{% endblock %} - 自 ...
- BZOJ2061 : Country
记忆化搜索,设$f[i][j]$表示符号$i$一开始kmp指针为$j$,中间匹配了多少次,$g[i][j]$则表示匹配结束后kmp指针的位置. 时间复杂度$O(nl^2)$. #include< ...