设为首页 收藏本站
查看: 1520|回复: 0

[经验分享] 高可用haproxy调度varnish服务器缓存后端动静分离集群架构

[复制链接]

尚未签到

发表于 2019-1-2 10:19:25 | 显示全部楼层 |阅读模式
  (1) 动静分离部署wordpress,动静都要能实现负载均衡,要注意会话的问题;
  (2) 在haproxy和后端主机之间添加varnish进行缓存;
  (3) 设计拓扑;
  (4) haproxy的设定要求:
   (a) stats page,要求仅能通过本地访问使用管理接口;
   (b) 动静分离;
   (c) 分别考虑不同的服务器组的调度算法;
  (5) haproxy高可用;
  实验规划:
  利用keepalived主备高可用两个haproxy服务器
  对varnish缓存服务器做高可用
  动态web集群
  静态web集群
  haproxy1:     172.16.1.4
  haproxy2:     172.16.1.2
  varnish1:     172.16.1.5
  varnish2:     172.16.1.6
  dynamic server1:172.16.1.3
  dynamic server2:172.16.1.7
  static server1: 172.16.1.10
  static server2: 172.16.1.8
  拓扑图

  一、两台haproxy配置文件配置


  启动服务
  ~]# systemctl start haproxy
  ~]# systemctl status haproxy  #查看状态
  ~]# ss -tnlp  #查看80和9999端口是否启用
  ~]# systemctl enable haproxy #设置开机启动
  二、keepalived的配置
  
  haproxy1的keepalived配置

  haproxy2的keepalived配置
  
  三、两台varnish主机的配置
  更改varnish的监听端口为80
  [root@varnish1 ~]# vim /etc/varnish/varnish.params
  VARNISH_LISTEN_PORT=80
  varnish配置文件内容
  [root@varnish1 ~]# vim /etc/varnish/default.vcl



  编译使配置生效
  [root@varnish1 ~]# varnishadm -S /etc/varnish/secret -T 127.0.0.1:6082
  200
  -----------------------------
  Varnish Cache CLI 1.0
  -----------------------------
  Linux,3.10.0-327.el7.x86_64,x86_64,-smalloc,-smalloc,-hcritbit
  varnish-4.0.5 revision 07eff4c29
  Type 'help' for command list.
  Type 'quit' to close CLI session.
  vcl.list
  200
  available       0 boot
  active          0 myconf3
  varnish> vcl.load conf1 default.vcl
  200
  VCL compiled.
  vcl.use conf1
  200
  VCL 'conf1' now active
  vcl.list
  200
  available       0 boot
  available       0 myconf3
  active          0 conf1
  四、后端动静服务器wordpress主机配置
  后端amp配置不做赘述
  在动态主机的/var/www/html/下创建health.php用于动态健康状态检查
  DynamicServer is Health.
  在静态主机的/var/www/html/下创建health.html用于静态健康状态检查
  StaticServer is Health.
  五、客户端查看
  客户端登陆haproxy的stats page

  关闭一台varnish服务器后,可以在stats page看到一台正常运行,一台关闭了

  登陆wordpress可以看到之前正常上传图片的博客

  六、总结
  
  1、架构优点:
  (1)HAProxy为Varnish缓存服务器提供了高可用的负载均衡,其使用的算法,也为Varnish提升了缓存命中率;
  (2)HAProxy提供Web图形化管理界面,使得管理更加便捷高效;
  (3)Varnish的高效缓存机制极大的提升了Web应用的性能,降低了Web服务器的压力;
  (4)Varnish给后端Web服务器提供了高可用负载均衡,并使用了动态分离技术,保障了后端主机的冗余,显著提升了其性能;
  (5)使用Keepalive对HAproxy做高可用解决了单点故障问题。
  2、不足之处:
  (1)该架构没有解决存储的问题。
  解决方案:可以使用NFS+Rsync+inodify实现数据实时同步,再用keepalive做高可用。
  (2)MysqlServer,没有分离
  解决方案:独立数据库服务器,对其设置数据库主从复制,读写分离;




运维网声明 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-658577-1-1.html 上篇帖子: Nginx和haproxy负载均衡集群添加backup备用服务器 下篇帖子: 使用ubuntu+haproxy+heartbeat搭建大规模WEB集群环境实现负载均衡。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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