1、Nginx四层负载均衡基本概诉
(1) 什么是四层负载均衡
四层负载均衡基于传输层协议包来封装的(如:TCP/IP),那我们前面使用到的七层指的是应用层,它的封装在四层基础之上,无论四层还是七层都指的是OSI网络模型。
(2) 四层负载均衡应用场景
1.
四层负载可以保证7层负载的高可用:四层+七层来做负载均衡,四层可以保证七层的负载均衡的高可用性,如:nginx就无法保证自己的服务高可用,需要依赖LVS或者keepaive。
2、端口映射(端口转发):如:TCP协议的负载均衡,有些请求是TCP协议的(mysql,ssh),或者说这些请求只需要使用四层进行端口的转发就可以了,所以使用四层负载均衡。
(3) 四层+七层构建大规模集群架构使用场景

(4) 四层负载均衡总结
1、四层负载均衡仅能转发TCP/IP协议、UDP协议、通常用来转发端口,如:tcp/22、udp/53
2、四层负载均衡可以用来解决七层负载均衡端口限制问题;(七层负载均衡最大使用65535个端口)
3、四层负载均衡可以解决七层负载均衡高可用问题;(多台后端七层负载均衡能同时的使用)
4、四层的转发效率比七层的高得多,但仅支持tcp/ip协议,不支持http和https协议;
5、通常大并发场景通常会选择使用在七层负载均衡前面增加四层负载均衡
2、Nginx四层负载均衡实战
(1) Nginx四层负载语法
[root@4-Proxy1-10 ~]# cat /etc/nginx/conf.c/tcp_proxy.conf
stream {
#定义日志的格式
log_format proxy '$remote_addr $remote_port - [$time_local] $status $protocol '
'"$upstream_addr" "$upstream_bytes_sent" "$upstream_connect_time"' ;
#调用日志,使用proxy格式
access_log /var/log/nginx/tcp_proxy.log proxy;
......其他配置省略......
#查看日志 tail -f /var/log/nginx/tcp_proxy.log 可以看见日志
}
本篇文章来源于微信公众号: 运维库
微信扫描下方的二维码阅读本文

Comments NOTHING