haproxy2.0入门部署教程

摘要:
可以看到安装PREFIX指定的安装目录为/usr/local/haproxy。haproxy还可以到这个地址下载https://src.fedoraproject.org/repo/pkgs/haproxy/cdwgethttps://www.haproxy.org/download/2.0/src/haproxy-2.0.1.tar.gztarzxvfhaproxy-2.0.1.tar.gzcdhaproxy-2.0.1make-j$TARGET=linux-glibcUSE_OPENSSL=1USE_ZLIB=1USE_LUA=1LUA_LIB=/usr/local/lua/lib/LUA_INC=/usr/local/lua/include/USE_PCRE=1USE_SYSTEMD=1makeinstallPREFIX=/usr/local/haproxycd1.3创建运行用户(应该也可忽略,只是使用该用户运行,加强安全而已。我一般是直接使用root用户运行)useraddhaproxy-s/sbin/nologin1.4创建配置文件haproxy.cfg。使用谷歌浏览器访问172.16.1.227,每次刷新的内容都和上一次不一样

测试后发现,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
makelinux
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

haproxy2.0入门部署教程第1张

1.6测试效果

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

haproxy2.0入门部署教程第2张

haproxy2.0入门部署教程第3张

免责声明:文章转载自《haproxy2.0入门部署教程》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇【终极指南】图文详解Chrome插件离线安装方法Elevator下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

linux系统redhat 8.3 安装R

1、查看当前系统: [root@rhel8 home]# cat /etc/redhat-release Red Hat Enterprise Linux release 8.3 (Ootpa) [root@rhel8 home]# hostnamectl Static hostname: rhel8 Icon name: comp...

Linux sudo 找不到命令

普通用户执行需要root权限的命令,提示“找不到命令”,但是root用户执行该命令不报错,可能是由于该命令未处在sudo搜索的路径。 本文以sudo easy_install 为例,给出的提示为: sudo:easy_install:找不到命令 工具/原料 Linux系统 方法/步骤 用非root用户登录,输入 sudo which easy_insta...

蛋疼的haproxy,原来你是这样支持请求转发的_阿福的技术BLOG_百度空间

蛋疼的haproxy,原来你是这样支持请求转发的_阿福的技术BLOG_百度空间 蛋疼的haproxy,原来你是这样支持请求转发的 2010-12-07 19:52 在一个WEB环境中,根据path区分静态文件和动态数据的请求,并把静态文件和CGI放在不同的服务器上。 后来,蛋疼的现象出现了:CGI服务器上发现了对静态文件的请求!!! GouRiDe的...

Gitea安装笔记

什么是gitea Gitea 是一个开源社区驱动的轻量级代码托管解决方案,后端采用 Go 编写,采用 MIT 许可证. 官网:https://gitea.io/zh-cn/ 为什么要用gitea 开源免费 系统要求低,节约资源 gitea的安装(centos 7源码安装) 相关环境安装 yum install -y wget yum install -...

宝塔面板SSpanel-v3-mod安装教程 搭建sspanel v3魔改前端

教程演示环境及工具准备: vultr家的主机 【新用户注册可获取50美金】 CentOS 7X64 【每月5美元,无限流量】 ssh工具:xshell点击下载 连接VPS,开始安装宝塔面板 centos yum install -y wget && wget -O install.sh http://download.bt.cn/in...

linux(centos7)中安装7z

linux(centos7)中安装7z 一. 先安装wget yum -y install wget 二. 下载7z的压缩包 wget https://sourceforge.net/projects/p7zip/files/p7zip/16.02/p7zip_16.02_src_all.tar.bz2 三. 安装bzip yum install -y b...