• haproxy2.0入门部署教程【转】


    测试后发现,haproxy2.0和之前的版本部署有些许差异,配置文件的写法也是不同的

    测试环境:Centos7.3

    IP:172.16.1.227

      172.16.1.228 部署httpd,页面内容为this is 228

      172.16.1.230 部署httpd,页面内容为默认内容

    部署步骤:

    1.1需要先安装lua5.3版本,否则后面后报错

    curl -R -O http://www.lua.org/ftp/lua-5.3.5.tar.gz 
    yum install readline-devel gcc -y
    tar zxvf lua-5.3.5.tar.gz
    cd lua-5.3.5
    make linux
    make INSTALL_TOP=/usr/local/lua install
    yum install systemd-devel wget openssl openssl-devel -y

    1.2部署haproxy。可以看到安装PREFIX指定的安装目录为/usr/local/haproxy 。haproxy还可以到这个地址下载https://src.fedoraproject.org/repo/pkgs/haproxy/

    cd
    wget https://www.haproxy.org/download/2.0/src/haproxy-2.0.1.tar.gz
    tar zxvf haproxy-2.0.1.tar.gz cd haproxy-2.0.1 make -j $(nproc) TARGET=linux-glibc USE_OPENSSL=1 USE_ZLIB=1 USE_LUA=1 LUA_LIB=/usr/local/lua/lib/ LUA_INC=/usr/local/lua/include/ USE_PCRE=1 USE_SYSTEMD=1 make install PREFIX=/usr/local/haproxy
    cd

    1.3创建运行用户(应该也可忽略,只是使用该用户运行,加强安全而已。我一般是直接使用root用户运行)

    useradd haproxy -s /sbin/nologin

    1.4创建配置文件haproxy.cfg。在安装目录/usr/local/hadproxy下新建haproxy.cfg,内容如下 配置文件参考链接:https://blog.csdn.net/genglei1022/article/details/83374188

    [root@node2 haproxy]# cat haproxy.cfg
    global  #全局设置
       daemon  #以后台进程运行
       maxconn 256  #每个进程的最大连接数
       nbproc 1  #进程数,该值可以设置小于或等于cpu核心数

      balance roundrobin #默认的负载均衡的方式,轮询方式 
      #balance source #默认的负载均衡的方式,类似nginx的ip_hash 
      #balance leastconn #默认的负载均衡的方式,最小连接 

    defaults  #默认设置
      mode http  #设置http(七层模式),也可设置为tcp(四层模式),另外还有一个Health健康监测模式。对mysql进行负载均衡的话,这里记得修改为tcp
      timeout connect 5000ms
      timeout client 50000ms
      timeout server 50000ms
      

    listen admin_stats #配置haproxy管理页面
      bind *:9999  #访问端口为9999
      mode http
      option httplog
      stats refresh 30s  #自动刷新时间
      stats uri /stats  #项目名为status,ip+端口+项目名即可访问
      stats auth admin:admin  #配置管理用户账号密码
      stats admin if TRUE
      stats hide-version

    frontend http-in  #配置前端访问端口
      bind *:1080  #通过该端口进行负载均衡
      default_backend servers  #指定后端服务器

    backend servers
      server server1 172.16.1.230:80 check inter 2000 rise 3 fall 3 weight 1 maxconn 32  

      #建议加上check,否则后台服务器A宕机了,负载均衡还会把请求发送到该宕机服务器上,inter 2000指check检测时间为2000毫秒,rise 3检测3次均正常则表示后天服务器正常,fall 3检测3次失败,则会把该后天服务器标志宕机,不再玩该后台服务器发送请求,weight 1指权重,取消weight改为backup,则是所有后台服务器宕机后才会启用该backup后台服务器
      server server2 172.16.1.227:80 check inter 2000 rise 3 fall 3 weight 1 maxconn 32

    1.5使用指定配置文件运行haproxy。建议都haproxy和hadproxy.cfg都使用绝对路径

    /usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg

    1.6测试效果

    其中228的80端口上我启用了httpd,页面内容为this is 228.另外一台230上的80端口也是httpd,页面为默认内容。使用谷歌浏览器访问172.16.1.227,每次刷新的内容都和上一次不一样

    转自

    haproxy2.0入门部署教程 - 标配的小号 - 博客园 https://www.cnblogs.com/biaopei/p/11321947.html

    参考

    Haproxy 2.0.1安装 - 云溪-云溪 https://www.xwroot.com/archives/haproxy-2-%E5%AE%89%E8%A3%85/

  • 相关阅读:
    java:产生小数位数为2的随机概率,使得和为1
    大数据网络分析规划
    java碎笔
    mysql修改记录
    mysql导入导出数据
    Centos中hive/hbase/hadoop/mysql实际操作及问题总结
    linux后台运行程序
    Centos搭建mysql/Hadoop/Hive/Hbase/Sqoop/Pig
    ARM-LINUX自动采集温湿度传感器数据
    java中枚举类型的使用
  • 原文地址:https://www.cnblogs.com/paul8339/p/13650757.html
Copyright © 2020-2023  润新知