zoukankan      html  css  js  c++  java
  • Centos 7 安装 Haproxy

    【环境】

    Centos 7.2

    Web1:192.168.136.170

    web2:192.168.136.166

    Haproxy:192.168.136.173

    【web服务器1、2】

    安装Nginx(可参考YUM快速搭建LNMP)两台Web服务器都需要安装Nginx

    为了方便区分web服务器,我们编辑下首页

    web1:

    echo 'This is web 1' > /usr/share/nginx/html/index.html
    
    systemctl restart nginx
    

    web2:

    echo 'This is web 1' > /usr/share/nginx/html/index.html
    
    systemctl restart nginx
    

    【Haproxy服务器】

    yum -y install haproxy

    编辑haproxy配置文件

    vim /etc/haproxy/haproxy.cfg

    (下列红色的#部分,是需要注释的,最下方的是web服务器的地址,如有多个节点,就继续添加)

    #---------------------------------------------------------------------
    # Example configuration for a possible web application.  See the
    # full configuration options online.
    #
    #   http://haproxy.1wt.eu/download/1.4/doc/configuration.txt
    #
    #---------------------------------------------------------------------
    
    #---------------------------------------------------------------------
    # Global settings
    #---------------------------------------------------------------------
    global
        # to have these messages end up in /var/log/haproxy.log you will
        # need to:
        #
        # 1) configure syslog to accept network log events.  This is done
        #    by adding the '-r' option to the SYSLOGD_OPTIONS in
        #    /etc/sysconfig/syslog
        #
        # 2) configure local2 events to go to the /var/log/haproxy.log
        #   file. A line like the following can be added to
        #   /etc/sysconfig/syslog
        #
        #    local2.*                       /var/log/haproxy.log
        #
        log         127.0.0.1 local2
    
    #    chroot      /var/lib/haproxy
        pidfile     /var/run/haproxy.pid
        maxconn     4000
        user        haproxy
        group       haproxy
        daemon
    
        # turn on stats unix socket
        stats socket /var/lib/haproxy/stats
    
    #---------------------------------------------------------------------
    # common defaults that all the 'listen' and 'backend' sections will
    # use if not designated in their block
    #---------------------------------------------------------------------
    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
    
    #---------------------------------------------------------------------
    # main frontend which proxys to the backends
    #---------------------------------------------------------------------
    frontend  main *:5000
        acl url_static       path_beg       -i /static /images /javascript /stylesheets
        acl url_static       path_end       -i .jpg .gif .png .css .js
    
        use_backend static          if url_static
        default_backend             app
    
    #---------------------------------------------------------------------
    # static backend for serving up images, stylesheets and such
    #---------------------------------------------------------------------
    backend static
        balance     roundrobin
        server      static 127.0.0.1:4331 check
    
    #---------------------------------------------------------------------
    # round robin balancing between the various backends
    #---------------------------------------------------------------------
    backend app
        balance     roundrobin
        server  app1 127.0.0.1:5001 check
        server  app2 127.0.0.1:5002 check
        server  app3 127.0.0.1:5003 check
        server  app4 127.0.0.1:5004 check
    listen webcluster 0.0.0.0:80
           option httpchk GET /index.html
           option persist
           balance roundrobin
           server inst1 192.168.136.170 check inter 2000 fall 3
           server inst2 192.168.136.166 check inter 2000 fall 3
    

    然后访问haproxy地址,查看是否会对两台web服务器进行轮询访问。

  • 相关阅读:
    JS高级程序设计 第三章笔记
    JS高级程序设计第二章
    JS高级程序设计 第一章读书笔记
    markdown 尝试
    实验九
    第六章总结
    实验五
    第五章总结
    实验四
    实验三
  • 原文地址:https://www.cnblogs.com/sanduzxcvbnm/p/14573296.html
Copyright © 2011-2022 走看看