haproxy的安裝

編譯安裝 lua

常用包

yum -y install gcc gcc-c++ glibc glibc-devel pcre pcre-devel openssl openssl-devel systemd-devel net-tools vim iotop bc zip unzip zlib-devel lrzsz tree screen lsof tcpdump wget ntpdate

安裝包

yum install libtermcap-devel ncurses-devel libevent-devel readline-devel gcc gcc-c++ -y

下載

wget http://www.lua.org/ftp/lua-5.3.5.tar.gz

安裝

tar xvf lua-5.3.5.tar.gz
cd lua-5.3.5/
make linux test

查看版本
在這裏插入圖片描述

編譯安裝 haproxy

下載地址:https://src.fedoraproject.org/repo/pkgs/haproxy/
下載地址:http://www.haproxy.org/

tar xvf haproxy-2.1.0.tar.gz
cd haproxy-2.1.0/

make ARCH=x86_64 \   #CPU架構
TARGET=linux-glibc \   #通用linux內核
USE_PCRE=1 \      #PCRE支持正則表達式,用於用戶請求的uri
USE_OPENSSL=1 \   #https,證書
USE_ZLIB=1 \     #開啓壓縮
USE_SYSTEMD=1 \    #使用systemd啓動haproxy主進程 
USE_CPU_AFFINITY=1 \    #CPU親和性,讓haproxy指定的進程工作在指定的CPU核心上
USE_LUA=1 \        #開啓lua,及lua和lua庫所在路徑
LUA_INC=/usr/local/src/lua-5.3.5/src/ \
LUA_LIB=/usr/local/src/lua-5.3.5/src/ \
PREFIX=/usr/local/haproxy     #指定安裝路徑

make install PREFIX=/usr/local/haproxy

可執行程序 haproxy 放到 /usr/sbin/目錄下,方便應用

cp /usr/local/haproxy/sbin/haproxy /usr/sbin/

在這裏插入圖片描述
啓動腳本
vim /usr/lib/systemd/system/haproxy.service

[Unit]
Description=HAProxy Load Balancer
After=syslog.target network.target
[Service]
ExecStartPre=/usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -c -q
ExecStart=/usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /var/lib/haproxy/haproxy.pid
ExecReload=/bin/kill -USR2 $MAINPID
[Install]
WantedBy=multi-user.target

配置文件

mkdir /var/lib/haproxy
mkdir /etc/haproxy
vim /etc/haproxy/haproxy.cfg
global
    maxconn 100000
    chroot /usr/local/haproxy
    #stats socket /var/lib/haproxy/haproxy.sock mode 600 level admin
    uid 99
    gid 99
    daemon
    #nbproc 4
    #cpu-map 1 0
    #cpu-map 2 1
    #cpu-map 3 2
    #cpu-map 4 3
    pidfile /var/lib/haproxy/haproxy.pid
    log 127.0.0.1 local3 info

defaults
    option http-keep-alive
    option forwardfor
    maxconn 100000
    mode http
    timeout connect 300000ms
    timeout client 300000ms
    timeout server 300000ms

listen stats
    mode http
    bind 0.0.0.0:9999
    stats enable
    log global
    stats uri /haproxy-status
    stats auth haadmin:q1w2e3r4ys

listen web_port
    bind 192.168.43.9:80
    mode http
    log global
    server web1 192.168.43.19:80 check inter 3000 fall 2 rise 5

啓動 haproxy

systemctl start haproxy

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章