Nginx1.9开始支持tcp层的转发,通过stream实现的,而socket也是基于tcp通信。

stream模块默认不安装的,需要手动添加参数:–with-stream,官方下载地址:download,根据自己系统版本选择nginx1.9或以上版本

./configure --add-module=../yaoweibin-nginx_tcp_proxy_module-121c026              

1、Nginx安装:参考https://www.cnblogs.com/toov5/p/9902692.html   安装支持TCP协议的四层负载均衡Nginx

下载   wget http://nginx.org/download/nginx-1.9.10.tar.gz

解压  tar -xzvf nginx-1.9.0.tar.gz

补丁命令安装   yum -y install patch

打补丁  patch -p1 <  ../yaoweibin-nginx_tcp_proxy_module-121c026/tcp.patch

编译Nginx

./configure --add-module=../yaoweibin-nginx_tcp_proxy_module-121c026

make && make install

报错:

[root@joe nginx-1.9.0]# make && make install
make -f objs/Makefile
make[1]: Entering directory `/home/nginx/nginx-1.9.0'
cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g -I src/core -I src/event -I src/event/modules -I src/os/unix -I ../yaoweibin-nginx_tcp_proxy_module-121c026/modules -I ../yaoweibin-nginx_tcp_proxy_module-121c026/parsers -I ../yaoweibin-nginx_tcp_proxy_module-121c026 -I objs -I src/http -I src/http/modules -I src/mail -I src/stream \
-o objs/addon/yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.o \
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c: 在函数‘ngx_tcp_upstream_connect’中:
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c:374: 错误:‘ngx_peer_connection_t’没有名为‘check_index’的成员
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c:374: 错误:‘NGX_INVALID_CHECK_INDEX’未声明(在此函数内第一次使用)
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c:374: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c:374: 错误:所在的函数内也只报告一次。)
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c:375: 错误:‘ngx_peer_connection_t’没有名为‘check_index’的成员
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c: 在函数‘ngx_tcp_upstream_next’中:
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c:520: 错误:‘ngx_peer_connection_t’没有名为‘check_index’的成员
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c:520: 错误:‘NGX_INVALID_CHECK_INDEX’未声明(在此函数内第一次使用)
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c:521: 错误:‘ngx_peer_connection_t’没有名为‘check_index’的成员
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c:522: 错误:‘ngx_peer_connection_t’没有名为‘check_index’的成员
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c: 在函数‘ngx_tcp_upstream_finalize_session’中:
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c:576: 错误:‘ngx_peer_connection_t’没有名为‘check_index’的成员
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c:576: 错误:‘NGX_INVALID_CHECK_INDEX’未声明(在此函数内第一次使用)
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c:577: 错误:‘ngx_peer_connection_t’没有名为‘check_index’的成员
../yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.c:578: 错误:‘ngx_peer_connection_t’没有名为‘check_index’的成员
make[1]: *** [objs/addon/yaoweibin-nginx_tcp_proxy_module-121c026/ngx_tcp_upstream.o] 错误 1
make[1]: Leaving directory `/home/nginx/nginx-1.9.0'
make: *** [build] 错误 2  

原因:不是最新补丁

解决:

  1. wget https://github.com/yaoweibin/nginx_tcp_proxy_module/archive/master.zip

2.patch -p1 </home/nginx/patch/nginx_tcp_proxy_module-master/tcp.patch    (绝对目录)

3.  ./configure --add-module=/home/nginx/patch/nginx_tcp_proxy_module   (nginx目录里面操作)

解决完毕:

继续  ./configure --add-module=../yaoweibin-nginx_tcp_proxy_module-121c026

然后  make && make install

安装Nginx四层负载均衡的更多相关文章

  1. nginx四层负载均衡配置

    nginx四层负载均衡配置代理Mysql集群 环境如下: ip 192.168.6.203 Nginx ip 192.168.6.*(多台) Mysql 步骤一 查看Nginx是否安装stream模块 ...

  2. Nginx四层负载均衡概述

    目录 Nginx四层负载均衡概述 什么是负载均衡 负载均衡应用场景 四层,七层集群架构 四层负载均衡总结 Nginx如何配置四层负载均衡 nginx四层负载均衡端口转发 Nginx四层负载均衡概述 什 ...

  3. Nginx四层负载均衡

    目录 Nginx四层负载均衡概述 Nginx如何配置四层负载均衡 使用nginx四层负载均衡实现tcp的转发 Nginx四层负载均衡概述 什么是四层负载均衡 四层负载均衡是基于传输层协议包来封装的(如 ...

  4. 14、Nginx四层负载均衡

    1.Nginx四层负载均衡基本概述 1.1.什么是四层负载均衡 四层负载均衡基于传输层协议包来封装的(如:TCP/IP),那我们前面使用到的七层是指的应用层,它的组装在四层基础之上,无论四层还是七层都 ...

  5. 14.Nginx四层负载均衡

    1.七层负载均衡: 根据url 调度不同的集群 url.cheng.com 10.0.0.5 10.0.0.7 /pass 10.0.0.8 /user 1.web01和web02配置 (只不过代码不 ...

  6. [转]CENTOS 6.5 配置YUM安装NGINX+服务器负载均衡

    原文连接: CENTOS 6.5 配置YUM安装NGINX  http://blog.sina.com.cn/s/blog_69f467b70102uyux.html 参考博文: Centos下安装. ...

  7. Docker安装nginx以及负载均衡

    首先在linux系统中新建一个data文件夹进行nginx容器的创建--即为:mkdir data. 一:第一次 1 第一步: 使用 docker pull nginx将nginx的镜像从仓库下载下来 ...

  8. Nginx 四层负载均衡

    目录 四层负载均衡概述 配置七层负载均衡 配置四层负载均衡 四层负载均衡概述 四层负载均衡是基于IP+端口的负载均衡,七层负载均衡是基于URL或主机名等应用层信息的负载均衡. 其他层负载均衡(转载): ...

  9. linux+asp.net core+nginx四层负载均衡

    Linux Disibutaion:Ubuntu 16.04.1 LTS Web Server:Nginx.Kestrel 关于如何在linux中部署asp.net core我这里不再详细介绍,可以参 ...

随机推荐

  1. 利用adb截屏

    一  第一种方式 二 第二种方式  

  2. 补充==的使用和equals的区别

    字节码的比较     Class 相等与否使用“==” 进行比较,形如 if (adapter == IContentOutlinePage.class)  进行比较,因为字节码在JVM中只有一份,地 ...

  3. 第四章——SQLServer2008-2012资源及性能监控(1)专家

    http://blog.csdn.net/dba_huangzj/article/details/8614817

  4. redis容量预估

    2.存储的数据内容:前端系统登录用到的Token,类型:key:string(32),value:string(32)3.业务场景存数据:用户登录验证成功后,ICORE-PAP后台产生Token(st ...

  5. AndroidStudio怎样导入jar包

    来自:http://jingyan.baidu.com/article/e6c8503c7190b7e54f1a1893.html AndroidStudio用于开发安卓Apk非常地方便,但是它的很多 ...

  6. SSH错误:packet_write_wait: Connection to 10.57.19.250 port 22: Broken pipe

    现象:ssh连接以后,服务器会主动断开连接,wireshark抓包,发线服务器会tcp rst,断开ssh连接 解决尝试:1.修改会话超时时间:2.客户端主动间隔性向服务器发送保活报文:3.服务端主动 ...

  7. 安装下载MySQL

    下载MySQL的地址:下面两个都行 http://dev.mysql.com/downloads/windows/ http://dev.mysql.com/downloads/installer/5 ...

  8. liunx安装redis和gcc

    首先去上下载redis,我现在用的版本是:redis-3.0.4.tar.gz 然后放到虚拟机里面解压,下面是三种解压命令: tar -zxvf file.tar.gz tar -jcvf file ...

  9. Python遍历列表

    #循环遍历列表 nums = [ss,gg,e,fff,bb] #while循环遍历,但是不推荐使用,因为还要把列表的元素数出来 i = 0 while i<5: print(nums[i]) ...

  10. 基于Django做权限控制

    一.权限信息初始化 二.中间件操作 三.自定义标签 补充:数据表设计,源码下载,其它