负载均衡工具 haproxy 单机安装部署完整流程

负载均衡是系统设计最常见的一种方式,Nginx、HAProxy、LVS、F5用得比较普遍,不过Nginx只能在HTTP层负载,而HAProxy即可以在7层做负载,也可以在4层做负载,LVS配置有点太麻烦。
HAProxy是免费、极速且可靠的用于为TCP和基于HTTP应用程序提供高可用、负载均衡和代理服务的解决方案,尤其适用于高负载且需要持久连接或7层处理机制的web站点。HAProxy还可以将后端的服务器与网络隔离,起到保护后端服务器的作用。HAProxy的负载均衡能力虽不如LVS,但也是相当不错,而且由于其工作在7层,可以对http请求报文做深入分析,按照自己的需要将报文转发至后端不同的服务器(例如动静分离),这一点工作在4层的LVS无法完成。
haproxy的安装,haproxy官网下载地址:http://www.haproxy.org/download/

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`
注:haproxy安装路径

文章目录

  • 一、Haproxy简介
  • 二、Haproxy 安装实战操作
    • 2.1. 下载环境+工具依赖包
    • 2.2.下载 haproxy
    • 2.3. 解压haproxy
    • 2.4. 进入解压目录、进行编译、安装haproxy
    • 2.5. 创建+配置haproxy配置文件
    • 2.6. 启动haproxy
    • 2.7. 查看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/

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

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

2.7. 查看haproxy进程状态

ps -ef | grep haproxy

119 haproxy 服务器进程状态:
在这里插入图片描述

三、浏览器访问+验证 haproxy

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

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/520826.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

黑科技揭秘:阿里云如何做到从业务宕机到恢复业务运行只用一分半钟时间

2018杭州云栖大会主论坛上,阿里云打造的混合云容灾方案惊喜亮相,并直接在现场进行了全过程的演示,凸显出阿里云技术的强大心智。 整个混合云容灾演示在5分钟内呈现了阿里云秒级RPO,分钟级RTO企业应用容灾的端到端流程,…

恭喜你!在25岁前看到了这篇最最靠谱的深度学习入门指南

戳蓝字“CSDN云计算”关注我们哦!人工智能(AI)和机器学习(ML)在当下的火热程度我就不多说了,但是真正懂这方面的人又有多少呢?本文将带你了解人工智能和机器学习的基本知识。同时,你…

华为智能家居app未能连接上远程云服务_【InForSec通讯】智能家居云平台实体间交互状态安全分析 | Usenix2019...

论文题目:Discovering and Understanding the Security Hazards in the Interactions between IoT Devices, Mobile Apps, and Clouds on Smart Home Platforms论文作者: Wei Zhou, Yan Jia, Yao Yao&#…

黑科技揭秘:百种异常随机注入,专有云为何稳如泰山

关键应用服务中断引发一系列连锁反应,起因仅是一块磁盘被写满?为什么这么巧,两个小概率的问题偏偏一起发生,造成保护失效?为什么我们做了测试演练,然而真正发生问题依然踩坑?”2018杭州云栖大会…

负载均衡工具 haproxy 集群安装部署完整流程

负载均衡是系统设计最常见的一种方式,Nginx、HAProxy、LVS、F5用得比较普遍,不过Nginx只能在HTTP层负载,而HAProxy即可以在7层做负载,也可以在4层做负载,LVS配置有点太麻烦。 HAProxy是免费、极速且可靠的用于为TCP和基…

阿里云 MaxCompute 2018-09 新功能发布

2018年9月大数据计算服务 MaxCompute 又发布新功能啦! 【新功能】MaxCompute窗口函数支持WINDOW_CLAUSE 参考文档 适用客户 数据开发人员在进行数据开发过程中,用到调用window函数窗口时,SQL里反复写上OVER语句会显得冗余,MaxC…

要不要赶个时髦,去建设一个「 中台 」?

戳蓝字“CSDN云计算”关注我们哦!作者 | 奎哥责编 | 阿秃很多技术人总是抱怨 新技术/新框架/新概念 太多了,总是学不完,抱怨实在是学不动了。哈哈,这不,最近「 中台 」这么火热,要不要停止抱怨&#xff0…

strcpy用于调用的参数太少_C和汇编如何互相调用?嵌入式工程师必须掌握

ARM系列文章,请点击以下汇总链接:《从0学arm合集》一、gcc 内联汇编内联汇编即在C中直接使用汇编语句进行编程,使程序可以在C程序中实现C语言不能完成的一些工作,例如,在下面几种情况中必须使用内联汇编或嵌入型汇编。…

在阿里云上试用 Knative

在今年的Google Cloud Next大会上,Google发布了Knative, 这是由Google、Pivotal、Redhat和IBM等云厂商共同推出的Serverless开源工具组件,它与Istio,Kubernetes一起,形成了开源Serverless服务的三驾马车。 本文来自阿里巴巴中间件…

阿里云参加ONS EU 2018,飞天洛神亮相网络顶会

9月25日,荷兰阿姆斯特丹,为期3天的网络科技界盛会Open Networking Summit拉开序幕。来自世界各地的网络技术领域专家齐聚一堂,参与并分享各自分支领域的经验和成果。阿里云在会上展示了虚拟网络系统飞天洛神,智能网络管理平台齐天…

linux中如何在文件中查找文件,linux下find(文件查找)命令的用法总结

每一种操作系统都有成千上万的文件组成,对于linux这样“一切皆文件”的操作系统来说更不例外,大家应该都能很轻松使用windows下的文件查找功能,但是对linux这一功能可能并不是很熟悉,其实想玩linux的你更要牢牢掌握这个命令&#…

主动安全,新华三融合生态之力!

戳蓝字“CSDN云计算”关注我们哦!作者 | 晶少责编 | 阿秃出品 | CSDN云计算(ID:CSDNcloud)“如今网络安全形势错综复杂,解决方案不可能由一家公司独当天下,面对这样的情况,我们就要选择自身擅长…

阿里敏捷实践| 4个迭代,从批量交付向持续交付转型

导语 忙不完的事情,解不完的bug,每次发版都得集体熬个大通宵。干得多,结果还不好。阿里内部某研发团队就正处在这样的漩涡之中。 在这样的背景下,阿里云效敏捷教练团队受邀,和该研发团队一起,通过4个迭代…

阿里云携手爱迪德,发布中国首个云端DRM解决方案

2018杭州云栖大会期间,阿里云携手技术生态合作伙伴-爱迪德,推出中国首个云端DRM解决方案。该方案受CHINA DRM LAB和好莱坞六大电影公司认可,可以有效加强平台方对高价值版权内容的保护,监测和防止视频内容的盗版。 爱迪德中国区销…

idea升级2019.3后字体有的粗有的细

解决办法: 设置File–>Settings–>Editor–>Fallback font–>SimHei

飞天2.0 | 万物智能的基础服务

在2018杭州云栖大会的主论坛上,阿里云技术研发总经理蒋江伟发表了《飞天2.0,万物智能的基础服务》的主题演讲,从全连接、安全、简便、高速四个方面,阐述了飞天2.0网络的新特性。 蒋江伟表示,万物智能时代产生的海量数据…

黑科技揭秘:3分钟,轻松构建一张覆盖全球的企业专有网络

2018杭州云栖大会主论坛上,阿里巴巴研发技术总经理 蒋江伟在大会现场演示了分钟级构建企业专有网络的技术。 回顾一下当时的场景,一共有三步操作:上电, WAN口连接Internet,LAN口连接电脑,在工程师没有对设备…

恕我直言,有了这款 IDEA 插件,你可能只需要写 30% 的代码。。。

文章目录1. 安装(EasyCode)2. 建立数据库3. 在IDEA配置连接数据库4. 开始生成代码5. pom.xml6. Application.yml7. 启动项目8. 测试一下Easycode是idea的一个插件,可以直接对数据的表生成entity,controller,service,dao,mapper,无需任何编码,简单而强大。…

双十一提前预热,这款耳机直降80元!

还有不到10天时间就到双十一狂欢购物节了你们是不是已经把购物车加满了呢?反正的我已经加了好多了此时好想自己有个程序员男友帮我把购物车清空可惜了赶不上了之前推荐了一款兰士顿的T7R按键版蓝牙耳机大部分购买的用户给我的反馈说还不错哦但是也有一部分人问我有没…

阿里云朱照远:视频云2.0,更大规模、更智能、更清晰

在2018杭州云栖大会19号下午的主论坛上,阿里云视频云总经理朱照远发表了《视频云2.0,智享未来视界》的主题演讲,从超大规模、智能化、实时连接、超高清8K这四个方面,阐述了视频云2.0的定义。 朱照远表示,在这个超大规模…