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 主要用于负载均衡,功能单一,性能强大

更多推荐