使用Haproxy+nginx 搭建负载均衡集群

案例环境

本案例使用三台服务器模拟搭建一套Web集群,如下所示:


实验步骤如下:

  1. 编辑安装nginx服务器
    安装依赖包下载nginx-01服务器
    [[email protected] ~]# yum -y install gcc pcre-devel zlib-devel
    [[email protected] ~]# wget https://nginx.org/download/nginx-1.6.3.tar.gz
    [[email protected] ~]# tar zxvf nginx-1.6.3.tar.gz
    [[email protected] ~]# cd nginx-1.6.3/
    [[email protected] nginx-1.6.3]# ./configure --prefix=/usr/local/nginx
    [[email protected] nginx-1.6.3]# make && make install
    [[email protected] nginx-1.6.3]# cd /usr/local/nginx/html/
    建立测试页面
    [[email protected] html]# echo "192.168.150.129" >> index.html
    启动nginx
    [[email protected] html]# /usr/local/nginx/sbin/nginx
    建立防火墙机制
    [[email protected] html]# iptables -I INPUT -p tcp --dport 80 -j ACCEPT
    搭建nginx-02服务器
    [[email protected] ~]# yum -y install gcc
    pcre-devel zlib-devel
    [[email protected] ~]# wget https://nginx.org/download/nginx-1.6.3.tar.gz
    [[email protected] ~]# tar zxvf nginx-1.6.3.tar.gz
    [[email protected] ~]# cd nginx-1.6.3/
    [[email protected] nginx-1.6.3]# ./configure --prefix=/usr/local/nginx
    [[email protected] nginx-1.6.3]# make && make install
    [[email protected] nginx-1.6.3]# cd /usr/local/nginx/html/
    建立测试页面
    [[email protected] html]# echo "192.168.150.133" >> index.html
    启动nginx
    [[email protected] html]# /usr/local/nginx/sbin/nginx
    建立防火墙机制
    [[email protected] html]# iptables -I INPUT -p tcp --dport 80 -j ACCEPT
    安装完成后,在客户端访问nginx进行测试,如下图所示:

  2. 安装配置haproxy
    [[email protected] ~]# yum -y install pcre-devel bzip2-devel gcc* -y
    [[email protected] ~]# wget http://www.haproxy.org/download/1.4/src/haproxy-1.4.27.tar.gz
    [[email protected] ~]# tar xvzf haproxy-1.4.27.tar.gz
    [[email protected] ~]# cd haproxy-1.4.27/
    [[email protected] haproxy-1.4.27]# make TARGET=linux26
    创建配置文件目录
    [[email protected] haproxy-1.4.27]# mkdir /etc/haproxy
    将样本复制到配置文件目录
    [[email protected] haproxy-1.4.27]# cp examples/haproxy.cfg /etc/haproxy/
  3. 根据目前集群设计,将haproxy.cfg配置文件修改如下:

[[email protected] haproxy-1.4.27]# cat /etc/haproxy/haproxy.cfg
global
log 127.0.0.1 local2

chroot      /var/lib/haproxy
pidfile     /var/run/haproxy.pid
maxconn     4000
user        haproxy
group       haproxy
daemon

stats socket /var/lib/haproxy/stats

defaults
mode http
log global
option httplog
option dontlognull
option http-server-close
option forwardfor except 127.0.0.0/8
option redispatch
retries 3
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
maxconn 3000

frontend main *:80
acl url_static path_beg -i /static /images /javascript /stylesheets
acl url_static path_end -i .jpg .gif .png .css .js

default_backend             app

backend app
balance roundrobin
server app1 192.168.150.129:80 check
server app2 192.168.150.133:80 check
配置文件因版本而已 请不要复制 参数基本一样

  1. 创建自启动脚本

[[email protected] haproxy-1.4.27]# cp examples/haproxy.init /etc/init.d/haproxy
[[email protected] haproxy-1.4.27]# ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy
[[email protected] haproxy-1.4.27]# chmod +x /etc/init.d/haproxy
[[email protected] haproxy-1.4.27]#systemctl start haproxy

  1. 测试Web集群
    通过上面的步骤,已经搭建完成Haproxy的Web集群,下面验证一下集群是否正常工作,一个集群一般具备两个特性:高性能与高可用
    (1)测试高性能
    在客户端使用浏览器打开http://192.168.150.131,如下图所示:

(2)测试高可用
现在将nginx1服务停用,在客户端访问代理服务器,浏览器会显示nginx2网页内容,不会影响集群的使用,满足了集群的高可用性

原文地址:https://blog.51cto.com/xia1314520ting/2406983

时间: 2024-10-10 06:19:45

使用Haproxy+nginx 搭建负载均衡集群的相关文章

Haproxy做LB负载均衡集群的搭建和配置,可以通过web页面监控web服务器的运行状态

HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理. 实验(一) 实验目的:使用Haproxy做负载均衡集群(七层) 实验环境准备: 客户端  IP地址:1.1.1.1 主机名waiwang web1   IP地址:1.1.1.10 主机名:localhost web2   IP地址:1.1.1.20 主机名:localhost 配置HA

HAProxy高可用负载均衡集群部署

HAProxy高可用负载均衡集群部署 基本信息: 系统平台:VMware WorkStation 系统版本: CentOS Linux release 7.2.1511 (Core) 内核版本: 3.10.0-327.el7.x86_64 集群架构: 前端:HAProxy 1.虚拟FQDN:www.simpletime.net 2.VIP:192.168.39.1:DIP:172.16.39.50 3.调度服务器:Varnish1.Varnish2 4.调度算法:URL_Hash_Consist

windows配置nginx实现负载均衡集群

网上大部分关于nginx负载均衡集群的教程都是linux环境.如何实现在windows配置nginx实现负载均衡集群一. windows上安装nginx1.下载nginx 网上大部分关于nginx负载均衡集群的教程都是linux环境.如何实现在windows配置nginx实现负载均衡集群 一. windows上安装nginx 1.下载nginx的windows版本 http://sysoev.ru/nginx/nginx-0.8.50.zip 2.把压缩文件解压至c盘根目录,并将文件夹重命名成n

Nginx + Tomcat 负载均衡集群的搭建实例

操作系统: CentOS6.5   JDK软件版本:jdk1.7.0_65  Tomcat软件版本:apache-tomcat-7.0.54 案例环境:拓扑图和案例环境 一.在对应的服务器上分别安装Nginx和Tomcat 1.Nginx的安装方法大家可以参考:Nginx的源码安装 2.Tomcat的安装方法大家可以参考:Tomcat的安装与配置 注意:如果防火墙没有关闭的朋友,在安装完成之后,分别在对应的服务器上创建防火墙规则 Nginx服务器上防火墙规则 Tomcat服务器上防火墙规则 二.

linux下lvs搭建负载均衡集群

常用开源集群软件有:lvs,keepalived,haproxy,nginx,apache,heartbeat 常用商业集群硬件有:F5,Netscaler,Radware,A10等 一.LVS介绍 LVS是linux virtual server的简写linux虚拟服务器,是一个虚拟的服务器集群系统,可以再unix/linux平台下实现负载均衡集群功能.该项目在1998年5月由章文嵩博士组织成立. LVS的三种工作模式:1.VS/NAT模式(Network address translatio

使用lvs搭建负载均衡集群

有时候,单台服务器的性能可能无法应付大规模的服务请求,且其一旦出现故障,就会造成用户在一段时间内无法访问.通过集群技术,可以在付出较低成本的情况下获得在性能.可靠性.灵活性方面的相对较高的收益. 集群是一组相互独立的.通过网络互联的计算机组,并以单一系统的模式加以管理,或用于分摊负载,或用于增强可靠性,或用于高速计算. 一.集群类型 LB:Load Balancing,负载均衡集群,用于消除单点故障,当一个节点出现故障而无法正常提供服务时,自动.快速地切换到另外的节点上去:常见软件或实现方式有l

Nginx+Tomcat负载均衡集群

第3章:部署Tomcat及其负载均衡(案例) 防伪码:成功之前必须与孤独为伍! Tomcat应用场景:  Tomcat服务器是一个免费的开放源代码的web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的的场合下被普遍应用,是开始和调试JSP程序的首选.但是由于其处理静态HTML的能力远不及Apache或者Nginx,所以Tomcat通常是作为一个Servlet和JSP容器,单独运行在后端.如图所示 一.部署tomcat 1.安装JDK,配置Java环境 1)安装jdk,建立

Nginx提供代理服务(网站代理),nginx实现负载均衡集群和高可用集群、nginx实现网站动静页面分离

静态页面:用静态编程语言编写的页面为静态页面,支持静态页面的语言为,css html  xml,不手动改变源代码,页面就不会改变. 动态页面:用动态编程语言编写的页面为动态页面,支持动态页面的语言有,java php .net,根据用户访问的时间和用户的不同显示不同的页面. nginx网站服务代理 实验(一)实验目的:nginx实现反向代理代替公网用户访问私网的web页面. 实验环境: 内网web服务器: IP地址 :192.168.1.1  主机名:fanlj nginx代理服务器:IP地址:

LVS搭建负载均衡集群

1.集群的概念: 服务器集群就是将很多服务器集中起来一起进行同一种服务,在客户端看来就像是只有一个服务器 2.集群的分类: 高可用集群(HA) 主要用于高可用解决方案的实现,节点间以主备形式,实现容灾:在大型故障的情况下实现快速恢复,快速提供服务 工作方式: 主从方式:主机工作,备机监控 互为主从:两服务器同时在线,一台服务器故障可切换到另一台上.有效的利用服务器资源,但当服务器故障时候,将可能导致服务器负载过大 多台服务器主从:大部分服务器在线使用,小部分监控:若有部分服务器故障,可切换到指定