Nginx的TCP/UDP调度器
使用Nginx实现TCP/UDP调度器功能:
- 后端SSH服务器两台
- Nginx编译安装时使用--with-stream开启ngx_stream_core_module模块(Nginx1.9以上的版本才支持该功能)
- Nginx采用轮询的方式调用后端SSH服务器
拓扑图
1.部署支持4层TCP/UDP代理的Nginx服务器,编译安装必须要使用--with-stream参数开启4层代理模块
proxy ]# yum -y install gcc pcre-devel openssl-devel //安装依赖包
proxy ]# tar -xf nginx-1.12.2.tar.gz
proxy ]# cd nginx-1.12.2
proxy nginx-1.12.2]# ./configure \
> --with-http_ssl_module //开启SSL加密功能
> --with-stream //开启4层反向代理功能
proxy nginx-1.12.2]# make && make install //编译并安装
2.配置Nginx服务器,添加服务器池,实现TCP/UDP反向代理功能
proxy]#vim /usr/local/nginx/conf/nginx.conf
stream {
upstream backend {
server 192.168.2.100:22; //后端SSH服务器的IP和端口
server 192.168.2.200:22;
}
server {
listen 12345; //Nginx监听的端口
proxy_connect_timeout 1s; //连接的超时时间,可选配置
proxy_timeout 3s;
proxy_pass backend;
}
}
http {
...
}
proxy ~]# /usr/local/nginx/sbin/nginx -s reload //重启加载配置
client ~]# ssh 192.168.4.5 -p 12345 //客户端访问代理服务器测试轮询效果
... //多次访问代理服务器查看效果
结束.