Haproxy TCP数据转发

在实际项目中需要用到haproxy做TCP转发,下面主要针对haproxy的安装及TCP数据转发配置进行说明

一、安装Haproxy

(1)编译安装Haproxy

mkdir -p /data01/haproxy
tar -zxvf haproxy-1.7.1.tar.gz
cd haproxy-1.7.1
make TARGET=linux26 ARCH=x86_64 PREFIX=/data01/haproxy
make install PREFIX=/data01/haproxy
mkdir /data01/haproxy/conf
mkdir /data01/haproxy/lib
mkdir /data01/haproxy/run
mkdir /data01/haproxy/logs
cp haproxy.cfg /data01/haproxy/conf/

(2)修改Haproxy配置

vi /etc/syslog.conf
local1.*  /data01/haproxy/logs/haproxy.log
local0.*  /data01/haproxy/logs/haproxy.log

vi /etc/rsyslog.d/haproxy.conf
local1.*  /data01/haproxy/logs/haproxy.log
local0.*  /data01/haproxy/logs/haproxy.log

vi /etc/sysconfig/syslog
SYSLOGD_OPTIONS="-r -m 0"

servie rsyslog restart

(3)启动haproxy

sbin/haproxy -f conf/haproxy.cfgsbin/haproxy -f -d conf/haproxy.cfg   #检查哪些服务启动OK

二、Haproxy TCP数据转发

global
   log  127.0.0.1 local0
   log  127.0.0.1 local1 notice
   ulimit-n  40960
   maxconn 4000
   pidfile /data01/haproxy/run/haproxy.pid
   user XXX
   nbproc 2
   daemon

defaults
    mode   tcp
    option  redispatch
    option  abortonclose
    retries  3
    timeout  http-request  300s
    timeout  queue         1m
    timeout  connect      300s
    timeout client            1m
    timeout server           1m
    timeout http-keep-alive 300s
    timeout check            300s
    maxconn                     4096

listen stats
    bind     *:9093
    balance roundrobin
    mode     tcp
    server s1  XXX:5000   weight 1

参考:http://www.echojb.com/hp-web-develop/2016/11/03/251213.html

http://www.cnblogs.com/yjmyzz/p/haproxy.html

http://blog.amutu.com/%E6%9C%AA%E5%88%86%E7%B1%BB/2012/09/21/haproxy_for_portforward/

时间: 2024-12-28 21:41:34

Haproxy TCP数据转发的相关文章

Qt简单项目——基于TCP的数据转发程序(一)

老师托我做个服务器的程序,用来转发客户之间的消息.客户是ZigBee网络节点和监控中心. 业务描述: 每个ZigBee节点都具有厂别号.编号.每个监控中心也具有厂别号.序号.服务器Ip固定不变,但ZigBee节点和监控中心的Ip地址会动态变动,所以需要一个服务器做数据转发. 业务逻辑: 把ZigBee节点数据转发给监控中心时,根据ZigBee节点的厂别号转发给对应厂别的监控中心.如果是第一次连接服务器,在服务器端的程序上节点列表中显示该节点序号和厂别信息.反则直接转发. 把监控中心数据转发给Zi

8.HCNA_HNTD——数据转发过程

TCP/IP协议族和底层协议配合,保证了数据能够实现端到端的传输.数据传输过程是一个非常复杂的过程,例如数据在转发的过程中会进行一系列的封装和解封装.对于网络工程师来说,只有深入地理解了数据在各种不同设备上的转发过程,才能够对网络进行正确的分析和检测. 学习目标: 1. 掌握数据封装和解封装的过程 2. 处理数据转发过程中的基本故障 数据可以在同一网络内或者不同网络间传输,数据转发过程也分为本地转发和远程转发,但两者的数据转发原理是基本一样的,都是遵循TCP/IP协议簇. 本示例中,主机A需要访

OSI 中的数据转发

OSI 中的数据转发过程书接上回,上次简单的了解了OSI以及各个层次的作用.这次我们了解一下,数据是如何在OSI各个层次之间穿梭,又是如何在网络中传递的. 一. 封装:我们还是将应用层.表示层.会话层看成一个整体,合并为应用层看待.当数据又应用程序产生之后,面临的问题是什么呢?是传递给谁?如何传递?目标在哪里?这几个问题当中的哪一个呢?举个简单的例子,我们在天猫买了东西,接下来,你会担心对方不知道东西借给谁吗?会担心对方不知道您的收货地址吗?估计不会的,因此,应用层数据产生后,接下来的问题就是确

7.CCNA第七天-探索数据转发

广播域.广播(地址上分为二层广播地址.三层广播地址) (二层)交换机的转发是依据目的MAC地址 (三层)定向.全局  ----转发范围是广播域,响应者不同 未知单播泛洪  ----是交换机的一种为了实现数据通信的转发机制 路由 路由(通常指路由条目)能够为本地的主机将数据转发到远端网络 路由器 负责构建路由表,并为主机提供数据转发服务 每一个接口,是一个广播域 查看路由表 Branch#show ip route Codes: L - local, C - connected, S - stat

linux下安装haproxy作为端口转发服务器,以及安装keepalived作为haproxy高可用方案

一.安装haproxy作为端口转发服务器(主服务器:172.28.5.4,备服务器:172.28.5.8,浮点IP为:172.28.5.6) 1.下载 cd /usr/local/src wget https://github.com/haproxy/haproxy/archive/v1.5-dev20.tar.gz 2.解压 tar - zvxf v1.5-dev20.tar.gz cd haproxy-1.5-dev20 3.编译 make TARGET=linux26 prefix=/us

基于常规DNS隧道进行的tcp端口转发dns2tcp的使用

0x01 安装Dns2TCP dns2tcp 是一个利用DNS隧道转发TCP连接的工具,使用C语言开发. sudo apt-get install dns2tcp 0x02配置dns2tcp 配置DNS2TCP服务端 首先,将你的某个域名(这里以creke.net为例)开个二级域名a.creke.net,类型为NS,NS记录指向b.creke.net.然后将b.creke.net建立A记录指向你的Linux服务器IP(这里以1.2.3.4为例).如下表所示. a.creke.net NS b.c

高效的TCP数据拆包器

高效的TCP数据拆包器 接收器,每秒拆1KB的包达到30万以上 /// 数据同步协义数据接收器 /// </summary> /// <remarks> /// 主要功能有 /// 1.将一个TCPSocket的所有数据全部接收 /// 2.解析协义 /// 3.解析完成后的协义调用 Handler通知外部处理 /// 4.定义一个协义解析线程不停的解析协义 /// </remarks> public class TCPReceiver : IDisposable {

[转载] tcp数据重传时间细节探秘及数据中心优化

原文: http://weibo.com/p/1001603821691477346388 在数据中心网络内,机器之间数据传输的往返时间(rtt)一般在10ms以内,为此调内部服务的超时时间一般会设置成50ms.200ms.500ms等,如果在传输过程中出现丢包,这样的服务超时时间,tcp层有机会发现并重传一次数据么?如果设置成200ms以内,答案是没有机会,原因是linux系统下第一次重传时间等于传输的往返时间上至少加上200ms的预测偏差值,即如果rtt值是7ms,第一次重传超时时间至少是2

HTTP_5_通信数据转发程序:代理、网关、隧道

HTTP通信时,除客户端和服务器之外,还有一些用于通信数据转发的应用程序,例如代理,网关,隧道.配合服务器工作. 代理 转发功能,客户端与服务器之间可有多个代理, 缓存代理:减少服务器压力,透明代理:不对报文做任何修改加工非透明代理:会对报文做加工 网关 同代理类似,并且可以提供非HTTP协议服务 利用网关可以提高通信的安全性可以利用网关使用SQL语句查询数据结算时网关可以和信用卡结算系统联动 隧道 建立安全的通信线路,配合SSL加密等手段进行通信 可以安全和远距离服务器安全通信隧道本身透明