`

heartbeat+varnish搭建demo

阅读更多
1,环境介绍
linux:ubuntu 11.10 server
heartbeat:0.91-ubuntu1(apt-get安装)
varnish:3.0.0(apt-get安装)
server:varnish0 varnish1

2,varnish0 网络环境
root@varnish0:~# vim /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
#iface eth0 inet dhcp
iface eth0 inet static
address 192.168.0.83
netmask 255.255.0.0
network 192.168.0.0
broadcast 192.168.255.255

auto eth1
iface eth1 inet static
address 10.0.0.3
netmask 255.255.255.0
network 10.0.0.0
broadcast 10.0.0.255
gateway 10.0.0.1


root@varnish0:~# vim /etc/resolv.conf
domain lan
search lan
nameserver 10.0.0.1


3,varnish0  配置heartbeat
root@varnish0:~# vim /etc/ha.d/authkeys
auth 3
3 md5 ttpod


root@varnish0:~# cat /etc/ha.d/ha.cf
logfile /var/log/heartbeat/ha-log
keepalive 1 
warntime 2
deadtime 5
initdead 120
udpport 39001

bcast  eth1

auto_failback on
node    varnish0
node    varnish1


root@varnish0:~# cat /etc/ha.d/haresources
varnish0 192.168.0.80/24/eth0


4,varnish1 网络及heartbeat配置
将第2步,第3步在varnish1上面重复

5,启动及测试heartbeat
在 varnish0 及 varnish1上面分别启动
/etc/init.d/networking restart
/etc/init.d/heartbeat restart


测试
ping 192.168.0.80

varnish0断电,varnish0通电,varnish1断电,通电 观察两个server ifconfig变化
恭喜你,heartbeat 成功了

6,我们开始varnish搭建之旅
root@varnish0:~# vim /etc/varnish/test.vcl
backend b_72 {
    .host = "192.168.1.72";
    .port = "80";
}

acl local {
    "127.0.0.1";
    "192.168.1.1"/16;
}

sub vcl_recv {
    if (req.http.host ~ "^192.168.0.80$") {
        set req.backend = b_72;
    } else {
        error 404 "Unknown HostName!";
    }

    if (req.request == "PURGE") {
        if (!client.ip ~ local) {
            error 405 "Not Allowed.";
            return (lookup);
        }
    }

    if (req.request == "GET" && req.url ~ "\.(jpg|png|gif|swf|jpeg|ico)$") {
        unset req.http.cookie;
    }

    if (req.request != "GET" && req.request != "HEAD" && req.request != "PUT" && req.request != "POST" && req.request != "TRACE" && req.request != "OPTIONS" && req.request != "DELETE") {
        return (pipe);
    }

    if (req.request != "GET" && req.request != "HEAD") {
        return (pass);
    }

    if (req.http.Authorization || req.http.Cookie) {
        return (pass);
    }

    return (lookup);
}

sub vcl_deliver {
    set resp.http.x-hits = obj.hits ;
    if (obj.hits > 0) {
        set resp.http.X-Cache = "HIT from TTPod Cache Server";
    } else {
        set resp.http.X-Cache = "MISS from TTPod Cache Server";
    }
}


7,启动varnish0
root@varnish0:~# cat /bin/init.test
#!/bin/sh
set -e
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

pkill varnishd
varnishd -u varnish -g varnish -f /etc/varnish/test.vcl -a :80 -s file,/data/cache/varnish/test,2G -w 1024,51200,10 -t 3600 -T 127.0.0.1:39101

varnishncsa -w /var/log/varnish/access.log &

exit 0


8,varnish1配置varnish
重复第6步,第7步

9,启动及测试varnish
启动
/bin/sh /bin/varnish start




如图效果,又恭喜你varnish成功了


10,heartbeat+varnish整体测试
重复第5步

到这儿heartbeat+varnish 成功了

  • 大小: 72.8 KB
分享到:
评论

相关推荐

    DRBR+Heartbeat+httpd搭建高可用性网站

    阅读这份文档,读者可以了解到具体的安装步骤、配置选项以及故障转移实践,从而成功搭建一个具备高可用性的网站环境。 总之,DRBR、Heartbeat和Apache的结合提供了强大的高可用性解决方案,它们相互协作,确保即使...

    DRBD+Heartbeat+NFS

    在搭建"DRBD+Heartbeat+NFS"集群时,步骤通常包括: 1. 安装DRBD、Heartbeat和NFS相关软件包。 2. 配置DRBD资源,创建同步的磁盘分区。 3. 设置Heartbeat,定义资源管理规则和故障恢复策略。 4. 在主节点上启动NFS...

    heartbeat+libnet做双机

    标题中的“heartbeat+libnet做双机”指的是使用Heartbeat和Libnet这两个工具来实现服务器的高可用性集群,也就是常说的双机热备。在IT领域,双机热备是一种常见的故障转移策略,用于确保关键服务在一台服务器宕机时...

    RHEL5.5+Drbd+Heartbeat+Oracle10R2架构详解

    Drbd、Heartbeat 文件版本及简介: Cluster-Resource-Agents-agents-1.0.3.tar.bz2 Reusable-Cluster-Components-glue-1.0.6.tar.bz2 Heartbeat-3-0-STABLE-3.0.3.tar.bz2 Pacemaker-1-0-Pacemaker-1.0.9.tar.bz2 ...

    Heartbeat + LVS + ldirectord

    Heartbeat + LVS + ldirectord 是一种高可用性(High Availability, HA)的网络服务架构,用于构建可伸缩的、可靠的Web服务。这种架构主要由三个组件组成:Heartbeat、LVS(Linux Virtual Server)和ldirectord。 1. ...

    heartbeat+DRBD+Pacemaker安装步骤

    这是heartbeat+DRBD+Pacemaker安装步骤

    NFS+Heartbeat+DRBD部署

    NFS+Heartbeat+DRBD构建高可用存储系统,可容纳1-2T小文件

    RHEL5.5+drbd+heartbeat+oracle10R2 双机安装实例

    RHEL5.5+drbd+heartbeat+oracle10R2 双机安装实例

    heartbeat+drbd+mysql安装部署

    heartbeat+drbd+mysql安装部署

    Heartbeat+DRBD+MySQL高可用架构方案与实施过程细节

    ### Heartbeat+DRBD+MySQL高可用架构方案与实施过程细节 #### 互联网公司从初期到后期的数据库架构拓展 随着互联网公司的成长和发展,数据库架构也需要不断地调整和优化以满足不断增长的需求。从最初的单一服务器...

    drbd+heartbeat+oracle10g(HA)

    DRBD+Heartbeat+Oracle10g高可用HA方案 在本文档中,我们将详细介绍如何使用DRBD、Heartbeat和Oracle10g来实现高可用HA方案。该方案的主要目的是为了提供一个高可用、可靠、可扩展的解决方案,以满足业务连续性和...

    Drbd+heartbeat+Moosefs分布式存储双机冗余搭建

    在搭建过程中,需要在分布式存储服务器(如10.64.5.106和10.64.5.123)上安装和配置Moosefs,并将DRBD的设备挂载到Moosefs的文件系统中。 **安装过程**: 1. 编译和安装DRBD软件包,将模块加载到内核。 2. 配置`/...

    HeartBeat+PHP+MySQL双机热备自动切换配置

    HeartBeat+PHP+MySQL双机热备自动切换配置是一种高可用性的解决方案,用于确保在服务器出现故障时,服务能够不间断地运行,减少业务中断的风险。该配置主要涉及三个核心组件:HeartBeat、PHP 和 MySQL,以及辅助工具...

    Mysql+drbd+heartbeat+amoeba集群配置详解

    ### 一、环境搭建与配置 #### 1. 节点定义 首先,我们明确各个节点的IP地址及其角色: - **192.168.41.178**:mysql_drbd1 - DRBD节点1 - **192.168.41.55**:mysql_drbd2 - DRBD节点2 - **192.168.41.51**:mysql_...

    RHEL-5.7+DRBD+heartbeat+Oracle10R2双机安装实例.doc

    RHEL-5.7+DRBD+heartbeat+Oracle10R2双机安装实例.doc

    CentOS5.5 DRBD+Heartbeat+NFS 详细配置过程

    "CentOS5.5 DRBD+Heartbeat+NFS 详细配置过程" 本文将详细讲解 CentOS 5.5 下的 DRBD、Heartbeat 和 NFS 的配置过程。这个配置过程主要是为了实现高可用性和数据存储的解决方案。 首先需要安装 CentOS 5.5,並在 ...

Global site tag (gtag.js) - Google Analytics