图片 8

CentOS下HAProxy安装和HAProxy命令入门教程,HaProxy安装配置入门学习

HaProxy安装配置入门学习

简介

HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代
理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理。HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中,
同时可以保护你的web服务器不被暴露到网络上。

安装
 
安装介质

从HaProxy官方网站下载最稳定的发布版本(1.4.25)源码包;使用源码包的好处是可以在不同的Linux环境上进行编译安装。

haproxy-1.4.25.tar.gz

环境准备

HaProxy支持大多数的Linux OS, 我选择开源的操作系统Ubuntu Server
14.04(64Bites),当然选择SUSE或RadHat也没有问题。如果没有Linux环境,可以安装虚拟软件(如VMWare)创建虚拟机并安装操作系统,由于Ubuntu比较小巧,占用资源较少,比较适合在本机虚拟化环境中运行。当然,现在的PC配置较高一般的Linux
OS可以安装几台都不成问题。

查看源码包下面的README文件,可以知道HAProxy所支持的OS:

  – 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 and above (enables splice and tproxy)

  – solaris    for Solaris 8 or 10 (others untested)

  – freebsd    for FreeBSD 5 to 8.0 (others untested)

  – osx        for Mac OS/X

  – openbsd    for OpenBSD 3.1 to 5.2 (others untested)

  – aix52      for AIX 5.2

  – cygwin      for Cygwin

  – generic    for any other OS.

  – custom      to manually adjust every setting

安装过程

(1)    解压安装包

如果你的本地环境是Linux,那就直接解压安装包;或者使用的是虚拟机,则把安装包上传至虚拟机(可以使用Xftp软件或Linux
scp命令);如果虚拟机可以连接Internet,也可以在虚拟机里直接下载HaProxy源码安装包;把准备好的源码安装包解压缩;

图片 1

(2)    源码包目录结构

图片 2

CHANGELOG : 版本变更信息,记录新增更能、BUG修改等信息

doc : 文档

example : 配置示例

tests : 测试用例(配置文件)

include : 依赖类库

ebtree : 类库

src : 源代码(c)

(3)    编译源码

与一般编译安装源码程序不同,HaProxy安装不需要执行configure操作,在其安装包根目录下可以发现不存在configure脚本;执行make命令编译源码;

图片 3

make TARGET=linux26 PREFIX=/opt/programs/haproxy-1.4.25

PREFIX指定安装程序的根目录,如果不指定则安装到系统默认目录下,编译结束根目录下多了一个可执行的文件:haproxy,就是核心程序,执行该命令可以启动HaProxy进程(当然要先准备好配置文件)。

图片 4

(4)    安装

执行make install安装编译产物。

图片 5

查看安装结果:

图片 6

配置

HAProxy源码安装包中带有配置示例和技术文档,可以参考学习。以下举例配置最常用的两种代理HTTP和TCP。

HTTP

环境准备

Apache-tomcat

192.168.226.128:8080

Apache-tomcat

192.168.226.129:8080

配置文件

global

  daemon

  maxconn 256

defaults

  mode http

  timeout connect 5000ms

  timeout client 50000ms

  timeout server 50000ms

listen http-in

  bind *:80

  server server1 192.168.226.128:8080 maxconn 32

  server server2 192.168.226.129:8080 maxconn 32

测试

先做一个简单的配置并测试。新建haproxy配置文件${haproxy.home}/conf/haproxy.cfg,输入上述配置内容后保存(配置文件可以任意命名,只要启动时指定配置文件路径即可
[-f ${cfgFilePath}])。执行${haproxy.home}/sbin/haproxy –f
${haproxy.home}/conf/haproxy.cfg启动haproxy进程。如果不知道命令参数,可以输入-h查看帮助信息。

图片 7

执行${haproxy.home}/sbin/haproxy -f
${haproxy.home}/conf/haproxy.cfg启动haproxy进程;

图片 8

1.安装HAProxy

CentOS自带了haproxy,但可能版本比较老。可以在IUS源上找到最新稳定版的haproxy。
cat <<eof>/etc/yum.repos.d/ius.repo
[ius]
name=iusrepo
baseurl=
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。

————————————–分割线

Haproxy+Keepalived搭建Weblogic高可用负载均衡集群

Keepalived+HAProxy配置高可用负载均衡

CentOS 6.3下Haproxy+Keepalived+Apache配置笔记

Haproxy + KeepAlived 实现WEB群集 on CentOS 6

Haproxy+Keepalived构建高可用负载均衡

使用 HAProxy 配置 HTTP 负载均衡器

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

构建高可用集群Keepalived+Haproxy负载均衡 

HAproxy的基本配置(负载均衡+日志独立+动静分离+读写分离) 

CentOS 7下Keepalived + HAProxy 搭建配置详解 

HAproxy实现反向代理和负载均衡 

HAProxy+Keepalived实现高可用负载均衡

使用 HAProxy 配置 HTTP 负载均衡器

Ubuntu 16.04
下安装HAProxy 1.5.11 做tcp负载均衡

CentOS 7.2 部署Haproxy 1.7.2 

HAproxy
的详细介绍
:请点这里
HAproxy
的下载地址
:请点这里

本文永久更新链接地址

图片 9