- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
HAProxy的安装和部署
HAProxy的安装和部署
September 2, 2010 2 Comments
考虑公司当前服务器的并发量,最终还是选定了HAProxy来实现负载均衡,相较于其他的负载均衡系统,HAProxy的配置和使用还是比较简单的。下面是自己安装和部署haproxy的记录,比较重要的一点是解决了haproxy + syslog-ng的日志输出问题。PS: 这个问题费了我好大神:-|
PLATFORM: SUSE Linux Enterprise Server 11 (x86_64)
1. haproxy的编译安装
获取haproxy的源代码官方地址:http://haproxy.1wt.eu/目前最新的版本:http://haproxy.1wt.eu/download/1.4/src/haproxy-1.4.8.tar.gz
命令:
wget http://haproxy.1wt.eu/download/1.4/src/haproxy-1.4.8.tar.gz
考虑到版本的更新,具体的安装属性可能会稍有改变,建议在安装前可以大致浏览下haproxy目录下的README和Makefile两个文件。编译haproxy进入解压后的haproxy的目录,用下列命令进行编译:
make TARGET=os ARCH=arch CPU=cpu USE_xxx=1 ...
这里着重说明几个常用的选项。
TARGET指定对目标操作系统在编译的时候进行优化,可选择如下值之一:Generic, linux22, linux24, linux24e, linux26, solaris, freebsd, openbsd,Cygwin, custom。如果不确定目标系统,可以保留默认值generic。
CPU指定对特定的CPU进行优化,可选择如下值之一:generic, i586, i686, ultrasparc, custom。默认值为generic。
ARCH指定ARCH值可强制编译生成针对一个特定系统架构的程序。通常用于在一个系统架构的平台上生成针对另一个不同架构平台的程序,比如在一个64位架构的目标系统上编译生成一个32位的程序。
当前可选的值有:x86_64, i386, i486, i586, i686。注:若选择上述其中的一个值,”-m32”或”-m64”会被添加到CFLAGS和LDFLAGS选项中。
DEBUG指定生成调试信息,可通过指定DEBUG=-DDEBUG_xxx对特定的代码部分生成调试信息。当前定义的DEBUG宏有:DEBUG_FULL, DEBUG_MEMORY, DEBUG_FSM, DEBUG_HASH和DEBUG_AUTH。USE_PCRE, USE_STATIC_PCRE 选项可通过指定”USE_xxx=1”表示使用,指定”USE_xxx=”表示禁用。
指定是否使用libpcre库中的正则表达式实现来代替系统的libc库中的实现,考虑到使用libpcre库的效率要比libc高,因此推荐使用此选项。
注:因libpcre还没有广泛普及,因此在动态链接的时候,需确保目标系统安装有libpcre的动态库。因libpcre还没有广泛普及,因此在动态链接 的时候,需确保目标系统安装有libpcre的动态库。针对上面的问题,可以使用USE_STATIC_PCRE,指定静态链接libpcre。使用libpcre库编译时,需先确保系统已安装libpcre库。若不使用libpcre,则默认使用系统libc库中的标准正则表达式实现。强烈推荐使用static_pcre。
PREFIX指定安装目录,默认为/usr/local,其他诸如文档之类的文件将会在PREFIX指定的相应目录下。
DESTDIR指定安装目录,默认没有设置,如果想将haproxy安装一个沙盒中则可以指定该属性。考虑到我们的系统为Linux,内核2.6+版本的,CPU为x86_64的,可以使用如下命令编译:
make TARGET=linux26 USE_STATIC_PCRE=1
安装 HAProxy可以直接将生成的haproxy程序拷贝到你想安装到的目录。或者执行命令安装到之前指定或默认的目录:sudo make install
2. 配置 HAProxy
Doc/目录下提供了一些文档,具体的配置说明可以参考在configuration.txt文件。下面主要说明下配置过程中日志输出问题和一些需要注意的配置选项。
1). 日志的输出问题。
根据说明,haproxy的日志输出使用了系统的日志程序,比如syslogd, syslog-ng。这两个日志系统使用上其主要的区别就是其配置文件的格式不同,考虑syslog-ng算是
文档评论(0)