早期nginx tcp代理(基于patch实现)

nginx tcp代理功能由nginx_tcp_proxy_module模块提供,同时监测后端主机状态。该模块包括的模块有: ngx_tcp_module, ngx_tcp_core_module, ngx_tcp_upstream_module, ngx_tcp_proxy_module, ngx_tcp_upstream_ip_hash_module。

1. 安装

1

2

3

4

5

6

# wget http://nginx.org/download/nginx-1.4.4.tar.gz

# tar zxvf nginx-1.4.4.tar.gz

# cd nginx-1.4.4

# ./configure --add-module=/path/to/nginx_tcp_proxy_module

# make

# make install

2. 配置

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

http {

listen 80;

location /status {

check_status;

}

}

tcp {

upstream cluster_www_ttlsa_com {

# simple round-robin

server 127.0.0.1:1234;

check interval=3000 rise=2 fall=5 timeout=1000;

#check interval=3000 rise=2 fall=5 timeout=1000 type=ssl_hello;

#check interval=3000 rise=2 fall=5 timeout=1000 type=http;

#check_http_send "GET / HTTP/1.0\r\n\r\n";

#check_http_expect_alive http_2xx http_3xx;

}

server {

listen 8888;

proxy_pass cluster_www_ttlsa_com;

}

}

这会出现一个问题,就是tcp连接会掉线。原因在于当服务端关闭连接的时候,客户端不可能立刻发觉连接已经被关闭,需要等到当Nginx在执行check规则时认为服务端链接关闭,此时nginx会关闭与客户端的连接。

3. 保持连接配置

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

http {

listen 80;

location /status {

check_status;

}

}

tcp {

timeout 1d;

proxy_read_timeout 10d;

proxy_send_timeout 10d;

proxy_connect_timeout 30;

upstream cluster_www_ttlsa_com {

# simple round-robin

server 127.0.0.1:1234;

check interval=3000 rise=2 fall=5 timeout=1000;

#check interval=3000 rise=2 fall=5 timeout=1000 type=ssl_hello;

#check interval=3000 rise=2 fall=5 timeout=1000 type=http;

#check_http_send "GET / HTTP/1.0\r\n\r\n";

#check_http_expect_alive http_2xx http_3xx;

}

server {

listen 8888;

proxy_pass cluster_www_ttlsa_com;

so_keepalive on;

tcp_nodelay on;

}

}

nginx_tcp_proxy_module模块指令具体参见: http://yaoweibin.github.io/nginx_tcp_proxy_module/README.html

原文地址:https://www.cnblogs.com/felixzh/p/8375978.html

时间: 2024-11-06 07:18:17

早期nginx tcp代理(基于patch实现)的相关文章

nginx tcp代理模块nginx_tcp_proxy_module

nginx tcp代理功能由nginx_tcp_proxy_module模块提供,同时监测后端主机状态.该模块包括的模块有: ngx_tcp_module, ngx_tcp_core_module, ngx_tcp_upstream_module, ngx_tcp_proxy_module, ngx_tcp_upstream_ip_hash_module. 安装 https://github.com/yaoweibin/nginx_tcp_proxy_module/archive/master.

nginx : TCP代理和负载均衡的stream模块

一直以来,Nginx 并不支持tcp协议,所以后台的一些基于TCP的业务就只能通过其他高可用负载软件来完成了,比如Haproxy. 这算是一个nginx比较明显的缺憾.不过,在1.90发布后这个认知将得到改写: 2015-04-28 nginx-1.9.0 mainline version has been released, with the stream module for generic TCP proxying and load balancing. nginx-1.9.0 已发布,该

nginx TCP 代理& windows傻瓜式安装

一.下载nginx Windows http://nginx.org/en/download.html 二.解压到目录 三.进入目录并start nginx.exe即可启动 cd d:/java/nginx-1.10 start nginx.exe 在windows任务管理器可以看到nginx的进程有两个 输入127.0.0.1访问欢迎页面 四.配置TCP代理 #nginx版本1.10 stream {    upstream proxy_name {        # simple round

nginx tcp 代理的实现

但在1.90发布后增加了tcp代理模块 所以无需安装 参考:https://docs.nginx.com/nginx/admin-guide/load-balancer/tcp-udp-load-balancer/ 实现方式: stream { server { listen 6379; # ... proxy_pass 10.59.87.121:6379; } } 如果报错:报错1:tcp模块报错] # /data1/env/nginx/sbin/nginx -tnginx: [emerg]

Nginx TCP代理和负载均衡

Nginx1.9 版本以后增加 stream模块,可以对tcp,udp请求进行代理和负载均衡了1.安装 yum -y install pcre-devel wget http://nginx.org/download/nginx-1.12.1.tar.gz tar zxf nginx-1.12.1.tar.gz cd nginx-1.12.1 ./configure --prefix=/usr/local/nginx --with-stream --with-stream_ssl_module

nginx tcp 代理 kube api 接口请求报错

前提 Rke 完成k8s集群部署,测试各项功能正常后,在为master 添加vip,实现高可用,此时再次请求api接口报错: vip:172.20.101.252 master:172.20.101.157, 172.20.101.164, 172.20.101.165 报错: Unable to connect to the server: x509: certificate is valid for 172.20.101.157, 172.20.101.164, 172.20.101.165

Nginx Tcp反向代理

nginx tcp代理功能由nginx_tcp_proxy_module模块提供,同时监测后端主机状态.该模块包括的模块有: ngx_tcp_module, ngx_tcp_core_module, ngx_tcp_upstream_module, ngx_tcp_proxy_module, ngx_tcp_upstream_ip_hash_module. 1. 安装 # wget http://nginx.org/download/nginx-1.4.4.tar.gz # tar zxvf n

nginx安装并支持upstream和tcp代理模块

wget http://nginx.org/download/nginx-1.4.5.tar.gz tar zxvf nginx-1.4.5.tar.gz cd nginx-1.4.5 Git clone https://github.com/yaoweibin/nginx_upstream_check_module.git //upstream模块 git clone https://github.com/yaoweibin/nginx_tcp_proxy_module.git //tcp代理

用nginx TCP反向代理作mail邮件代理

用nginx TCP反向代理作mail邮件代理 用nginx TCP反向代理作mail邮件代理 1. 背景 2. Nginx安装(包括nginx_upstream_check_module) 3. Nginx配置 4. 总结 1. 背景 新版本nginx有TCP反向代理功能,nginx的mail proxy配置认证又太麻烦,于是就想用TCP反向功能作mail代理. 2. Nginx安装(包括nginx_upstream_check_module) cd /tmptar zxf pcre-8.35