博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
varnish cdn 推送平台
阅读量:6240 次
发布时间:2019-06-22

本文共 3126 字,大约阅读时间需要 10 分钟。

实验环境:物理机(访问测试): willis.example.com  172.25.254.6

                 varnish缓存端:      server1.example.com  172.25.254.1

                负载均衡端1:        web1.example.com   172.25.254.10

                负载均衡端2:        web2.example.com   172.25.254.20

实验内容:1.解压安装包

                 2.配置数据库信息

                 3.安装varnish,http与php

                 4.配置varnish

                 5.访问端测试

                 6.cdn推送 

实验前提:负载均衡端已配置好虚拟主机

实验安装包:bansys.zip

                    varnish-3.0.5-1.el6.x86_64.rpm  

                    varnish-libs-3.0.5-1.el6.x86_64.rpm

1.解压安装包

[root@server1 mnt]# ls

bansys.zip

[root@server1 mnt]# unzip bansys.zip -d /usr/local/lnmp/

2.配置数据库信息

[root@server1 mnt]# vim /var/www/html/bansys/config.php #只保留如下设置,其余注释掉

<?php

 ///数据库信息/

 //数据库信息

# $host = "localhost";

# $user = "";

# $passwd = "";

# $dbname = "bansys";

# $conn = mysql_connect($host, $user, $passwd) or die('Unable to connect database...');

# mysql_select_db($dbname,$conn);

# $query = "select ResourceIP from purgeapp_resource";

# $results = mysql_query($query,$conn);

#

#  while ($row=mysql_fetch_row($results)) {

#         $varnish_host[] =  $row[0];

#   }

# #mysql_close($conn);

 //varnish主机列表

 //可定义多个主机列表

 $var_group1 = array(

                        'host' => array('172.25.254.1'),

                                                'port' => '6082',

                    );

//这个使用了mysql读取数据                                               

# $var_group3 = array(

#                        'host' => $varnish_host,

#                                               'port' => '6082',                               

#                    );                                          

 //varnish群组定义

 //对主机列表进行绑定

 $VAR_CLUSTER = array(

                         'www.willis.com' => $var_group1,

                     );

 //varnish版本

 //2.x和3.x推送命令不一样

 $VAR_VERSION = "3";

?>

                                    

3.安装varnish,http与php

[root@server1 mnt]# ls

    varnish-3.0.5-1.el6.x86_64.rpm  varnish-libs-3.0.5-1.el6.x86_64.rpm

[root@server1 mnt]# yum install * -y

[root@server1 mnt]# vim /etc/sysconfig/varnish 

    VARNISH_LISTEN_PORT=80 ##设定varnish的端口为80

[root@server1 mnt]# /etc/init.d/varnish start

[root@server1 html]# yum install php httpd -y

[root@server1 html]# vim /etc/httpd/conf/httpd.con

    136  Listen 8080  

    402  DirectoryIndex    index.php  index.html index.html.var

[root@server1 html]# mv bansys/  upindex

[root@server1 html]# /etc/init.d/httpd start

4.配置varnish

[root@server1 mnt]#vim /etc/varnish/default.vcl

backend web1 {

  .host = "172.25.254.20";

  .port = "80";

}

backend web2 {

   .host="172.25.254.10";

   .port="80";

}

director willislb round-robin {

        { .backend = web1; }

        { .backend = web2; }

}

sub vcl_deliver{

    if(obj.hits>0){

        set resp.http.X-Cache="HIT from willis cache";

        }

     else{

        set resp.http.X-Cache="MISS from willis cache";

        }

 return(deliver);

    }

acl upindex {

        "127.0.0.1";

         "172.25.254.0"/24;

}

sub vcl_recv {

  if (req.request == "BAN") {

        if (!client.ip ~ upindex) {

                error 405 "Not allowed.";

        }

        ban("req.url ~ " + req.url);

                error 200 "ban added";

        }

   if (req.http.host ~ "^(www.)?willis.com" ) {

        set req.http.host = "www.willis.com";

        set req.backend = willislb;

        #return(pass);          ###有缓存,用来测试缓存平台

        }

        elsif (req.http.host ~ "^(www.)?linux.com" ) {

        set req.http.host = "www.linux.com";

        set req.backend = willislb;

        return(pass);

        }

        else {error 404 "willis cache";

        }

}

5.访问端测试: 

[root@willis Desktop]# curl -I http://www.willis.com/index.html

    X-Cache: MISS from willis cache

[root@willis Desktop]# curl -I http://www.willis.com/index.html

    X-Cache: HIT from willis cache

[root@willis Desktop]# curl -I http://www.willis.com/index.html

    X-Cache: HIT from willis cache

6.cdn推送:






推送完之后测试:

[root@willis Desktop]# curl -I http://www.willis.com/index.html

    X-Cache: MISS from willis cache

转载地址:http://fpbia.baihongyu.com/

你可能感兴趣的文章
Centos 6.9中 http-2.2 中的一些基本操作和 https 的实现
查看>>
使用QueryTables生成Excel数据时发生错误
查看>>
活动目录实战之十 多台windows 2003 活动目录至win 2008 r2迁移实战
查看>>
我比我的领导差在哪
查看>>
Spring学习笔记二
查看>>
centos自带的日志切割工具 --- logrotate
查看>>
Java中final和static关键字总结
查看>>
一个故障印发的醒悟
查看>>
vim的日常操作方法
查看>>
Windows7系统安装Oracle数据库图文教程详解
查看>>
我的友情链接
查看>>
文本统计命令——wc
查看>>
mina2.0
查看>>
JEESZ简介
查看>>
Linux中通过/proc/stat等文件计算Cpu使用率(一)
查看>>
Centos6.5下利用rsyslog+loganalyzer+mysql部署日志服务器
查看>>
Linux查看硬件信息的一些命令
查看>>
基于VMware vSphere 5.0的服务器虚拟化实践(2)
查看>>
MySQL学习笔记_6_SQL语言的设计与编写(下)
查看>>
linux下挂载(mount)光盘镜像文件、移动硬盘
查看>>