设为首页 收藏本站
查看: 1581|回复: 1

[经验分享] 负载均衡varnish

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-10-30 08:56:38 | 显示全部楼层 |阅读模式
  • 下载安装varnish


[iyunv@node3 ~]# rpm --nosignature -i https://repo.varnish-cache.org/redhat/varnish-4.0.el6.rpm

[iyunv@node3 ~]# yum install varnish.x86_64

[iyunv@node3 ~]# egrep -v  "^$|^#"  /etc/sysconfig/varnish
NFILES=131072
MEMLOCK=82000
NPROCS="unlimited"
RELOAD_VCL=1
VARNISH_VCL_CONF=/etc/varnish/default.vcl
VARNISH_LISTEN_PORT=88          -远程访问端口
VARNISH_ADMIN_LISTEN_ADDRESS=192.168.2.112
VARNISH_ADMIN_LISTEN_PORT=6082         --监控管理地址
VARNISH_SECRET_FILE=/etc/varnish/secret
VARNISH_MIN_THREADS=50
VARNISH_MAX_THREADS=1000
VARNISH_THREAD_TIMEOUT=120
VARNISH_STORAGE_SIZE=256M
VARNISH_STORAGE="malloc,${VARNISH_STORAGE_SIZE}"
VARNISH_TTL=120
DAEMON_OPTS="-a ${VARNISH_LISTEN_ADDRESS}:${VARNISH_LISTEN_PORT} \
             -f ${VARNISH_VCL_CONF} \
             -T ${VARNISH_ADMIN_LISTEN_ADDRESS}:${VARNISH_ADMIN_LISTEN_PORT} \
             -t ${VARNISH_TTL} \
             -p thread_pool_min=${VARNISH_MIN_THREADS} \
             -p thread_pool_max=${VARNISH_MAX_THREADS} \
             -p thread_pool_timeout=${VARNISH_THREAD_TIMEOUT} \
             -u varnish -g varnish \
             -S ${VARNISH_SECRET_FILE} \
             -s ${VARNISH_STORAGE}"
[iyunv@node3 varnish]# netstat -antulp | grep varnish
tcp     0    0 0.0.0.0:88     0.0.0.0:*      LISTEN    5107/varnishd      
tcp     0    0 192.168.2.112:6082   0.0.0.0:*   LISTEN    5105/varnishd   
tcp     0    0 :::88        :::          LISTEN    5107/varnishd      
[iyunv@node3 ~]# cd /etc/varnish/

2.简单的反向代理
[iyunv@node3 varnish]# vim default.vcl

vcl 4.0;
backend node1 {
    .host = "192.168.2.112";
    .port = "8082";
}
sub vcl_recv {
}
sub vcl_backend_response {
}
sub vcl_deliver {
}
wKioL1Yx1DrRWFf3AACMMQSDFaQ816.jpg
2.根据uri地址分配服务器
[iyunv@node3 varnish]# vim default.vcl
vcl 4.0;
backend node1 {
    .host = "192.168.2.112";
    .port = "8082";
}
backend node2 {
    .host = "192.168.2.114";
    .port = "8082";
}

sub vcl_recv {
    if (req.url ~ "^/index.html") {
       set req.backend_hint = node1;
    }else {
       set req.backend_hint = node2;
    }
}
sub vcl_backend_response {
}
sub vcl_deliver {
}
wKioL1Yx1suhWqy9AACSqvHAVBA275.jpg
wKioL1Yx1svhshrKAACQNfd8jY4647.jpg

3.权限虚拟主机分配服务器
[iyunv@node3 varnish]# vim default.vcl
vcl 4.0;
backend node1 {
    .host = "192.168.2.112";
    .port = "8082";
}
backend node2 {
    .host = "192.168.2.114";
    .port = "8082";
}
backend node3 {
    .host = "192.168.2.115";
    .port = "8082";
}
sub vcl_recv {
    if (req.http.host  ~ "www.tong.com" || req.http.host ~ "tong.com") {
         set req.backend_hint = node1;
    }elif (req.http.host  ~ "www.cheng.com" || req.http.host ~ "cheng.com") {
         set req.backend_hint = node2;
    }
    else {
         set req.backend_hint = node3;
    }
}
sub vcl_backend_response {
}
sub vcl_deliver {
}
wKioL1Yx1MXjo1MeAACV3Jdlme4188.jpg
wKiom1Yx1I_RH-bJAACK-7hrt4I813.jpg
wKioL1Yx1Maj0t-4AACSq5WLDxU107.jpg
wKiom1Yx1JPxEi0yAACFXtgrLLQ549.jpg
4.根据directors模块随机分配服务器
[iyunv@node3 varnish]# vim default.vcl
vcl 4.0;
import directors;
backend node1 {
    .host = "192.168.2.112";
    .port = "8082";
}
backend node2 {
    .host = "192.168.2.114";
    .port = "8082";
}
backend node3 {
    .host = "192.168.2.116";
    .port = "8082";
}
sub vcl_init {
    new bar = directors.round_robin();
    bar.add_backend(node1);
    bar.add_backend(node2);
    bar.add_backend(node3);
}
sub vcl_recv {
    set req.backend_hint = bar.backend();
}
sub vcl_backend_response {
}
sub vcl_deliver {
}
wKioL1Yx7Pmx_pWyAACP-Q9oskM977.jpg
wKiom1Yx7MTw2kRkAACD_MkdiRE573.jpg
wKioL1Yx7PqgYJXIAACIpIQBxCs762.jpg


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-132533-1-1.html 上篇帖子: Haproxy在大并发下的表现 下篇帖子: HAproxy的简单应用和基础知识
累计签到:60 天
连续签到:1 天
发表于 2015-10-31 12:27:17 | 显示全部楼层
哎哟,不错哦~

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表