#!/bin/bash

 #需要lua-5.3..tar.gz、haproxy-2.0..tar.gz在家目录下
# 编译安装lua
#安装编译环境需要的包
yum -y install gcc openssl-devel pcre-devel systemd-devel readline-devel #下载lua包
#wget http://www.lua.org/ftp/lua-5.3.5.tar.gz # 解压到lua包到指定的文件夹 -C 指定文件夹 tar xvf lua-5.3..tar.gz -C /usr/local/src cd /usr/local/src/lua-5.3./ #编译安装lua
make linux test # 编译安装haproxy
cd tar xvf haproxy-2.0..tar.gz -C /usr/local/src/ cd /usr/local/src/haproxy-2.0./ #编译参数
make ARCH=x86_64 TARGET=linux-glibc USE_PCRE=1USE_OPENSSL= USE_ZLIB= USE_SYSTEMD= USE_LUA= LUA_INC=/usr/local/src/lua-5.3./src/ LUA_LIB=/usr/local/src/lua-5.3./src/ make install PREFIX=/apps/haproxy #软连接方式配置环境变量
ln -s /apps/haproxy/sbin/haproxy /usr/sbin/ #准备配置文件和socket目录
mkdir /var/lib/haproxy -p
mkdir /etc/haproxy -p #创建启动haproxy用的账户
useradd -r -s /sbin/nologin -d /var/lib/haproxy/ haproxy #导入cfg文件
cat > /etc/haproxy/haproxy.cfg <<EOF
global
maxconn
chroot /apps/haproxy
stats socket /var/lib/haproxy/haproxy.sock mode level admin
#uid
#gid
user haproxy
group haproxy
daemon
#nbproc
#cpu-map
#cpu-map
#cpu-map
#cpu-map
pidfile /var/lib/haproxy/haproxy.pid
log 127.0.0.1 local2 info defaults
option http-keep-alive
option forwardfor
maxconn
mode http
timeout connect 300000ms
timeout client 300000ms
timeout server 300000ms listen stats
mode http
bind 0.0.0.0:
stats enable
log global
stats uri /haproxy-status
stats auth haadmin: #listen web_port
# bind 10.0.0.7:
# mode http
# log global
# server web1 127.0.0.1: check inter fall rise EOF #开机启动service文件 cat > /usr/lib/systemd/system/haproxy.service <<EOF
[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
EOF # 文件生效
systemctl daemon-reload systemctl enable --now haproxy.service
[root@rs2 ~]#vim haproxy.sh #!/bin/bash #需要lua-5.3..tar.gz、haproxy-2.0..tar.gz在家目录下
# 编译安装lua
#安装编译环境需要的包
yum -y install gcc openssl-devel pcre-devel systemd-devel readline-devel #下载lua包
#wget http://www.lua.org/ftp/lua-5.3.5.tar.gz # 解压到lua包到指定的文件夹 -C 指定文件夹 tar xvf lua-5.3..tar.gz -C /usr/local/src cd /usr/local/src/lua-5.3./ #编译安装lua
make linux test # 编译安装haproxy
cd tar xvf haproxy-2.0..tar.gz -C /usr/local/src/ cd /usr/local/src/haproxy-2.0./ #编译参数
make ARCH=x86_64 TARGET=linux-glibc USE_PCRE=1USE_OPENSSL= USE_ZLIB= USE_SYSTEMD= USE_LUA= LUA_INC=/usr/local/src/lua-5.3./src/ LUA_LIB=/usr/local/src/lua-5.3./src/ make install PREFIX=/apps/haproxy #软连接方式配置环境变量
ln -s /apps/haproxy/sbin/haproxy /usr/sbin/ #准备配置文件和socket目录
mkdir /var/lib/haproxy -p
mkdir /etc/haproxy -p #创建启动haproxy用的账户
useradd -r -s /sbin/nologin -d /var/lib/haproxy/ haproxy #导入cfg文件
cat > /etc/haproxy/haproxy.cfg <<EOF
global
maxconn
chroot /apps/haproxy
stats socket /var/lib/haproxy/haproxy.sock mode level admin
#uid
#gid
user haproxy
group haproxy
daemon
#nbproc
#cpu-map
#cpu-map
#cpu-map
#cpu-map
pidfile /var/lib/haproxy/haproxy.pid
log 127.0.0.1 local2 info defaults
option http-keep-alive
option forwardfor
maxconn
mode http
timeout connect 300000ms
timeout client 300000ms
timeout server 300000ms listen stats
mode http
bind 0.0.0.0:
stats enable
log global
stats uri /haproxy-status
stats auth haadmin: #listen web_port
# bind 10.0.0.7:
# mode http
# log global
# server web1 127.0.0.1: check inter fall rise EOF #开机启动service文件 cat > /usr/lib/systemd/system/haproxy.service <<EOF
[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
EOF # 文件生效
systemctl daemon-reload systemctl enable --now haproxy.service

最新文章

  1. JavaScript面向对象的程序设计
  2. java和h5 canvas德州扑克开发中(二)
  3. jQuery ------------&gt; 验证表单
  4. IOS网络请求原理
  5. Directx11教程(14) D3D11管线(2)
  6. SharePoint 2013 开启访问请求
  7. Gradle多项目构建
  8. 转载: C++ 转换构造函数 和 类型转换函数
  9. 51nod 博弈论水题
  10. mysql使用经验总结
  11. 中国25位最具影响力的IC人物
  12. 测试开发Python培训:实现屌丝的图片收藏愿望(小插曲)
  13. Problem A
  14. opencv 增强现实(一):特征点检测
  15. dropout——gluon
  16. IP地址和域
  17. Linux ldconfig命令
  18. 本地Run Page时报检测到意外的 URL 参数,它将被忽略。
  19. 安装wamp 缺少msvcr100.dll
  20. delphi XE8 NetHTTPRequest NetHTTPClient

热门文章

  1. Java注解 看这一篇就够了
  2. 【简说Python WEB】视图函数操作数据库
  3. 单片机的 HexToStr HexToBcd BcdToStr 几个转换函数
  4. Oracle数据库的创建表全
  5. 结构化学习(Structured Learning)
  6. 解决使用requests_html模块,req.html.render()下载chromium速度慢问题
  7. 优化Python代码的4种方法
  8. Rust入坑指南:居安思危
  9. Oracle 11g中创建实例
  10. php _weakup()反序列化漏洞