Linux-用Haproxy搭建Web群集

Haproxy搭建Web群集:

介绍

Haproxy是目前比较流行的一种群集调度工具,同类群集调度工具有很多,如LVS和Nginx。相对而言,LVS性能最好,但是搭建相对复杂;Nginx的upstream模块支持群集功能,但是对群集节点健康检查功能不强,性能没有haproxy好。

HTTP请求

通过URL访问网站使用的协议是HTTP协议,此类请求一般称为HTTP请求HTTP请求的方式分为GET方式和POST方式。

负载均衡常用的调度算法

RR(Round Robin)算法是最简单最常见的一种算法,即轮询调度。

LC(Least Connections)算法即最小连接算法,根据后端的节点连接数大小动态分配前段请求

SH(Source Hashing):SH基于来源访问调度算法,算法用于一些有Session会话记录在服务器端的场景,可以基于来源IP,Cookie等做群集调度。例如:使用基于IP的群集调度算法,假设这个群集有三个节点分别为A、B、C,当第一个用户第一次访问时这时候调度服务器会将第一个用户分配给A节点;当第二个用户也是第一访问时这时候调度服务器会将第二个用户的请求分配给节点B第一个用户第二次访问时这个时候调度服务器任然把请求分配给第一个,以此类推基于IP调度相当于是固定某某访问某某。还有就是只要负载调度器不重启,第一个用户访问请求都会指派给节点A。

此调度算法好处是实现会话保持,某些IP访问量非常大的话就会引起负载不均衡

案列实施:

编译安装Nginx服务器,为环境配置好web节点

安装Nginx服务之前需要先安装两个依赖包分别pcre-develzlib-devel

创建Nginx服务的运行用户:

上传或从官网下载Nginx的源码软件包解压:

安装Nginx网站:

默认安装目录为:/usr/local/nginx;默认日志目录:/usr/local/nginx/logs

默认监听端口:80;默认Web目录:/usr/local/nginx/html

  建立优化链接和分配属主属组:

建立访问测试页面启动Nginx服务:

启动和查看nginx端口

设置firewalld防火墙,放行外界访问web站点流量

编译安装Haproxy

安装haproxy服务需要先安装两个依赖包,分别为:pcre-devel和bzip2-devel

编译安装haproxy:

创建haproxy的配置文件:

编译配置文件

Haproxy配置项介绍:

Haproxy配置文件通常分为三个部分组成,global、defaults和listen

global为全局配置:

Linux-用Haproxy搭建Web群集_第1张图片

defaults为默认配置:

Linux-用Haproxy搭建Web群集_第2张图片

listen为应用组件配置:

Linux-用Haproxy搭建Web群集_第3张图片

根据目前的群集设计,将haproxy.cfg配置文件的内容修改为以下内容:

Linux-用Haproxy搭建Web群集_第4张图片

Defaults配置保持默认就行

Listen配置项需要添加GET参数和修改server inst

Linux-用Haproxy搭建Web群集_第5张图片

创建自启脚本:

Linux-用Haproxy搭建Web群集_第6张图片

测试Web群集

Linux-用Haproxy搭建Web群集_第7张图片

Linux-用Haproxy搭建Web群集_第8张图片

从这里看到群集就已经完成了。

你可能感兴趣的:(Linux)