zoukankan      html  css  js  c++  java
  • 部署haproxy

    安装依赖

    yum install -y gcc pcre pcre-devel openssl openssl-devel

    创建依赖账号,并禁止账号登录

    useradd -M -s /sbin/nologin -u 1000 haproxy
    

    编译安装haproxy

    cd /usr/local/src/
    wget https://www.haproxy.org/download/1.7/src/haproxy-1.7.11.tar.gz
    tar xf haproxy-1.7.11.tar.gz
    cd haproxy-1.7.11/
    make TARGET=linux2628 USE_PCRE=1 USE_OPENSSL=1 USE_ZLIB=1  PREFIX=/usr/local/haproxy
    make install PREFIX=/usr/local/haproxy
    /usr/local/haproxy/sbin/haproxy -v
    

     复制haproxy启动脚本到启动目录下

    cp /usr/local/src/haproxy-1.7.11/haproxy /usr/sbin/
    cp /usr/local/src/haproxy-1.7.11/haproxy-systemd-wrapper /usr/sbin
    

     配置成systemctl可以管理

    vim /usr/lib/systemd/system/haproxy.service

    [Unit]
    Description=HAProxy Load Balancer
    After=syslog.target network.target
    
    [Service]
    EnvironmentFile=/etc/sysconfig/haproxy
    ExecStart=/usr/sbin/haproxy-systemd-wrapper -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid $OPTIONS
    ExecReload=/bin/kill -USR2 $MAINPID
    
    [Install]
    WantedBy=multi-user.target

    编辑配置文件

    cat /etc/sysconfig/haproxy

    # Add extra options to the haproxy daemon here. This can be useful for
    # specifying multiple configuration files with multiple -f options.
    # See haproxy(1) for a complete list of options.
    OPTIONS="" 

    编辑主配置文件

    mkdir /etc/haproxy/

    vim /etc/haproxy/haproxy.cfg

    global
    maxconn 100000
    chroot /usr/local/haproxy
    uid 1000
    gid 1000
    daemon
    nbproc 1
    pidfile /usr/local/haproxy/run/haproxy.pid
    log 127.0.0.1 local6 info
    
    defaults
    option http-keep-alive
    maxconn 100000
    mode http
    timeout connect 300000ms
    timeout client  300000ms
    timeout server  300000ms
    
    listen stats
     mode http
     bind 0.0.0.0:8888   # 访问的端口
     stats enable
     log global
     stats uri     /haproxy-status   #状态地址
     stats auth    haproxy:123456    #登录账号和密码
    #frontend web_port
    frontend frontend_www_example_com
        bind 10.0.0.80:80
        mode http
        option httplog
        log global
        default_backend backend_www_example_com
    
    backend backend_www_example_com
        option forwardfor header X-REAL-IP
        option httpchk HEAD / HTTP/1.0
        balance source
        server web-node1  10.0.0.80:8080 check inter 2000 rise 30 fall 15
        server web-node2  10.0.0.81:8080 check inter 2000 rise 30 fall 15
    

      创建PID文件存放路径

    mkdir /usr/local/haproxy/run/
    

     启动服务

    systemctl enable haproxy.service
    systemctl start haproxy.service
    

     修改日志存放位置  vim /etc/rsyslog.conf

    [root@node-1 haproxy-1.7.11]# sed -n "15,21p" /etc/rsyslog.conf
    $ModLoad imudp
    $UDPServerRun 514
    # Provides TCP syslog reception
    $ModLoad imtcp
    $InputTCPServerRun 514
    local6.*     /var/log/haproxy/haproxy.log
    local6.*     @@10.0.0.80:5160
    [root@node-1 haproxy-1.7.11]#
    

     创建日志存放位置并授权haproxy

    mkdir /var/log/haproxy
    chown -R haproxy.haproxy /var/log/haproxy
    

     重启服务生效

    systemctl restart rsyslog
    systemctl restart haproxy.service
    

     

  • 相关阅读:
    vue 启动报错:`TypeError: Cannot read property 'range' of null`
    手动创建自己的npm包
    uni-app 拦截页面传参
    uni-app的vue.config.js
    插入排序
    选择排序
    设计模式--享元模式
    设计模式--代理模式
    原型链图片
    深度优先遍历和广度优先遍历
  • 原文地址:https://www.cnblogs.com/huanglingfa/p/13796900.html
Copyright © 2011-2022 走看看