环境:

准备两台机子,安装haproxy及keepalive都一样,只是配置不一样而已。

这里只说明一台机子上安装haproxy及keepalive

======================================

一、keepalived安装配置

mkidr /application/tool -p

cd /application/tool

wget http://www.keepalived.org/software/keepalived-1.1.19.tar.gz

yum -y install popt-devel

uname -a       ;过滤查看内涵版本

ln –s/usr/src/kernels/2/6.32… /usr/src/linux

tar xf keepalived-1.1.19.tar.gz

cd keepalived-1.1.19

./configure  --sysconf=/etc

cp /usr/local/sbin/keepalived  /usr/bin/

#vim /etc/keepalived/keepalived.conf

=====配置如下===

! Configuration File for keepalived

global_defs {

smtp_connect_timeout 30

router_id LVS_1      ;每台机子route_id不一样;备机上id不一样

}

vrrp_instance VI_1 {       ;相面的实例保持一致;备机上保持一致

state MASTER        ;定义类型为主 ; 备机状态为BACKUP

interface eth0        ; 监听哪个IP接口 ; 根据备机实际接口

virtual_router_id 55   ; 相同实例保持一致; 备机保持一

priority 150      ; 优先级越高,就成为主状态。优先提供服务。; 备机优先级不能高于主。

advert_int 1          ; 隔一秒发送一次报文

authentication {       ; 相同实例的认证方式; 备机保持一致

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {     ; VIP的地址,相同实例保持一致; 备机保持相同

192.168.0.253/24

}

}

=====配置结束======

#/etc/init.d/keepalived start

#ip add |grep 192.168.0.253      ;如果有地址显示,说明第一台主配置正确。

备机上只要做如上相同步骤,不同配置即可。

注:备机上通过ip add |grep 192.168.0.253是没有地址显示的,这是正常现象,只有当主的宕机了才会在备机有这个VIP地址。

 

============================================

二、haproxy配置

mkdir /application/tool

cd /application/tool

wget http://haproxy.1wt.eu/download/1.4/src/haproxy-1.4.24.tar.gz

tar xf haproxy-1.4.24.tar.gz

cd haproxy-1.4.24

make TARGET=linux26 ARCH=x86_64

make PREFIX=/application/haproxy install

sed -i "s#net.ipv4.ip_forward=0# net.ipv4.ip_forward=1#g"

sysctl -p

cd /application/haproxy

mkdir -p bin conf logs var/run var/chroot

#vim conf/haproxy.conf

================配置如下==============

global

chroot /application/haproxy/var/chroot    ;定义一个安全目录

daemon                                                                     ; daemon模式启动

group  haproxy                                                    ;用户及组

user haproxy

log 127.0.0.1:514 local0 warning                       ; 日志类型

pidfile /application/haproxy/var/run/haproxy.pid   ;pid路径

maxconn 20000                                                      ;最大连接数

spread-checks 3

nbproc 4                                                                  ; 进程数,根据CUP核数指定

defaults

log     global

retries 3

option redispatch

contimeout      5000

clitimeout      50000

srvtimeout      50000

stats enable                                                   ;开启状态查看工程

stats uri /admin?status                              ; 定义usr地址

stats auth admin:admin                              ; 用户名及密码

listen pet_ebk_push                                                      ; 定义一个listen,相当一个实例。

bind 192.168.0.253:8080                            ; 监听的地址,这里注意和keepalived的VIP地址保持一致。

mode tcp                                                        ;四层tcp模式,端口检测。

balance roundrobin                                      ; 轮询算法

#option forwardfor

timeout server  15s

timeout connect 15s

server web01 192.168.0.176:8080  check port 8080 inter 1000 fall 1

server web02 192.168.0.176:8081 check port 8081 inter 1000 fall 1   ;当访问本机的192.168.0.253:8080端口时,实际上是由这台haproxy机子帮我们代理找后面0.176这台机子请求数据,并将请求到的结果返回给用户。之后后端要监听哪些直接添加即可。

===========配置结束=============================

注:另外一台haproxy安装和配置完全相同,无差异。

到此keepalived+haproxy的配置到些结束,如想知道更多,请自行翻阅资料。(功能非常强大)

keepalived+haproxy-部署高可用负载均衡的更多相关文章

  1. Keepalived+HAProxy 搭建高可用负载均衡

    转载自:https://mp.weixin.qq.com/s/VebiWftaRa26x1aA21Jqww 1. 概述 软件负载均衡技术是指可以为多个后端服务器节点提供前端IP流量分发调度服务的软件技 ...

  2. Keepalived+HAproxy实现高可用负载均衡

    总概:       Keepalived是一个类似于layer3, 4 & 5交换机制的软件,也就是我们平时说的第3层.第4层和第5层交换.Keepalived的作用是检测web服务器的状态, ...

  3. Keepalived+Haproxy搭建高可用负载均衡

    Keepalived 简单的是一个路由的软件用C写的这个项目的主要目标是提供简单而强大的设施的负载均衡和高可用性对Linux系统和基于Linux的基础设施.负载均衡架构依赖于众所周知的和广泛使用的Li ...

  4. 基于MySQL+MHA+Haproxy部署高可用负载均衡集群

    一.MHA 概述 MHA(Master High Availability)是可以在MySQL上使用的一套高可用方案.所编写的语言为Perl 从名字上我们可以看到.MHA的目的就是为了维护Master ...

  5. keepalived+haproxy构建高可用负载均衡

    一.环境介绍 我用的是centos6.7,内核版本为2.6.32-573.el6.x86_64,keepalived版本为keepalived-1.2.22,haproxy版本为haproxy-1.6 ...

  6. docker下用keepalived+Haproxy实现高可用负载均衡集群

    启动keepalived后宿主机无法ping通用keepalived,报错: [root@localhost ~]# ping 172.18.0.15 PING () bytes of data. F ...

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

    配置环境说明: KVM虚拟机配置 用途 数量 IP地址 机器名 虚拟IP地址 硬件 内存3G  系统盘20G cpu 4核 Haproxy keepalived 2台 192.168.1.10 192 ...

  8. CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡

    一.简介 VS/NAT原理图: 二.系统环境 实验拓扑: 系统平台:CentOS 6.3 Kernel:2.6.32-279.el6.i686 LVS版本:ipvsadm-1.26 keepalive ...

  9. 转载--CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡

    源地址:http://www.cnblogs.com/mchina/archive/2012/08/27/2644391.html 一.简介 VS/NAT原理图: 二.系统环境 实验拓扑: 系统平台: ...

  10. RHEL 5.4下部署LVS(DR)+keepalived实现高性能高可用负载均衡

    原文地址:http://www.cnblogs.com/mchina/archive/2012/05/23/2514728.html 一.简介 LVS是Linux Virtual Server的简写, ...

随机推荐

  1. Java获取时间与系统时间相差8小时终极解决方案

    一.在取日期以前设置一下时区 TimeZone tz = TimeZone.getTimeZone(“ETC/GMT-8″);TimeZone.setDefault(tz); 此种方法适用于单次快速获 ...

  2. SCO连接SCOM报警

    当SCOM中出现红色警报时,在目标计算机上运行一个程序: 1.新建Runbook,添加一个Monitor Alert 2.设置Monitor Alert属性,选择connection,设置警报过滤条件 ...

  3. Chapter 1 Securing Your Server and Network(11):使用透明数据库加密

    原文出处:http://blog.csdn.net/dba_huangzj/article/details/38398813,专题文件夹:http://blog.csdn.net/dba_huangz ...

  4. 关于写blog这件事

     事实上一直是挺喜欢写blog的.可是近期在写blog这件事上遇到或者開始思考一些问题了. 首先,写blog的动机.对于这个问题,我从自己的理解上得出下面几个原因: 写blog是对自己学到知识的一种总 ...

  5. myeclipse和eclipse安装Java反编译插件

    为myeclipse和eclipse安装Java反编译插件    插件所需包 1.解压jad1.5.8g.zip.将jad.exe放到jre的bin目录下,下载地址: http://ishare.ia ...

  6. [React Fundamentals] Component Lifecycle - Updating

    The React component lifecycle will allow you to update your components at runtime. This lesson will ...

  7. java_客户端防表单重复提交和服务器端session防表单重复提交

    用户输入FormServlet链接 FormServlet-〉form.jsp->DoFormServlet FormServlet:产生token,放在session中 form.jsp:hi ...

  8. visual studio 2013 有效序列号

    还没试过,可以参考下! visual studio 2013 有效序列号: BWG7X-J98B3-W34RT-33B3R-JVYW9

  9. CreateToolhelp32Snapshot

    CreateToolhelp32Snapshot CreateToolhelp32Snapshot函数为指定的进程.进程使用的堆[HEAP].模块[MODULE].线程[THREAD])建立一个快照[ ...

  10. 深入学习block

    首先,什么是block?block其实就是一个代码块,把你想要执行的代码封装在这个代码块里,等到需要的时候再去调用.那block是OC对象吗?答案是肯定的. 做一道很简单的关于block的测试题: i ...