3、负载均衡层技术汇总3-4、Keepalived技术Keepalived在我的博客文章《架构设计:负载均衡层设计方案(7)》(http://blog.csdn.net/yinwenjie/article/details/47211551)、《架构设计:负载均衡层设计方案(6)》(http://blog.csdn.net/yinwenjie/article/details/47130609)中都有介绍。大家可能注意到,在这些文章中从来没有单独介绍Keepalived。这是因为Keepalived是为了监控集群节点的工作状态,在因为某种原因不能正常提供服务的前提下,完成备机的切换。这里面有两个关
1、概述很明显通过前面的八篇文章的介绍,并不能覆盖负载均衡层的所有技术,但是可以作为一个引子,告诉各位读者一个学习和使用负载均衡技术的思路。虽然后面我们将转向“业务层”和“业务通信”层的介绍,但是对负载均衡层的介绍也不会停止。在后续的时间我们将穿插进行负载均衡层的新文章的发布,包括Nginx技术的再介绍、HaProxy、LVS新的使用场景等等。这篇文章我们对前面的知识点进行总结,并有意进行一些扩展,以便于各位读者找到新的学习思路。2、负载均衡层的核心思想2-1、一致性哈希与Key的选取在《架构设计:负载均衡层设计方案(2)——Nginx安装》文章中我们详细介绍了一致性哈希算法。并且强调了一致性
1、概述上篇文章《架构设计:负载均衡层设计方案(6)——Nginx+Keepalived构建高可用的负载层》(http://blog.csdn.net/yinwenjie/article/details/47130609)我们讲解了Nginx的故障切换,并且承诺各位读者会尽快讲解LVS+Keepalived+Nginx的安装和配置。在中间由于工作的原因,我又插写了三篇关于zookeeper的原理使用的文章。今天这边文章我们回归主题,为各位读者讲解LVS+Keepalived+Nginx的安装及配置。2、安装计划和准备工作下图,我们表示了本篇文章要搭建的整个集成架构的抽象结构:我们采用两个LVS
1、概述前两遍文章中,我们一直在说后文要介绍Nginx+Keepalived的搭建方式。这篇文章开始,我们就来兑现前文的承诺,后续的两篇文章我们将介绍Nginx+Keepalived和LVS+Keepalived搭建高可用的负载层系统。如果你还不了解Nginx和LVS的相关知识,请参见我之前的两篇文章《架构设计:负载均衡层设计方案(2)——Nginx安装》(http://blog.csdn.net/yinwenjie/article/details/46620711)、《架构设计:负载均衡层设计方案(4)——LVS原理》(http://blog.csdn.net/yinwenjie/artic
1、概述上篇文章《架构设计:负载均衡层设计方案(4)——LVS原理》(http://blog.csdn.net/yinwenjie/article/details/46845997),我们介绍了LVS的工作模式,和每一种模式的具体工作过程。这篇文章中,我们将介绍单一LVS节点的安装方式。比起上一篇文章,这一片要提到的安装和配置就是非常简单的了,只要您了解原理,实践就是从容的事情。您可以在您的电脑上使用VMware虚拟机,按照下面介绍的过程一步一步实践。我们将采用两台虚拟机,一台作为LVS节点,另外一台安装了Nginx的服务器作为RealServer节点。2、LVS-NAT模式安装2.1、准备工
之前我们花了两篇文章的篇幅,详细讲解了Nginx的原理、安装和特性组件。请参看《负载均衡层设计方案(2)——Nginx安装》(http://blog.csdn.net/yinwenjie/article/details/46620711)和《架构设计:负载均衡层设计方案(3)——Nginx进阶》(http://blog.csdn.net/yinwenjie/article/details/46742661)两篇文章。虽然不包括Nginx的所有知识(也不可能全部包括),但是足够读者将Nginx应用到实际的生产中,并进行重要特性的优化,后面有时间我们还会重新回到Nginx的讲解上。从本篇文章开始,
上篇文章(《架构设计:负载均衡层设计方案(2)——Nginx安装》),我们介绍了Nginx的核心设计思想、基本安装和使用。本来准备继续介绍Nginx的几个使用特性,但是奈何博文篇幅太长,只有将一篇文章拆成两篇。本文我们将承接上文,继续讲解Nginx的实用特性,包括gzip功能、rewirte功能和一个第三方的节点监测模块。本文我们还将提到Taobao团队对Nginx的深度改造Tengine。1、Nginx继续进阶1.1、gzipnginx对返回给浏览器的httpresponsebody是可以进行压缩的。虽然需要消耗一点cpu和内存资源,但是想到100KB的数据量可以压缩到60KB甚至更小进行传
前一篇文章《架构设计:负载均衡层设计方案(1)——负载场景和解决方式》中我们描述了要搭设负载均衡层的业务场景和负载均衡层搭建和扩展思路。从这篇文章开始的后几篇文章,我们将详细介绍Nginx、LVS和Nginx+Keepalived、LVS+Keepalived和LVS+Nginx+Keepalived的安装细节,以及它们的性能优化方式。Nginx和LVS都是可以独立工作的,Keepalived作为检测机制,不但可以和Nginx、LVS集成也可以和其他软件集成形成高可用方案(例如可以和MySQL数据库集成、可以和Jetty服务器集成、还可以和自己写的程序集成)。所以首先我们先来详细讲述Nginx
1、不同的负载场景我们知道负载均衡层的作用是“将来源于外部的处理压力通过某种规律/手段分摊到内部各个处理节点上”,那么不同的业务场景需要的负载均衡方式又是不一样的,架构师还要考虑架构方案的成本、可扩展性、运维难易度等问题。下面我们先介绍几种典型的不同业务场景,大家也可以先想一下如果是您,会怎么架设这些场景的负载均衡层。需要注意的是,这个系统的文章,我们都将使用这几个典型的业务场景来讲解系统架构的设计递归设计。在后续几篇介绍负载层架构的文章中,我们也将通过这几个典型的业务场景讲解负载层的架构方案。1.1、负载场景一这是一个国家级物流园区的货运订单和物流管理系统。在物流园区内的货运代理商、合作司机