主机名 IP
master 192.168.30.130
node-1 192.168.30.131
node-2 192.168.30.132

在master上安装

[root@master ~]# tar -xf haproxy-1.4..tar.gz -C /usr/local/src/
[root@master ~]# cd /usr/local/src/
[root@master src]# cd haproxy-1.4./
[root@master haproxy-1.4.]# ls
CHANGELOG doc examples LICENSE Makefile.bsd README src tests VERDATE
contrib ebtree include Makefile Makefile.osx ROADMAP SUBVERS TODO VERSION
[root@master haproxy-1.4.]# vim Makefile
PREFIX = /usr/local/haproxy
SBINDIR = $(PREFIX)/sbin
MANDIR = $(PREFIX)/share/man
DOCDIR = $(PREFIX)/doc/haproxy #### TARGET system
# Use TARGET=<target_name> to optimize for a specifc target OS among the
# following list (use the default "generic" if uncertain) :
# generic, linux22, linux24, linux24e, linux26, solaris,
# freebsd, openbsd, cygwin, custom, aix52
TARGET = Linux26
[root@master haproxy-1.4.]# make install
.........................
install -d /usr/local/haproxy/sbin
install haproxy /usr/local/haproxy/sbin
install -d /usr/local/haproxy/share/man/man1
install -m doc/haproxy. /usr/local/haproxy/share/man/man1
install -d /usr/local/haproxy/doc/haproxy
...

配置haproxy

[root@master haproxy-1.4.]# ls /usr/local/haproxy/  #可以看出目录下面没有配置文件,需要手动创建
doc sbin share
[root@master haproxy-1.4.]# cd /usr/local/haproxy/
[root@master haproxy]# mkdir etc
[root@master haproxy]# cd etc/
[root@master etc]# touch haproxy.cfg
global
log 127.0.0.1 local0
#log 127.0.0.1 local1 notice
#log loghost local0 info
maxconn
chroot /usr/local/haproxy
uid #所属运行的用户uid
gid #所属运行的用户组
daemon #以后台形式运行haproxy
nbproc #启动1个haproxy实例
pidfile /usr/local/haproxy/haproxy.pid #将所有进程写入pid文件
#debug
#quiet
defaults
log global
log 127.0.0.1 local3 #日志文件的输出定向
mode http #所处理的类别,默认采用http模式,可配置成tcp作4层消息转发
option httplog #日志类别
option httpclose #每次请求完毕后主动关闭http通道,haproxy不支持keep-alive,只能模拟这>
种模式的实现
option dontlognull
option forwardfor #如果后端服务器需要获得客户端真实ip需要配置的参数,可以从Http Head
er中获得客户端ip
option redispatch #当serverid对应的服务器挂掉后,强制定向到其他健康服务器
retries #2次连接失败就认为服务器不可用,主要通过后面的check检查
maxconn
balance roundrobin #负载均衡算法
stats uri /haproxy-stats #haproxy 监控页面的访问地址
# 可通过 http://localhost:80/haproxy-stats 访问
contimeout #连接超时时间
clitimeout #客户端连接超时时间
srvtimeout #服务器端连接超时时间
listen localhost 0.0.0.0: #运行的端口及主机名
mode http
option httpchk GET /index.html #健康检测
server s1 192.168.30.131: weight check #后端的主机 IP &权衡
server s2 192.168.30.132: weight check #后端的主机 IP &权衡
#server s3 192.168.148.110: weight check #后端的主机 IP &权衡

启动和停止haproxy

[root@master ~]# /usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/etc/haproxy.cfg
[root@master ~]# echo $? [root@master ~]# ps -aux | grep haproxy | grep -v grep
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2./FAQ
nobody 0.0 0.0 ? Ss : : /usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/etc/haproxy.cfg
重启haproxy
[root@master ~]# /usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/etc/haproxy.cfg -st `cat /usr/local/haproxy/haproxy.pid`
[root@master ~]# echo $? [root@master ~]# killall haproxy
[root@master ~]# ps -aux | grep haproxy | grep -v grep
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2./FAQ

查看帮助

[root@master ~]# /usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/etc/haproxy.cfg  --help
HA-Proxy version 1.4. //
Copyright - Willy Tarreau <w@1wt.eu> Usage : haproxy [-f <cfgfile>]* [ -vdVD ] [ -n <maxconn> ] [ -N <maxpconn> ]
[ -p <pidfile> ] [ -m <max megs> ]
-v displays version ; -vv shows known build options.
-d enters debug mode ; -db only disables background mode.
-V enters verbose mode (disables quiet mode)
-D goes daemon
-q quiet mode : don't display messages
-c check mode : only check config files and exit
-n sets the maximum total # of connections ()
-m limits the usable amount of memory (in MB)
-N sets the default, per-proxy maximum # of connections ()
-p writes pids of all children to this file
-de disables epoll() usage even when available
-ds disables speculative epoll() usage even when available
-dp disables poll() usage even when available
-sf/-st [pid ]* finishes/terminates old pids. Must be last arguments.

开启日志收集

[root@master ~]# vim /etc/rsyslog.conf
.........大约在13,14行,开启UDPServerRun
$ModLoad imudp
$UDPServerRun
..........大约在60行左右
local7.* /var/log/boot.log #在此行下面添加如下两行内容
local3.* /var/log/haproxy.log
local0.* /var/log/haproxy.log
重启rsyslog服务
[root@master ~]# service rsyslog restart
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]

在node-1和node-2上

安装httpd和php
[root@node- ~]# yum install -y httpd php
创建测试页面
[root@node- ~]# echo "<h1>Web-Server:192.168.30.131</h1>" > /var/www/html/index.html
[root@node- ~]# service httpd restart
在node-2上安装httpd和php
[root@node- ~]# yum install -y httpd php
[root@node- ~]# echo "<h1>Web-Server:192.168.30.132</h1>" > /var/www/html/index.html
[root@node- ~]# service httpd restart

浏览器测试

按F5刷新

查看haproxy的工作状态

配置文件模板和启动脚本的模板可以在这个目录下查看

[root@master ~]# cd /usr/local/src/haproxy-1.4./examples/
[root@master examples]# ls
acl-content-sw.cfg debug2html init.haproxy
auth.cfg debugfind init.haproxy.flx0
build.cfg errorfiles linux-2.4.-.EL-custom.diff
check examples.cfg option-http_proxy.cfg
check.conf haproxy-1.1.-flx..pkg rc.highsock
config.rc.haproxy haproxy.cfg stats_haproxy.sh
content-sw-sample.cfg haproxy.init tarpit.cfg
cttproxy-src.cfg haproxy.spec test-section-kw.cfg
debug2ansi haproxy.vim url-switching.cfg
比如创建开机启动
[root@master examples]# cp haproxy.init /etc/init.d/haproxy
[root@master examples]# chkconfig --add haproxy
[root@master examples]# chkconfig haproxy on
[root@master examples]# chkconfig haproxy --list
haproxy :off :off :on :on :on :on :off

RHEL 6.5----haproxy实现负载均衡的更多相关文章

  1. HAProxy 的负载均衡服务器,Redis 的缓存服务器

    问答社区网络 StackExchange 由 100 多个网站构成,其中包括了 Alexa 排名第 54 的 StackOverflow.StackExchang 有 400 万用户,每月 5.6 亿 ...

  2. 基于 Haproxy 构建负载均衡集群

    1.HAPROXY简介 HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种负载均衡解决方案.HAProxy特别适用于那些负载特大的web ...

  3. 实现基于Haproxy+Keepalived负载均衡高可用架构

    1.项目介绍: 上上期我们实现了keepalived主从高可用集群网站架构,随着公司业务的发展,公司负载均衡服务已经实现四层负载均衡,但业务的复杂程度提升,公司要求把mobile手机站点作为单独的服务 ...

  4. 05.haproxy+mysql负载均衡 整合 redis集群+ssm

    本篇重点讲解haproxy+mysql负载均衡,搭建完成后与之前搭建的redis+ssm进行整合 (注:这里用到了两台mysql数据库,分别安装两台虚拟机上,已经成功实现主主复制,如果有需要,请查看我 ...

  5. Haproxy+Keepalived负载均衡

    Haproxy介绍 HAProxy是一个特别适用于高可用性环境的TCP/HTTP开源的反向代理和负载均衡软件.在7层负载均衡方面的功能很强大(支持cookie track, header rewrit ...

  6. LNMP+HAProxy+Keepalived负载均衡 - LNMP基础环境准备

    环境版本说明: 服务器系统:CentOS 7.5: ``` cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) # 输出结果 `` ...

  7. Haproxy 构建负载均衡集群

    1.HAPROXY简介 HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种负载均衡解决方案.HAProxy特别适用于那些负载特大的web ...

  8. Nginx,Haproxy/lvs负载均衡的优缺点分析

    PS:Nginx/LVS/HAProxy是目前使用最广泛的三种负载均衡软件,本人都在多个项目中实施过,参考了一些资料,结合自己的一些使用经验,总结一下. 一般对负载均衡的使用是随着网站规模的提升根据不 ...

  9. haproxy实现负载均衡

    一.安装tar zxvf haproxy-1.4.22.tar.gzcd haproxy-1.4.22make TARGET=linux26 PREFIX=/usr/local/haproxy ins ...

  10. Haproxy+MYSQL 负载均衡 原创

    [root@monitor app1]# yum install haproxy Loaded plugins: security : epel | : epel/primary_db | : ext ...

随机推荐

  1. (最新)各大公司Java后端开发面试题总结

    ThreadLocal(线程变量副本) Synchronized实现内存共享,ThreadLocal为每个线程维护一个本地变量. 采用空间换时间,它用于线程间的数据隔离,为每一个使用该变量的线程提供一 ...

  2. 获取Android设备无线和以太网MAC地址

    package com.raycloud.wolf.blogformac; import android.net.wifi.WifiManager; import android.support.v7 ...

  3. locate和grep命令

    这任然是一篇读书笔记,以下内容来源<linux命令速查手册>这本书. 1.locate命令 用文件名或者文件名的部分来搜索文件在系统中的位置.locate不搜索具体目录,而是搜索一个数据库 ...

  4. UICollectionView基础用法

    初始化部分: UICollectionViewFlowLayout *flowLayout= [[UICollectionViewFlowLayout alloc]init]; self.myColl ...

  5. (linux)块设备驱动程序

      1.4.1  Linux块设备驱动程序原理(1) 顾名思义,块设备驱动程序就是支持以块的方式进行读写的设备.块设备和字符设备最大的区别在于读写数据的基本单元不同.块设备读写数据的基本单元为块,例如 ...

  6. 2款JS脚本判断手机浏览器跳转WAP手机网站

    随着移动设备的普及,企业的网络宣传已经不能局限在PC端,而需要同时在移动端有所建树.对于公司网站来说,以前都是做的PC端的,当然手机等移动端也可以访问,但是用户体验肯定不如完全适合的手机端来的方便.我 ...

  7. eclipse、idea切换大小写的快捷键

    idea : ctrl+shift+U切换大小写 eclipse : ctrl+shift+X 切换成大写 ctrl+shift+Y 切换成小写

  8. MYSQL进阶学习笔记六:MySQL视图的创建,理解及管理!(视频序号:进阶_14,15)

    知识点七:MySQL视图的创建(14) 视图的定义: 什么是视图: 视图数由查询结果形成的一张虚拟的表. 什么时候要用到视图? 如果某个查询结果出现的非常频繁,也就是,要经常拿这个查询结果来做子查询. ...

  9. hadoop-3.0.0-alpha4启动

    全部启动或者全部停止(注意:第一次启动需要先格式,以后就不需要格式了,不能多次格式化) 1.启动 [root@master sbin]# pwd /usr/hadoop/hadoop-3.0.0-al ...

  10. I.MX6 2014 u-boot 测试修改

    /************************************************************************* * I.MX6 2014 u-boot 测试修改 ...