Varnish--CDN加速的实现(三):部署多个后端服务器、负载均衡和虚拟主机

实验环境

主机服务
server1:172.25.63.1varnish
server2:172.25.63.2apache
server3:172.25.63.3apache

一、定义多个不同域名站点的后端服务器

  • 在server3上
    提示:server2的相关配置在上一篇博客中已经详细写了
    1.安装httpd软件
    在这里插入图片描述
    2.切换到默认发布目录建立默认发布文件
[root@server3 ~]# cd /var/www/html/
[root@server3 html]# ls
[root@server3 html]# vim index.html

在这里插入图片描述
在这里插入图片描述

3.重启服务
在这里插入图片描述

  • 在server1上
    4.编辑/etc/varnish/default.vcl默认文件
    在这里插入图片描述
##定义多个不同域名站点的后端服务器 
backend web1 {
  .host = "172.25.63.2";
  .port = "80";
}
backend web2 {
  .host = "172.25.63.3";
  .port = "80";
}

#当访问www.westos.org域名时从web1上取数据,访问bbs.westos.org域名时到web2取数据, 访问其他页面报错。 
sub vcl_recv {
if (req.http.host ~ "^(www.)?westos.org") {
set req.http.host = "www.westos.org";
set req.backend = web1;

} elsif (req.http.host ~ "^bbs.westos.org") {
set req.backend = web2;
} else {error 404 "westos cache";
}
}

sub vcl_deliver {
if (obj.hits > 0) {
set resp.http.X-Cache = "HIT from westos cache";
}
else {
set resp.http.X-Cache = "MISS from westos cache";
}
return (deliver);
}

5.重启varnish服务


[root@server1 html]# /etc/init.d/varnish reload

在这里插入图片描述
6.编辑真实主机域名解析文件,添加域名解析
在这里插入图片描述
在这里插入图片描述

7.测试:访问www.westos.org出现server2的内容,访问bbs.westos.org
出现server3的内容

[root@foundation63 ~]# curl  www.westos.org
<h1>server2.example.com</h1>

[root@foundation63 ~]# curl  bbs.westos.org
<h1>server3.example.com</h1>

在这里插入图片描述

二、负载均衡

  • 在server1上
    1.编辑/etc/varnish/default.vcl默认文件
    在这里插入图片描述
backend web1 {
  .host = "172.25.23.2";
  .port = "80";
}
backend web2 {
  .host = "172.25.23.3";
  .port = "80";
}
director lb round-robin{            #把多个后端聚合为一个组
{.backend = web1;}
{.backend = web2;}
}
sub vcl_recv {
if (req.http.host ~ "^(www.)?westos.org") {
set req.http.host = "www.westos.org";
set req.backend = lb;
return (pass);    #为了测试方便,不进行缓存
} elsif (req.http.host ~ "^bbs.westos.org") {
set req.backend = web2;
} else {error 404 "westos cache";
}
}


sub vcl_deliver {
if (obj.hits > 0) {
set resp.http.X-Cache = "HIT from westos cache";
}
else {
set resp.http.X-Cache = "MISS from westos cache";
}
return (deliver);
}

3.重启服务
在这里插入图片描述
4.测试:当开启缓存时的结果

[root@foundation63 ~]# curl  www.westos.org
<h1>server2.example.com</h1>

[root@foundation63 ~]# curl  www.westos.org
<h1>server2.example.com</h1>

[root@foundation63 ~]# curl  www.westos.org
<h1>server2.example.com</h1>

在这里插入图片描述
5.当关闭缓存时的结果

[root@foundation63 ~]# curl  www.westos.org
<h1>server2.example.com</h1>

[root@foundation63 ~]# curl  www.westos.org
<h1>server3.example.com</h1>

[root@foundation63 ~]# curl  www.westos.org
<h1>server2.example.com</h1>

[root@foundation63 ~]# curl  www.westos.org
<h1>server3.example.com</h1>

在这里插入图片描述
三、建立虚拟主机
1.在server3上编辑httpd的配置文件,编写虚拟主机信息

[root@server3 ~]# cd /etc/httpd/conf
[root@server3 conf]# ls
httpd.conf  magic
[root@server3 conf]# vim httpd.conf

在这里插入图片描述
将注释打开
在这里插入图片描述
在文件最后写入
在这里插入图片描述
2.创建目录/www和/bbs,编辑发布文件

[root@server3 conf]# mkdir /www /bbs
[root@server3 conf]# cd /www
[root@server3 www]# vim index.html

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

[root@server3 www]# cd /bbs
[root@server3 bbs]# vim index.html

在这里插入图片描述
在这里插入图片描述
3.重启apache服务

[root@server3 bbs]# /etc/init.d/httpd restart

在这里插入图片描述

4.添加地址解析在这里插入图片描述
5.测试:访问www.westos.org,内容轮询变化

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值