基於nginx和tengine的tcp反向代理,負載均衡 安裝和配置
阿新 • • 發佈:2017-08-01
zip http 端口 arc -s pro 進入 iteye obj
先下載nginx_tcp_proxy_module模塊。
- wget https://github.com/yaoweibin/nginx_tcp_proxy_module/archive/master.zip
-
先看看自己原來nginx安裝有哪些模塊(編譯參數):
[[email protected]]# /tengine/sbin/nginx -V
configure arguments: –prefix=/tengine –user=www –group=www –with-pcre=../pcre –with-http_ssl_module –with-http_stub_status_module –with-openssl=../openssl –with-zlib=../zlib-1.2.8 –with-http_upstream_check_module –with-http_concat_module –with-syslog –with-backtrace_module –with-http_realip_module –add-module=../ngx_cache_purge –add-module=../ngx_http_accounting_module
Tengine version: Tengine/2.1.1 (nginx/1.6.2)
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC)
TLS SNI support enabled - 復制一下,進入到nginx的源碼目錄
- patch -p1 < /path/to/nginx_tcp_proxy_module/tcp.patch
- ./configure –prefix=/usr/local/nginx –user=www –group=www –with-pcre=../pcre –with-http_ssl_module –with-http_stub_status_module –with-openssl=../openssl –with-zlib=../zlib-1.2.8 –with-http_upstream_check_module –with-http_concat_module –with-syslog –with-backtrace_module –with-http_realip_module –add-module=../ngx_cache_purge –add-module=../ngx_http_accounting_module
- make
- cp objs/nginx /usr/local/nginx/sbin/nginx
- 假定你有兩個服務需要通過Nginx的Tcp(8888)端口進行負載均衡,參考如下配置:
- tcp {
- upstream cluster {
- # simple round-robin
- server 192.168.0.1:80;
- server 192.168.0.2:80;
- check interval=3000 rise=2 fall=5 timeout=1000 type=tcp;
- #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;
- }
- }
/usr/local/nginx/sbin/nginx -s reload
-
/tengine/conf/tcp_proxy/socket.xxx.com
-
nginx.conf增加一條include tcp_proxy/*;
-
- cat socket.xxx.com
- tcp {
- upstream socket_xxx_com {
- server 1.1.1.1:8888;
- check interval=3000 rise=2 fall=5 timeout=1000; #check interval=3000 rise=2 fall=5 timeout=1000 type=tcp;
- }
- server {
- listen 8888;
- proxy_pass socket_xxx_com;
- }
- }
基於nginx和tengine的tcp反向代理,負載均衡 安裝和配置