使用 AWS China 的几个坑

“Several pit on AWS China”

  在没有使用AWS China(Beijing Region)之前,我还天真的认为它只是亚马逊云服务的一个中国区延伸,会延续AWS所有的服务。但是在这两天的使用之后,发现AWS China和AWS其他Region的服务差距还是挺大的,所以简单罗列一下,这两天使用它时发现的几个坑(后续也可能还会增加)。

1. 缺少很多常用服务。

  如容器相关的ECS(EC2 Container Service)、ECR(EC2 Container Registry)等,部署相关的CodeDeploy,还有现在比较热门的API Gateway和Lambda等等,都不在AWS China的产品列表之内。如果你想在AWS China上面玩转docker,或者希望实现容器集群的自动化部署和管理,就变得很困难啦。

  以下为现阶段AWS China所拥有的所有服务:

aws-china-services.png

  而其他区域的服务却要丰富很多:

aws-services.png

2. EC2的80、443、8080端口受到限制,需要ICP备案才可以开放。

  我的应用监听的端口是8080,所以就在对应EC2实例上新增了一个Security Group,用于开放了8080端口(允许TCP 8080端口anywhere的inbound),啥提示也没看到,然后就是死活curl不通它公共DNS的8080端口(Operation timed out),通过各种方法找原因,最后换了一个8888之类的端口(当然也同时修改了Security Group规则),居然成功了。兜兜转转之间发现国内的8080端口居然受到了限制,换句话说,80、443、8080这样端口都需要ICP备案才能开放。

3. Great Firewall导致的网络限制

  众所周知的原因,既然是落在北京的机房,肯定过不了Great Firewall这一关。一些墙外的网站肯定访问不了,从Docker Hub上拉docker镜像肯定也是十分吃力的。依赖源如果来自国外可能就比较头疼了。


  PS. 我写这篇文章的时间是2017年3月,希望后续会逐渐改善吧。

参考链接