Haproxy的应用

如上图所示,在 192.168.1.0/24 这个网段的客户端想要访问在 172.20.0.0/20 网段内的服务器,所有的通信又不想暴露在互联网上,因此可以在这两个网段内分别都放一台 Haproxy 服务器,并将两台 Haproxy 直连,10.94.0.73 到 10.94.0.72 互通,然后做两次代理即可。
Haproxy1 应该监听在 192.168.1.105 上以供 192.168.1.0/24 网段内的主机访问,然后指定源地址 10.94.0.73 将请求指向后端服务器 Haproxy2 的 10.94.0.72 。
Haproxy1 的配置
1  | 
global  | 
Haproxy2 应该监听在 10.94.0.72 以供 Haproxy1 的 10.94.0.73 来请求,然后指定源地址 172.20.0.254 将 Web 请求指向后端服务器 172.20.15.15:80,将 MySQL 请求指向后端服务器 172.20.11.154:3306。
Haproxy2 的配置
1  | 
global  | 
Web 负载均衡

如图所示,客户端访问 192.168.127.130 时,要把请求分发到 192.168.127.131:80、192.168.127.132:80 这两台服务器上。这是一个最简单的负载均衡结构图,实现起来比较简单。
1  | 
global  | 
配置说明
- Global settings :这是第一部分的配置,全局配置;对Haproxy进程自身属性的设定
 - proxys:对代理的设定,通常有4部分组成
- defaults:提供默认配置
 - frontend:前端配置
 - backend:后端配置
 - listen:从某种意义上讲可以认为是将 frontend 和 backend 整合到一块的
 
 
ACL 匹配

如图所示,要求
1、如果客户端的 IP 是 192.168.127.110,访问 192.168.127.130 时,要把请求分发到 Web Server3 上,即 192.168.127.133。
2、客户端访问 192.168.127.130 时,要把请求分发到 192.168.127.131,192.168.127.132,192.168.127. 大专栏  Haproxy的应用133 这三台服务器上。同时还要求客户端每一次访问,都跳转到不同的服务器上。
3、如果客户端访问的不是 192.168.127.130 而是 192.168.127.129 时,要把请求全部分发到 Web Server1 上,即 192.168.127.131。
1  | 
global  | 
状态监控
在其他的配置完成后,做一个全局配置区段,用来监控 Haproxy 服务器的状态。
1  | 
listen Haproxy_Status # 关联前端和后端定义一个完整的代理  | 
配置好之后,重启服务访问 http://192.168.127.130:1080/status 即可看到状态信息。
记录日志
自己记录日志
1  | 
local2.* /var/log/haproxy.log  | 
交给日志服务器记录日志
配置 /etc/haproxy/haproxy.cfg
1  | 
log 127.0.0.1 local2  | 
开启 rsyslog 记录 haproxy 日志功能,编辑 /etc/rsyslog.conf 找到如下配置项并去掉配开头的的注释
1  | 
# Provides UDP syslog reception  | 
添加如下内容
1  | 
# Save haproxy log  | 
配置 /etc/sysconfig/rsyslog
1  | 
# Options for rsyslogd  | 
相关解释说明:
- -r: 打开接受外来日志消息的功能,其监控514 UDP端口;
 - -x: 关闭自动解析对方日志服务器的FQDN信息,这能避免DNS不完整所带来的麻烦;
 - -m: 修改syslog的内部mark消息写入间隔时间(0为关闭),例如240为每隔240分钟写入一次”–MARK–”信息;
 - -h: 默认情况下,syslog不会发送从远端接受过来的消息到其他主机,而使用该选项,则把该开关打开,所有接受到的信息都可根据syslog.conf中定义的@主机转发过去.
 
重启服务查看日志
1  | 
systemctl restart rsyslog haproxy  | 
Haproxy的应用的更多相关文章
- [笔记]HAproxy reload config file with uninterrupt session
		
HAProxy is a high performance load balancer. It is very light-weight, and free, making it a great op ...
 - [原]HAproxy 代理技术原理探究
		
HAproxy 技术分享 简介 HAProxy是一款提供高可用性.负载均衡以及基于TCP(第四层)和HTTP(第七层)应用的代理软件 Features 1.免费 2.能够做到4层以上代理 3.高性能 ...
 - 利用HAProxy代理SQL Server的AlwaysOn辅助副本
		
利用HAProxy代理SQL Server的AlwaysOn辅助副本 公司最近数据库升级到SQL Server2014 ,并部署了alwayson高可用集群 机房内有三套程序需要读取数据库 第一套:主 ...
 - Mysql的Haproxy反向代理和负载均衡
		
HaProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.应用到Haproxy主要是因为他免费,并且基于TCP和HTTP的应用代理. ...
 - HAProxy介绍
		
简单说明 HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAProxy特别适用于那些负载特大的web站点,这些站点通常又需 ...
 - 对比Haproxy和Nginx负载均衡效果
		
为了对比Hproxy和Nginx负载均衡的效果,分别在测试机上(以下实验都是在单机上测试的,即负载机器和后端机器都在一台机器上)做了这两个负载均衡环境,并各自抓包分析.下面说下这两种负载均衡环境下抓包 ...
 - haproxy windows环境使用
		
haproxy下载:http://pan.baidu.com/s/1miEvQUc 测试环境说明: ip地址 作用 开放端口 备注 nbproc 1 daemon defaults mode tcp ...
 - haproxy利用ACL规则封禁自定义IP地址拒绝访问
		
现在有一个需求就是在发版的时候希望除公司IP外的外网访问服务的时候都是拒绝访问的 现在利用haproxy 的acl规则作出限制 errorfile 403 /etc/haproxy/err ...
 - HAProxy的日志配置以及ACL规则实现负载均衡
		
HAProxy配置日志策略 默认情况下,HAProxy是没有配置日志的在centos6.3下默认管理日志的是rsyslog,可以实现UDP日志的接收,将日志写入文件,写入数据库先检测rsyslog是否 ...
 - HAproxy的安装与配置讲解
		
1,安装 官网下载 http://www.haproxy.org/#down cd /usr/local/src/ wget http://www.haproxy.org/download/1.4/s ...
 
随机推荐
- jquery选择器之获取父级元素、同级元素、子元素
			
一.获取父级元素 1. parent([expr]): 获取指定元素的所有父级元素 二.获取同级元素: 1.next([expr]): 获取指定元素的下一个同级元素 2.nextAll([expr]) ...
 - vncserver
			
## install packages yum install tigervnc-server xhost ## start vnc and xhost vncserver export DISPLA ...
 - opencv---颜色空间转化并实现物体跟踪
			
一.图像处理的基本操作 因为这是第一篇写opencv的笔记,故先讲讲在python下写opencv的基本操作.总共总结了三点如下: 开头一定要加编码声明:-*- coding: utf-8 -*- p ...
 - [LC] 255. Verify Preorder Sequence in Binary Search Tree
			
Given an array of numbers, verify whether it is the correct preorder traversal sequence of a binary ...
 - 41)PHP,数据库函数的注意点
			
(1)那个mysqli_connect() 函数返回的是一个数据库连接对象,所以,你要是var_dump()这个函数的返回值,就是一个对象 (2)那个mysqli_query() ...
 - 绿洲作业第一周 - 美术Art work
			
Dear parents, Please remind your child to learn and finish the work as follows from the art teacher: ...
 - word打印,和打印预览
			
public void Print(object fileName) { try { foreach (Syst ...
 - 对数据集进行最优分箱和WOE转换
			
对数据集分箱的方式三种,等宽等频最优,下面介绍对数据集进行最优分箱,分箱的其他介绍可以查看其他的博文,具体在这就不细说了: 大体步骤: 加载数据: 遍历所有的feature, 分别处理离散和连续特征: ...
 - 编译安装-Subversion 1.8.5
			
下载地址:http://subversion.apache.org/download/#recommended-release @开头的行为注释,#开头的红色行为命令 @下载tar包 #wget ht ...
 - android应用市场、社区客户端、漫画App、TensorFlow Demo、歌词显示、动画效果等源码
			
Android精选源码 MVP架构Android应用市场项目 android刻度盘控件源码 Android实现一个社区客户端 android商品详情页上拉查看详情 基于RxJava+Retrofit2 ...