服务器IP hostname 节点说明 端口 管控台地址 账号 密码
192.168.0.115 mq-01 rabbitmq master 5672 http://192.168.0.115:15672 guest guest
192.168.0.117 mq-02 rabbitmq slave 5672 http://192.168.0.117:15672 guest guest
192.168.0.118 mq-03 rabbitmq slave 5672 http://192.168.0.118:15672 guest guest
192.168.0.119 hk-01 haproxy+keepalived 8100 http://192.168.0.119:8100/rabbitmq-stats admin 123456
192.168.0.120 hk-02 haproxy+keepalived 8100 http://192.168.0.120:8100/rabbitmq-stats admin 123456

haproxy 常用命令:

命令 说明
/app/haproxy/sbin/haproxy -f /etc/haproxy/haproxy.cfg 启动haproxy 服务
ps -ef |grep haproxy 查看haproxy 服务的进程状态
killall haproxy 停止haproxy 服务
注: 执行killall haproxy命令的前提就是,不能又进行调用haproxy服务,例如:keepalived正在调用 haproxy服务,执行killall haproxy命令无效

重新启动haproxy 服务

/app/haproxy/sbin/haproxy -f /etc/haproxy/haproxy.cfg -st `cat /var/run/haproxy.pid`

接上一篇:RabbitMQ+haproxy+keeplived 高可用负载均衡镜像集群模式_RabbitMQ 高可用镜像集群队列_01

文章目录

  • 一、Haproxy简介
  • 二、Haproxy 安装实战操作
    • 2.1. 下载环境+工具依赖包
    • 2.2.下载 haproxy
    • 2.3. 解压haproxy
    • 2.4. 进入解压目录、进行编译、安装haproxy
    • 2.5. 创建+配置haproxy配置文件
    • 2.6. 同步+修改配置haproxy文件
    • 2.7. 启动haproxy
    • 2.8. 查看haproxy进程状态
  • 三、浏览器访问+验证 haproxy

一、Haproxy简介

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

二、Haproxy 安装实战操作

PS:119、120 节点同时安装Haproxy,下面步骤同步操作

2.1. 下载环境+工具依赖包

yum install gcc vim wget

2.2.下载 haproxy

wget https://src.fedoraproject.org/repo/pkgs/haproxy/haproxy-2.1.2.tar.gz/sha512/929d244a67f93337e3c791b1a29f9643ac288acdf0090dc7a05c72caf61c3b04ef376b84737351f0c54d58bca66ed8af18faa20ec3adc97067313732e0dfcd7d/haproxy-2.1.2.tar.gz

注:官网下载太慢
建议使用传送门
各个版本链接如下:
https://src.fedoraproject.org/repo/pkgs/haproxy/

为了节省时间,把下载好的软件包同步到120服务器

scp haproxy-2.1.2.tar.gz root@192.168.0.120:/app/software

2.3. 解压haproxy

tar -zxf haproxy-2.1.2.tar.gz -C /app/

2.4. 进入解压目录、进行编译、安装haproxy

#进入指定的解压目录
cd /app/haproxy-2.1.2/
#对haproxy进行源码编译
make TARGET=linux31 PREFIX=/app/haproxy
#安装 编译好的haproxy 并指定安装目录(根据公司要求)
make install PREFIX=/app/haproxy
#创建haproxy目录放置配置文件
mkdir /etc/haproxy
#赋权
groupadd -r -g 149 haproxy
useradd -g haproxy -r -s /sbin/nologin -u 149 haproxy
#创建haproxy配置文件
touch /etc/haproxy/haproxy.cfg
Haproxy配置
PS:haproxy 配置文件haproxy.cfg详解
vim /etc/haproxy/haproxy.cfg

给120服务器将此配置文件同步到/etc/haproxy目录下面
记得要修改一下haproxy的ip地址

2.5. 创建+配置haproxy配置文件

#创建haproxy配置文件
touch /etc/haproxy/haproxy.cfg
#Haproxy配置
PS:haproxy 配置文件haproxy.cfg详解
vim /etc/haproxy/haproxy.cfg

添加内容如下:

#logging options
globallog 127.0.0.1 local0 info #日志输出配置,所有日志都记录在本机,通过local0输出maxconn 5120chroot /app/haproxy #haproxy 安装路径uid 99 #所属运行的用户uidgid 99 #所属运行的用户组daemon  #后台运行quietnbproc 20pidfile /var/run/haproxy.pid #指定PID文件路径defaultslog global#使用4层代理模式,"mode http"为7层代理模式mode tcp#if you set mode to tcp,then you nust change tcplog into httplogoption tcplogoption dontlognullretries 3option redispatchmaxconn 2000#连接超时时间timeout connect 5s#客户端空闲超时时间为 60秒 则HA 发起重连机制timeout client 60s#服务器端连接超时时间为 15秒 则HA 发起重连机制timeout server 15s    #front-end IP for consumers and producters
listen rabbitmq_clusterbind 0.0.0.0:5672  #绑定协议端口#配置TCP模式#所处理的类别,默认采用http模式,可配置成tcp作4层消息转发mode tcp#balance url_param userid#balance url_param session_id check_post 64#balance hdr(User-Agent)#balance hdr(host)#balance hdr(Host) use_domain_only#balance rdp-cookie#balance leastconn#balance source //ip#简单的轮询balance roundrobin#负载均衡策略#rabbitmq集群节点配置 #inter 每隔五秒对mq集群做健康检查, 2次正确证明服务器可用,2次失败证明服务器不可用,并且配置主备机制server mq-01 192.168.0.115:5672 check inter 5000 rise 2 fall 2server mq-02 192.168.0.117:5672 check inter 5000 rise 2 fall 2server mq-03 192.168.0.118:5672 check inter 5000 rise 2 fall 2
#配置haproxy web监控,查看统计信息
listen statsbind 192.168.0.119:8100 #前端浏览器中查看统计的WEB界面地址mode httpoption httplog #日志类别,采用httplogstats enablestats auth admin:123456  #设置查看统计的账号密码#设置haproxy监控地址为http://localhost:8100/rabbitmq-statsstats uri /rabbitmq-statsstats refresh 5s  #5s刷新一次

注:以上配置基于haproxy-2.1.2 版本,低版本有部分差异

2.6. 同步+修改配置haproxy文件

#将 119 服务器 上的haproxy文件同步至 120 服务器
scp haproxy.cfg root@192.168.0.120:/etc/haproxy

将haproxy服务器IP修改一下即可,其他保持默认

#logging options
globallog 127.0.0.1 local0 info #日志输出配置,所有日志都记录在本机,通过local0输出maxconn 5120chroot /app/haproxy #haproxy 安装路径uid 99 #所属运行的用户uidgid 99 #所属运行的用户组daemon  #后台运行quietnbproc 20pidfile /var/run/haproxy.pid #指定PID文件路径defaultslog global#使用4层代理模式,"mode http"为7层代理模式mode tcp#if you set mode to tcp,then you nust change tcplog into httplogoption tcplogoption dontlognullretries 3option redispatchmaxconn 2000#连接超时时间timeout connect 5s#客户端空闲超时时间为 60秒 则HA 发起重连机制timeout client 60s#服务器端连接超时时间为 15秒 则HA 发起重连机制timeout server 15s    #front-end IP for consumers and producters
listen rabbitmq_clusterbind 0.0.0.0:5672  #绑定协议端口#配置TCP模式#所处理的类别,默认采用http模式,可配置成tcp作4层消息转发mode tcp#balance url_param userid#balance url_param session_id check_post 64#balance hdr(User-Agent)#balance hdr(host)#balance hdr(Host) use_domain_only#balance rdp-cookie#balance leastconn#balance source //ip#简单的轮询balance roundrobin#负载均衡策略#rabbitmq集群节点配置 #inter 每隔五秒对mq集群做健康检查, 2次正确证明服务器可用,2次失败证明服务器不可用,并且配置主备机制server mq-01 192.168.0.115:5672 check inter 5000 rise 2 fall 2server mq-02 192.168.0.117:5672 check inter 5000 rise 2 fall 2server mq-03 192.168.0.118:5672 check inter 5000 rise 2 fall 2
#配置haproxy web监控,查看统计信息
listen statsbind 192.168.0.120:8100 #前端浏览器中查看统计的WEB界面地址mode httpoption httplog #日志类别,采用httplogstats enablestats auth admin:123456  #设置查看统计的账号密码#设置haproxy监控地址为http://localhost:8100/rabbitmq-statsstats uri /rabbitmq-statsstats refresh 5s  #5s刷新一次

注:以上配置基于haproxy-2.1.2 版本,低版本有部分差异

2.7. 启动haproxy

/app/haproxy/sbin/haproxy -f /etc/haproxy/haproxy.cfg
注: -f 指定启动的配置文件

2.8. 查看haproxy进程状态

ps -ef | grep haproxy

119 haproxy 服务器进程状态:

120 haproxy 服务器进程状态:

三、浏览器访问+验证 haproxy

PS:访问如下地址可以对rmq节点进行监控:
http://192.168.0.119:8100/rabbitmq-stats
http://192.168.0.120:8100/rabbitmq-stats



接下一篇:
RabbitMQ+haproxy+keeplived 高可用负载均衡+镜像集群模式_集成高性能高可用组件 Keepalived_03

RabbitMQ+haproxy+keeplived 高可用负载均衡+镜像集群模式_集成负载均衡组件 Ha-Proxy_02相关推荐

  1. RabbitMQ+haproxy+keeplived 高可用负载均衡+镜像集群模式_集成高性能高可用组件 Keepalived_03

    服务器IP hostname 节点说明 端口 管控台地址 账号 密码 192.168.0.115 mq-01 rabbitmq master 5672 http://192.168.0.115:156 ...

  2. RabbitMQ+haproxy+keeplived 高可用负载均衡高可用镜像集群队列_01

    文章目录 一.RabbitMQ 集群节点说明 二.服务器hosts文件统一修改 三.RabbitMQ 镜像集群队列搭建部署 一.RabbitMQ 集群节点说明 服务器IP hostname 节点说明 ...

  3. 【Redis】Redis高可用之Redis Cluster集群模式详解(Redis专栏启动)

  4. 云服务器搭建高可用keepalived+nginx+emqx集群

    云服务器搭建高可用keepalived+nginx+emqx集群 一.高可用emqx集群搭建 1 单机搭建emqx 2 配置认证和鉴权插件 3 搭建emqx集群 二.nginx搭建负载均衡 1 ngi ...

  5. 【Redis】高可用架构之Cluster集群和分⽚

    高可用架构之Cluster集群和分⽚ 1. 前言 2. Cluster 模式介绍 2.1 什么是Cluster模式? 2.2 为什么需要Cluster模式? 2.2.1 垂直拓展(scale up)和 ...

  6. 深入浅出百亿请求高可用Redis(codis)分布式集群揭秘

    摘要:作为noSql中的kv数据库的王者,redis以其高性能,低时延,丰富的数据结构备受开发者青睐,但是由于redis在水平伸缩性上受限,如何做到能够水平扩容,同时对业务无侵入性是很多使用redis ...

  7. 高可用的Redis主从复制集群,从理论到实践

    作者:Sicimike blog.csdn.net/Baisitao_/article/details/105545410 前言 我们都知道,服务如果只部署一个节点,很容易出现单点故障,从而导致服务不 ...

  8. 高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南

    原文:http://my.oschina.net/wstone/blog/365010#OSC_h3_13 (WJW)高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南 [X] ...

  9. RabbitMQ (十五) 镜像集群 + HAProxy1.7.8 负载均衡

    RabbitMQ 默认的集群模式,也就是普通模式,最大的问题就在于存储队列完整数据的节点一旦宕机, 如果是非持久化队列,则消息丢失;如果是持久化队列+持久化消息,则必须等该节点恢复. 所以后来 Rab ...

最新文章

  1. python 加速器 numba 示例
  2. 运维企业专题(3)LB负载均衡介绍
  3. Go 语言编程 — 并发 — Goroutine 协程
  4. Elasticsearch 设置默认值的三种方式
  5. Android --- 数据库存储的是正确的时间格式(2021-06-17 21:47:23)但是在获取的时候变成了(2021-06-17T13:47:23.000+00:00)
  6. Python PCA降维小例子
  7. 第 14 篇:交流的桥梁“评论功能”——HelloDjango 系列教程
  8. easyui 中iframe嵌套页面,提示弹窗遮罩的解决方法,parent.$.messager.alert和parent.$.messager.confirm...
  9. kettle的mysql驱动应该放哪里_MySQL数据库之kettle 安装mysql 驱动
  10. 【0】嵌入式TCP/IP协议——————Art-Net协议详解
  11. 简单架设Jabber 局域网即时通讯服务器
  12. CMake file命令参数GLOB和GLOB_RECURSE
  13. 关于char[]类型的排序 和字符串在使用时可能char*更好用
  14. 目标框选之单阶段与两阶段目标检测区别
  15. 世界上最伟大最邪恶的软件发明
  16. CVE-2021-44228 Log4j 远程代码执行漏洞——原理
  17. 农历2017年8月初4_2017年8月25日
  18. 压缩软件大比拼历史回顾:ZIP与RAR
  19. 独立电子商务网站运营成本
  20. 基于 短信认证 通过 华为、H3C 结合 OpenPortal认证计费系统 实现 网络准入 短信验证码 访客实名认证

热门文章

  1. 如何用业余时间成为抢手的数据人才?
  2. 推荐系统国内外团队介绍
  3. 二维码提升对比度文献调研(4)--Attention Guided Low-light Image Enhancement
  4. mysql里面取列里面值_在MySQL中获取特定的列值(名称)
  5. glClipPlane剪裁平面
  6. 阿里云AHAS Chaos:应用及业务高可用提升工具平台之故障演练
  7. 优酷背后的大数据秘密
  8. 使用kettle导入数据到ADB for PostgreSQL
  9. 到底什么成就了今天的人工智能?(上)
  10. 京信通信:数据智能为生产调试“增效瘦身”