亚马逊网络服务架构和成本核算

时间:2013-07-22 06:35:54

标签: amazon-web-services amazon-ec2 cloud amazon

我是亚马逊网络服务的新手。我真诚地感谢任何有关最终确定架构和达成成本计划的帮助。我正在为我们正在设计的动态网站设计基于AWS的解决方案。首先,我需要有2个高CPU中等利用率EC2实例(两者都将充当Web服务器),1个高CPU中等利用率EC2实例,用于我的数据库,它将是Postgre SQL和1个高CPU中等利用率EC2实例,用作读取我的数据库的副本。我还将拥有相当数量的静态内容,如图像,视频或仅我正在考虑使用S3存储桶的.doc文件。所以,我的网站将是一个动态+静态的网站。我期待用户从0开始快速指数级扩大,例如一年内100万。因此,我需要根据流量扩大我的EC2组合(如前所述)。我正在考虑使用CloudFormation堆栈来快速扩展我的部署。此外,为了有效地路由流量,我将使用单个ELB开始。另外,我想根据用户ID垂直分区我的数据库。例如,在第二个EC2数据库实例上的一个EC2数据库实例用户2001到4000上的用户ID 1 - 2000 ...我将仅自动扩展Web服务器EC2实例,而我的数据库EC2实例将具有100%正常运行时间

我的问题是:

  1. Web服务器EC2实例的自动缩放策略应该是什么?当缩放如此动态时,我如何知道每月的成本核算。我的意思是有没有办法预测,以便我可以进行成本分析甚至分析?
  2. 所有EC2实例(Web服务器和数据库)是否都需要EBS支持或Ephemeral存储是否足够?我相信对于数据库EC2实例,我需要一个EBS支持。 Web服务器Ec2实例怎么样?
  3. 假设我最终扩展到100个EC2实例。只需要一个ELB就可以了,还是需要多个ELB?
  4. 如何分析崩溃前一个高CPU中等利用率EC2实例处理的HTTP请求数量?
  5. CloudFront可用于托管此类动态+静态网站,还是仅用于静态网站?
  6. 请帮我解决这些问题,因为我对云解决方案架构没有任何线索......

    ...谢谢 维克拉姆。

2 个答案:

答案 0 :(得分:1)

这是white paper我们(RunSignUp)写的关于我们如何在亚马逊上扩展的文章。我们的用例是处理在线竞赛注册的开放,其中50,000名参赛者希望在不到10分钟的时间内注册。这显示了我们如何配置所有内容,包括设置以及我们开发的一些代码。我们基本上遇到了与您相同的问题,并没有发现任何具有如何构建可扩展应用程序以及亚马逊如何使用它进行扩展的完整用例的任何问题。希望它有所帮助。

答案 1 :(得分:0)

快速尝试帮助您入门;

  • #1在没有写书的情况下太大而无法回答,它与系统及其设计有太大关系,无法以通用方式回答。
  • #2您肯定希望支持您的数据库。另一方面,Web服务器可能更适合短暂存储,它们的无状态/设置越多,动态创建/销毁实例就越容易。
  • #3据我所知,“附加”到单个ELB的机器数量没有上限。在极端负载下,如果您将站点拆分为多个负载平衡器,则可能会遇到稍微较短的延迟。您可以找到更多可以根据实际架构here进行映射的信息。
  • #4只有对系统进行负载测试才能告诉您。
  • #5来自Cloudfront page;
  

Amazon CloudFront可用于使用全球边缘位置网络提供整个网站,包括动态,静态和流媒体内容。

换句话说,它的架构不会阻止您在网站上混合静态和动态内容。