摘要: 概述 阿里云的公网入口产品共有三个,SLB、EIP、NAT 网关,这几个产品均可以做为云上资源的公网入口,他们之间有何区别,又分别应该在什么场景下使用呢?

开始

阿里云的公网入口产品共有三个,SLB、EIP、NAT 网关,这几个产品均可以做为云上资源的公网入口,他们之间有何区别,又分别应该在什么场景下使用呢?服务器

概念

负载均衡 SLB

对多台云服务器进行流量分发的负载均衡服务,能够经过流量分发扩展应用系统对外的服务能力,经过消除单点故障提高应用系统的可用性。

可见云计算中的负载均衡除了经过流量分发让后端的服务器负载均衡,还有两个重要的用途,一就是消除单点故障,由于通常负载均衡后端挂载有多台 ecs 服务器,当某一台不工做时,系统的可用性不会受到影响;二是经过多台后端服务器一块儿工做,以扩展应用系统的总体处理能力。markdown

拿刚刚过去的双十一举例,你们都知道,2017 年双 11 又创造了新纪录,全天交易额 1682 亿,交易峰值 32.5 万笔 / 秒,支付峰值 25.6W 笔 / 秒,如此海量的访问请求,是再强大的服务器也没法支撑的,所以须要 n 多台服务器一块儿来提供服务,而这些服务器的调度都须要依赖负载均衡 SLB,负载均衡 SLB 接收到用户的请求,智能调度到后端的服务器进行处理,并将处理后的结果返回给用户,完成了单台服务器不可能完成的任务。网络

注意:负载均衡 SLB 仅提供被动访问公网的能力,即后端 ECS 只能在收到经过负载均衡 SLB 转发来的公网的请求时,才能访问公网回应该请求,不具有 SNAT 功能。负载均衡

弹性公网 IP(EIP)

独立的公网 IP 资源,能够绑定到阿里云专有网络 VPC 类型的 ECS、NAT 网关、私网负载均衡 SLB 上,并能够动态解绑,实现公网 IP 和 ECS、NAT 网关、SLB 的解耦,知足灵活管理的要求。

早期的弹性公网 IP,只能绑定 ECS,其主要目的是为了解耦服务器 IP 与服务器实体之间的强关联,设想这样的状况。在业务发展初期,访问量较小,用户购买一个较小规格的 ECS 实例便可知足业务需求,但随着用户量和业务量逐渐攀升,不可避免的须要更换更大规格的 ECS,或者使用 SLB+ECS 便于后续的扩展,若是没有弹性公网 EIP,更换 ECS 意味更换实例 IP,这样一来,不可避免的会出现业务的中断,而 EIP 的出现就很好的解决了这类问题。如今 EIP 不只仅可以绑定 ECS、还能够绑定 SLB(私网 SLB)和 NATGW,而且可以使用共享带宽,和共享流量包,经过加强 95 带宽计费、闲时流量计费等特性,更加有效的节约云上公网的成本,更多 EIP 详细信息请参考弹性公网 IP帮助文档。ui

注意:EIP 只能绑定一台 ECS,同时提供访问公网和被公网访问的能力。阿里云

NAT 网关

帮助您在 VPC 环境下构建一个公网流量的出入口,经过自定义 SNAT,DNAT 规则灵活使用网络资源,支持多 IP,支持共享公网带宽。

当您的 VPC 中有众多 ECS 须要访问公网时,针对每一个 ECS 购买公网带宽,或每一个 ECS 都配置一个 EIP,将是一件很是使人烦恼的事情,在配置和对帐管理上都比较麻烦,NAT 网关就是用来解决这个问题的,能够把 NAT 网关想象成您家中的路由器,不管是 PC、手机、PAD、TV 或任何须要链接 Internet 的设备,只要连到路由器,就能够经过路由器访问公网了,这就是 NAT 网关里面的 SNAT 功能。NAT 网关还有 DNAT 功能,可让 VPC 内的 ECS 实例经过 NAT 网关被 Internet 主动访问,这里不在展开,详情能够参考 NAT 网关产品产品帮助文档。云计算

注意:NAT 网关能够同时让多台 ECS 具备访问公网和被公网访问的能力,单没有流量分发、负载均衡的能力。spa

组网示意图及流量路径

1.jpg

如上图所示,能够看到几种公网入口的流量路径,整体来讲,遵循以下原则:

流量从哪里进来,就从哪里出去!

  1. 经过负载均衡进入的流量在负载均衡 SLB 上限速 / 计费,仅收取出方向流量费用,入方向流量不收取(在将来可能会改变),SLB 到 ECS 之间是阿里云内网通讯,不收取流量费用。
  2. 来自弹性公网 IP/NAT 网关的流量,分别在弹性公网 IP/NAT 网关上进行限速 / 计费,详情参考弹性公网 IP 和 NAT 网关;若是在购买 ECS 时选择了公网带宽,限速 / 计费点在 ECS 上。
  3. 负载均衡 SLB 仅提供被动访问公网的能力,即后端 ECS 只能在收到经过负载均衡 SLB 转发来的公网的请求时,才能访问公网回应该请求,如后端 ECS 但愿主动发起公网访问,则须要配置 / 购买 ECS 公网带宽、弹性公网 IP 或 NAT 网关来实现。
  4. ECS 公网带宽(购买 ECS 时配置)、弹性公网 IP、NAT 网关都可以实现 ECS 的双向公网访问(访问或被访问),但没有流量分发和负载均衡的能力。
  5. SLB 和后端 ECS 之间是经过内网进行通讯的,因此若是 ECS 仅仅处理来自负载均衡的请求,那么能够不须要额外购买公网带宽(ECS 公网带宽 / 弹性公网 IP/NAT 网关等)。