zoukankan      html  css  js  c++  java
  • haproxy

    l  HAProxy是什么

     

    HAProxy是一个高性能的开源并且免费的负载均衡软件,可以运行于大部分主流的Linux操作系统上。

    HAProxy提供了L4(TCP)和L7(HTTP)两种负载均衡能力,具备丰富的功能。HAProxy的社区非常活跃,版本更新快速, HAProxy性能很高

    l  HAProxy的核心功能

    • 负载均衡:L4和L7两种模式,支持RR/静态RR/LC/IP Hash/URI Hash/URL_PARAM Hash/HTTP_HEADER Hash等丰富的负载均衡算法
    • 健康检查:支持TCP和HTTP两种健康检查模式
    • 会话保持:对于未实现会话共享的应用集群,可通过Insert Cookie/Rewrite Cookie/Prefix Cookie,以及上述的多种Hash方式实现会话保持
    • SSL:HAProxy可以解析HTTPS协议,并能够将请求解密为HTTP后向后端传输
    • HTTP请求重写与重定向
    • 监控与统计:HAProxy提供了基于Web的统计信息页面,展现健康状态和流量数据。基于此功能,使用者可以开发监控程序来监控HAProxy的状态

    l  HAProxy的配置文件共有5个域

    global:用于配置全局参数

    default:用于配置所有frontend和backend的默认属性

    frontend:用于配置前端服务(即HAProxy自身提供的服务)实例

    backend:用于配置后端服务(即HAProxy后面接的服务)实例组

    listen:frontend+backend的组合配置,可以理解成更简洁的配置方法

    l  配置一个负载均衡集群:

    安装haproxy

    yum -y install haproxy

    打开配置文件:

    #vim /etc/haproxy/haproxy.cfg

    1.     定义后端服务器组

     

     

    定义一个后端服务器组,webservers

    定义这个服务器组算法为:roundrobin (轮询)

    定义后端真实服务器(server):

    2.     定义前端服务器

     

    定义一个前端服务器 web

    定义前端服务器监听地址和端口:

    定义默认转发给后端的webservers服务器组

    3.     启动haproxy

    service haproxy start

    关闭防火墙:

    service iptables stop

    setenforce 0

    4.     配置web服务器

    yum -y install httpd

    vim /var/www/html/index.html

    <h1>web1<h1>

    另一台也做相同的动作创建页面

    vim /var/www/html/index.html

    <h1>web2<h1>

    启动httpd

    service httpd start

    关闭防火墙:

    service iptables stop

    setenforce 0

    测试访问haproxy

     

    开启统计信息页面

    定义一个前端服务器:

    frontend stats

        bind *:8080    #监听的地址和端口

        stats uri /stats  #访问的uri

        stats refresh 10s #页面自动刷新间隔时间

    stats auth admin:admin  #访问页面的账号和密码

    重启haproxy

    service haproxy  restart

    配置Haproxy动静分离

    编辑haproxy配置文件,定义过滤规则

    acl:           定义一个过滤规则

    path_end:   定义过滤规则以什么结尾

    -i:               不区分大小写

    use_backend:和acl结合使用,定义当过滤规则匹配生效后要转发的后端服务器组

    定义后端服务求组

     

    定义默认后端服务器组:webservers

    定义静态后端服务器组:dg

    至此配置完毕,haproxy将会把以.html结尾的静态页面转发给dg后端服务器组,其他默认转发给webservers

    保存退出后,重启haproxy

    #service haproxy restart

    访问html测试

    默认会去访问webservers

  • 相关阅读:
    python爬虫学习
    Java基础知识11--Optional类
    07 Windows访问远程共享文件夹---利用\IP地址
    Springcloud 学习笔记15-打开postman console控制台,查看接口测试打印log日志信息
    Springcloud 学习笔记14-IaaS, PaaS和SaaS的区别
    Springcloud 学习笔记13-使用PostMan上传/下载文件,前后端联合测试
    Java基础知识10--Stream API详解02
    Java基础知识09--Stream API详解01
    洛谷 P2587 [ZJOI2008]泡泡堂(贪心)
    洛谷 P3199 [HNOI2009]最小圈(01分数规划,spfa判负环)
  • 原文地址:https://www.cnblogs.com/fang12311/p/13307132.html
Copyright © 2011-2022 走看看