haproxy详解

admin6个月前笔记52
1.安装haproxy

CentOS自带了haproxy,但可能版本比较老。可以在IUS源上找到最新稳定版的haproxy。

cat </etc/yum.repos.d/ius.repo
[ius]
name=iusrepo
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ius/stable/CentOS/$releasever/\$basearch
gpgcheck=0
enable=1
eof

yum -y install haproxy17u

以下是编译安装haproxy-1.7.10的过程。

编译安装haproxy时,可以借助于pcre环境,该环境下编译时借助正则表达式分析编译速度会快很多,但是没有该环境也可以安装。

yum -y install pcre pcre-devel
tar xf haproxy-1.7.10.tar.gz
cd haproxy-1.7.10
make TARGET=linux2628 ARCH=x86_64 PREFIX=/usr/local/haproxy USE_PCRE=1
make install PREFIX=/usr/local/haproxy

make时需要使用TARGET指定内核及版本,版本如下:

- linux22 for Linux 2.2
- linux24 for Linux 2.4 and above (default)
- linux24e for Linux 2.4 with support for a working epoll (> 0.21)
- linux26 for Linux 2.6 and above
- linux2628 for Linux 2.6.28, 3.x, and above (enables splice and tproxy)
- solaris for Solaris 8 or 10 (others untested)
- freebsd for FreeBSD 5 to 10 (others untested)
- netbsd for NetBSD
- osx for Mac OS/X
- openbsd for OpenBSD 5.7 and above
- aix51 for AIX 5.1
- aix52 for AIX 5.2
- cygwin for Cygwin
- haiku for Haiku
- generic for any other OS or version.
- custom to manually adjust every setting

使用ARCH指定架构,不过ARCH选项可省。使用USE_PCRE=1表示使用PCRE环境编译,加快编译速度。

编译安装完成后,只有3个目录:doc、share和sbin,sbin里面只有一个haproxy的主程序haproxy。为了方便管理haproxy服务,可以从yum安装的haproxy中复制/etc/init.d/haproxy。

2.haproxy命令

常用的几个:

# 检查配置文件语法
haproxy -c -f /etc/haproxy/haproxy.cfg

# 以daemon模式启动,以systemd管理的daemon模式启动
haproxy -D -f /etc/haproxy/haproxy.cfg [-p /var/run/haproxy.pid]
haproxy -Ds -f /etc/haproxy/haproxy.cfg [-p /var/run/haproxy.pid]

# 启动调试功能,将显示所有连接和处理信息在屏幕
haproxy -d -f /etc/haproxy/haproxy.cfg

# restart。需要使用st选项指定pid列表
haproxy -f /etc/haproxy.cfg [-p /var/run/haproxy.pid] -st `cat /var/run/haproxy.pid`

# graceful restart,即reload。需要使用sf选项指定pid列表
haproxy -f /etc/haproxy.cfg [-p /var/run/haproxy.pid] -sf `cat /var/run/haproxy.pid`

# 显示haproxy编译和启动信息
haproxy -vv


相关文章

evasive 模块保护您的网站免受应用层 DOS 攻击

evasive 模块保护您的网站免受应用层 DOS 攻击

有多种可以导致网站下线的攻击方法,比较复杂的方法要涉及数据库和编程方面的技术知识。一个更简单的方法被称为“拒绝服务Denial Of Service”(DOS)攻击。这个攻击方法的名字来源于它的意图:...

在 Linux 下使用任务管理器

在 Linux 下使用任务管理器

有很多 Linux 初学者经常问起的问题,“Linux 有任务管理器吗?”,“怎样在 Linux 上打开任务管理器呢?”来自 Windows 的用户都知道任务管理器非常有用。你可以...

详解MySQL性能指标及计算方法

详解MySQL性能指标及计算方法

绝大多数MySQL性能指标可以通过以下两种方式获取:mysqladmin使用mysqladmin extended-status命令获得的MySQL的性能指标,默认为累计值。如果想了解当前状态,需要进...

详解 RHEL7.1 yum源配置与软件安装

详解 RHEL7.1 yum源配置与软件安装

1.yum源的工作原理YUM是“Yellow dog Update, Modified”的缩写,是一个软件包管理器,因为Linux系统存在特有的依赖关系,YUM就是为了解决依赖关系而存在,YUM源相当...

Linux 系统的备份与恢复

Linux 系统的备份与恢复

tar 命令副本(本机备份整个系统,以后还原还是还原到本机)。注意根目录下要有充足的可用空间用于备份。cd /  #tar.gz格式  tar c...

史上最完全的,教你如何在 Linux 中如何打印和管理打印机

史上最完全的,教你如何在 Linux 中如何打印和管理打印机

前提条件为了更好地学习本系列教程,你需要具备基本的 Linux 知识,和使用 Linux 系统实践本教程中的命令的能力,你应该熟悉 GNU 和 UNIX® 命令的使用。有时不同版本的程序输出...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。