由于工作的原因,所使用的服务器并不在国内,而是使用的国外区域的服务器。因此会时常受到国内网络环境的影响而不能正常访问国外的云服务器资源。这时候就可以用到AWS的Global Accelerator加速服务来提升访问的速度和性能。

  下图是已经创建了多个加速的Dashboard界面,其中包括了加速器的名称,分配的两个Amazon Pool资源IP,开启状态和DNS name。

GAbrief

1.组件

  通过官方文档我们可以知道,Global Accelerator(以下简称GA)包含静态IP地址、加速、DNS名称、网络区、侦听器、终点组、终端节点。

1. 静态IP地址

  GA提供一组静态IP地址,这些地址来自AWS边缘网络。(虽然GA显示的区域是在俄勒冈州,但是因为是全球加速,所以在全球各资源地区访问都有加速效果。)

2. IP地址

  可作为单一固定入口点。如果已经配置了ELB负载平衡器、EC2实例或为应用程序设置的弹性IP地址资源,您可以轻松将这些资源添加到GA。这允许GA使用静态IP地址访问资源。

3. 加速

  通过AWS全球网络,可以改善互联网应用程序的可用性和性能。每个加速器包括一个或多个倾听者。

4. DNS名称

  GA给每个加速器分配了默认域名系统(DNS)名称,指向了静态IP地址。

5. 网络区

  类似于AWS可用区a网络区域,它是一个独立的单元,具有自己的一组物理基础设施。

6. 侦听器

  侦听器处理入站连接,GA根据配置的端口(或端口范围)和协议。并且同时支持TCP和CDP协议。每个侦听器都有与其关联的一个或多个终端组,流量被转移到其中一个组中的终端。

7. 终点组

  每个终点组与一个特定的 AWS 区域。终点组包括区域中的一个或多个终点。

8. 终端节点

  终端节点可以是NLB、ALB、EC2实例或ElasticIP地址。

GAprinciple

  话不多说,我们开始创建一个关联自己实例资源的GA吧。

2.添加侦听器

  点击创建GA输入名称后,我们进入了GA面板,然后点击右下方的Add listener,选择要侦听的加速端口。这里有个有趣的地方,就是上方编辑处显示的时间是1970年1月19日。

GAListener

  选择好端口(如80或者22端口),协议(TCP),客户端亲和力(Source IP),然后点击下一步保存即可。这样一个侦听器就创建好了。如果想侦听多个端口,可以重复刚才的步骤添加其它端口。

GAaddlistener

3.添加终点组

  以侦听器80端口为例,假如我们的服务器实例所在的地区为新加坡。那么我们就需要添加新加坡区域为终点组。这样我们就可以通过AWS边缘网络在各处都能快速访问该区域(新加坡)的实例资源了。

GAendpointgroup

4.添加终端节点

  既然已经添加了终点组,那么怎么加速访问该区域下的实例资源呢?这时候就需要添加终端节点了。上面已经说到,终端节点可以是NLB、ALB、EC2实例或ElasticIP地址。这里我的服务器是用的EIP,所以我选择了添加EIP资源,同时权重设置为最大(255)。

GAaddendpoint

  注意:这里同样有个需要注意的点,因为侦听器采用的是TCP协议来监听端口的健康状态。所以需要定时向该实例资源的这个端口发送状态请求。刚开始我是设置了IP限制访问,因此健康检查一直都显示的是unhealthy状态。后面开放了全部IP才可以。后面才知道需要添加加速区域特定的IP地址段才可以。具体的IP段可以从官网文档查找,这里就不做过多介绍了。

  到此,GA的创建就已经完成。我们通过分配的两个IP访问加速的端口,就会感觉到访问的速度和性能都有了明显的提升和改善。从此再也不用担心访问国外云服务器实例那坑爹的网速了。

Q.E.D.

知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议