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. git上传(本地和远程有冲突时)

    一. 冲突的产生:在上次git同步(上传)之后,本地和远程均有更改 二. 处理 1. 丢弃本地,采用远程: git checkout 冲突文件及其路径 如: git checkout bzrobot_ ...

  2. ANT---调用外部命令的一些坑

    最近用到了Ant,发现还是有许多功能是Ant没有提供相应Task支持,而操作系统提供了相应的系统命令.Ant说明书上说了,用<exec>可以调用系统命令,实际操作起来才发现陷阱可不少,一不 ...

  3. springboot配置filter

    Filter 过滤器是web开发中很重要的一个组件,下面以一个session登陆的例子介绍下spring boot中如何使用Filter 首先要准备一个实现了Filter的接口的类 SessionFi ...

  4. java正则过虑字符

    public static void main(String[] args) { String testrString = "{\"abc\" : \"[123 ...

  5. Unity -- 入门教程二

    为了接下来要做的小游戏,在这里我要小小的修改一下移动的代码. public class PlayerMove : MonoBehaviour { //定义移动的速度 public float Move ...

  6. Geometry Shader 【转】

    Geometry shader – receives as its input complete primitives as a collection of vertices, and these i ...

  7. Keras学习

    参加比赛用到了keras,虽然之前用tensorflow,但是感觉tensorflow的确不太友好,api比较难读,然后就学习keras使用 随着深入,发现keras的api确实比较友好 跑了一些ex ...

  8. vue2.0 自定义 提示框(Toast)组件

    1.自定义 提示框 组件 src / components / Toast / index.js /** * 自定义 提示框( Toast )组件 */ var Toast = {}; var sho ...

  9. odoo 的时差 坑 [updated]

    很多人掉进了odoo的时间坑 odoo约定关于日期的数据,存放在数据库时,以 utc0 时区也就是不带时区存放,应用程序读取日期展示日期时,转换成用户的时区展示.用户的时区通过context传递. o ...

  10. Android摄像头採集的视频数据流怎样通过Socket实时发送到目标服务端

    分两块: 1.取得摄像头採集的视频流 2.发送到server端 protected MediaRecorder mMediaRecorder; private LocalServerSocket mL ...