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. Codeforces Gym - 101147J Whistle's New Car

    Discription Statements Whistle has bought a new car, which has an infinite fuel tank capacity. He di ...

  2. codeforces 979E(dp套dp)

    题意: 有n个点,编号为1~n.有的点颜色是黑色,有的点颜色是白色,有的点的颜色待涂.你还可以连一些边,但这些边一定是从小编号连到大编号的点. 对于一个确定的图,我们去统计有多少条路径满足“该路径经过 ...

  3. Android中的动画总结

    文章主要内容来源<Android开发艺术探索>,部分内容来源网上的文章,文中会有链接. Android系统提供了两个动画框架:属性动画框架和View动画框架. 两个动画框架都是可行的选项, ...

  4. 利用NSString的Hash方法比较字符串

    实际编程总会涉及到比较两个字符串的内容,一般会用 [string1 isEqualsToString:string2] 来比较两个字符串是否一致.对于字符串的isEqualsToString方法,需要 ...

  5. 线性回归,logistic回归分类

    学习过程 下面是一个典型的机器学习的过程,首先给出一个输入数据,我们的算法会通过一系列的过程得到一个估计的函数,这个函数有能力对没有见过的新数据给出一个新的估计,也被称为构建一个模型.就如同上面的线性 ...

  6. 百科知识 STEP文件如何打开

    使用任何的主流三维设计软件Pro/E.UG.CATIA.Solidworks等等都可以直接打开. STEP文件是通用格式,但是在打开的时候不同软件会生成不同的文件,下面是Solidworks打开的效果 ...

  7. VC++的窗口句柄和窗口ID

    原文地址:VC++的窗口句柄和窗口ID作者:放放 句柄是窗口资源的标识,它标识资源在系统中所占用的内存块,应用程序通过窗口句柄对窗口进行操作.除了窗口句柄之外,任何一种资源都有它自己的句柄,比如光标句 ...

  8. Selenium + Nightwatch 自动化测试环境搭建

    首先要安装 Java 7 或更高 ,(http://www.oracle.com/technetwork/java/javase/downloads/index.html) 并且 java 命令可正常 ...

  9. WPF02(concept)

    (转自http://www.cnblogs.com/huangxincheng/archive/2012/06/17/2552322.html)这些天从项目上接触到了wpf,感觉有必要做一个笔记,首篇 ...

  10. vim 模式切换

    1. 从插入模式退回到normal模式 <esc> <C-c> <C-[>