lvs、ipvs、ipvsadm,iptables、netfilter、SNAT,nginx location proxy_pass之间的区别,以及实际中的应用。
lvs是一个项目,由两部分组成:ipvs内核模块和ipvsadm命令行工具
ipvsadm既是软件包的名称,也是命令的名称
]# yum -y install ipvsadm
]# ipvsadm -Ln
ipvs主要实现的功能是负载均衡
--------------------------------------------------------
iptables是防火墙命令行工具,配置和管理netfilter框架
netfilter是内核中的一个框架,实现包过滤、地址转换等功能
SNAT是一种技术,修改源ip转换的技术,可以通过iptables实现
---------------------------------------------------------
nginx location proxy_pass
是nginx反向代理的功能
在/etc/nginx/default.d/*.conf
配置文件中,写入location对应一个proxy_pass,可以用正则~ (.*)捕获组,$1
进行反向代理。
----------------------------------------------------------
关系与区别
都是对于流量的管理
ipvs主要用于负载均衡
iptables SNAT主要用于地址转换
nginx proxy_pass主要用于web服务的访问代理
ipvs的功能单一,性能好
SNAT的功能稍多,主要工作在ip层,也就是三层到四层
nginx proxy_pass,更适合http/https等web访问,主要工作在七层
------------------------------------------------------------
在实际应用中,
内网服务器想要通过跳板机访问公网服务时
比如公网的容器镜像仓库,公网的yum仓库
可以用iptables SNAT
也可以用nginx location proxy_pass
SNAT支持的流量更大一些
nginx proxy_pass提供的附带功能更多一些,比如日志和缓存
在实际应用中,
lvs ipvs ipvsadm 主要用于负载均衡,功能单一,性能强大
更多推荐



所有评论(0)