Nginx配置UDP负载
在我们平常的网络性能需求中,大多都是HTTP负载,当然这些是也是主流,但是我们有时也需要UDP协议的负载如dns何ntp的信息,现在在1.9版本后加入了UDP负载。
本人是基于rpm包安装的,提供官网链接
https://nginx.org/packages/mainline/centos/6/x86_64/RPMS/nginx-1.15.4-1.el6.ngx.x86_64.rpm
以上rpm软件包的安装就不详细描述了,在安装完毕后,在/etc/nginx目录下会生成一堆相关配置文件,在nginx.conf文件中最后添加如下内容
stream {
upstream dns_servers{
least_conn;
server 192.168.1.11:4408 ;
server 192.168.1.12:4408 ;
}
server {
listen 53 udp;
proxy_pass dns_servers;
proxy_responses 0;
proxy_buffer_size 16k;
proxy_timeout 10m;
error_log dns.log;
}
}
注:以上least_conn表示负载节点连接最少的节点,proxy_responses 0代表通过nginx转发的UDP请求发送出去后,不需要等待后端服务器的响应的返回。UDP发送完毕即关闭连接。