Nginx负载均衡--TCP/UDP流
副问题[/!--empirenews.page--]
负载平衡是指在多个后端处事器之间有用地分派收集流量。 从NGINX Plus R5[1] 版本开始可以署理和负载平衡传输节制协议(Transmission Control Protocol,TCP)通讯。TCP是很多风行应用措施和处事的协议,如LDAP、MySQL和RTMP。 从NGINX Plus R9[2]版本开始可以署理和负载均衡UDP流量。用户数据报协议(User Datagram Protocol,UDP)是很多风行的非事宜性应用措施的协议,如DNS、syslog和RADIUS。 反向署理 基本前提 必要行使ngx_stream_core_module模块,该模块从版本1.9.0开始可用。这个模块在默认环境下是不构建的,需行使--with-stream设置参数来启用它。如下设置:
设置反向署理 设置反向署理,以便NGINX打开资源,未来自客户端的TCP毗连或UDP数据报转发到upstream组或署理处事器。 A. 设置反向署理之前,看一下ngx_stream_core_module模块中几个元素的语法:
listen指令,配置处事器将接管毗连的套接字的地点和端口。可以只指定端口。地点也可所以主机名,譬喻:
示譬喻下:
listen指令在此默认协议是TCP协议,对付UDP流,必要指定udp参数,如下:
B. 行使ngx_stream_proxy_module模块(默认是编译进来的)的proxy_pass指令设置署理,proxy_pass指令语法:
配置被署理处事器的地点。地点可以界说为一个域名或IP地点和一个端标语:
或一个UNIX-domain socket路径:
C. 假如署理处事器有多个收集接口,可以设置NGINX行使特定的源IP地点去毗连upstream处事器。这也许很有效,当一个署理处事器在nginx后头,并设置了接管来自特定IP收集或IP地点范畴的毗连。 行使ngx_stream_proxy_module模块的proxy_bind指令,其语法:
从指定的当地IP地点向被署理处事器提倡外部毗连。非凡值off打消从上层设置中担任的proxy_bind指令发生的影响,应承体系自动分派当地IP地点。 transparent参数(1.11.0+)应承从一个非当地IP地点提倡到被署理处事器的外部毗连,譬喻从一个客户端的真实IP地点:
为了使此参数起浸染,凡是必要行使超等用户权限运行nginx事变历程。 在Linux上,不必要(1.13.8+),就像指定了transparent参数一样,事变历程从主历程担任CAP_NET_RAW成果。 还必要设置焦点路由表以拦截来自被署理处事器的收集流量。 示例设置如下:
负载平衡 (编辑:河北网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |