【问题标题】:Can someone elaborate on these basic concepts of hosting via Amazon Web Services?有人可以详细说明通过 Amazon Web Services 托管的这些基本概念吗?
【发布时间】:2011-07-09 00:25:48
【问题描述】:

我阅读了所有亚马逊文档,但我仍然感到困惑,或者我应该说被不同的术语弄得不知所措。

我来自传统的网络托管环境,我理解的唯一概念是我拥有多少存储空间和允许多少带宽。

以下是我迄今为止对亚马逊的了解以及我对亚马逊的很多疑问。

EC2 - 我假设是可以设置我的网络服务器 (IIS) 并运行我的 .NET 应用程序的实例?还是已经为我设置好了?

EBS - 用于数据库?如果没有,我在哪里可以获得数据库服务器?是否已安装数据库服务器(Sql server 2005 或 2008)?什么是快照获取请求?和快照放置请求?

S3 - 这是用来做什么的?我以为EBS是用于存储的,在这里感到困惑。为什么需要 S3?

弹性负载平衡 - 我认为负载平衡只是减轻 Web 服务器负担的一种方式。它如何与亚马逊合作? “弹性”负载均衡是什么意思?

区域之间的数据传输 - 这是什么意思?以及如何控制数据传入和传出的区域?

我的要求如下

  1. 我需要一个 IIS 网络服务器来运行我的页面
  2. 我需要一个数据库服务器
  3. 我需要一个位置来存储我的文件(它可以与 #1 在同一个“服务器”上)吗?
  4. 我需要数据库和文件服务器始终可以恢复。 (听说我们需要将其存储到 EBS 中以避免数据丢失?)
  5. 如果一台 Web 服务器过载,运行缓慢,我需要将其关闭到场中的另一台服务器。
  6. 如果流量激增,那么我需要一种方法来增加 CPU、内存等。能够很好地处理流量(我假设这是弹性的目的)

另外,我不太了解“如果您不运行实例,请关闭它,否则将收费”的概念。我将运行一个理想情况下保持 24/7 全天候运行的网站。在什么情况下,您有条件地使实例上升或下降?

[编辑]

您如何准确监控您的使用情况?所以你不会对几千美元感到惊讶吗?你能戴上帽子吗?我读过一些故事,AWS 用户对 300 美元的账单或其他东西感到惊讶,因为他们在亚马逊上没有太多托管服务,也没有任何流量密集型网站。

抱歉,我是“云”计算的新手。试图赶上这里。

提前非常感谢

【问题讨论】:

    标签: amazon-s3 amazon-ec2 amazon-web-services amazon-ebs amazon-elb


    【解决方案1】:

    您问了很多问题,但让我尝试提供一个高级概述:

    • EC2:只是一个空中服务器。当您启动服务器时,您使用的是 EC2 技术。
    • EBS:认为这是一个硬盘。您的服务器映像必须从磁盘启动,就是这样。
    • S3:存储文件的地方,然后使用 HTTP 检索它们。出于性能和可扩展性的原因,您可能希望将数据和图像放在 S3 上,而不是直接在服务器之外运行。
    • Elastic Load Balancing:负载均衡器位于所有请求的前面,并将它们透明地定向到实时服务器。如果您的应用包含许多服务器(例如 5 个或更多),并且您希望负载均衡器分散负载并自动绕过任何故障机器,则可以使用此功能。
    • 区域之间的数据传输:亚马逊数据中心遍布全球。如果您需要在物理区域之间传输数据,那么他们将按每 kb 交易数据向您收费。
    • 数据库:如果您正在构建应用程序,那么只需从在您自己的服务器上运行的您自己的数据库开始。 IE。只需使用 MS SQL 或 MySQL 启动您的应用程序,然后更深入地了解 Amazon 拥有的数据库解决方案。
    • 收费:你说得对,亚马逊收费可能会失控且昂贵,但这在很大程度上取决于你对自己基础设施的控制程度。云意味着每单位带宽和 CPU 消耗的直接费用。如果您在客户端缓存图像(带宽)并减少机器(CPU)的大小,您可以立即看到费用的降低。您可能想查看http://LabSlice.com [免责声明:查看我的签名,因为这是我工作的地方],因为那里的技术可以帮助降低 EC2 成本。我的第一条建议是密切关注亚马逊控制台上的“账户”面板,因为它提供了一个运行中的收费标签,这样可以避免意外。

    【讨论】:

    • 非常感谢西蒙。您的其他答案确实有帮助。我可能会研究亚马逊拥有的数据库解决方案,因为我不希望查询通过网络来获取查询。为了避免这方面的延迟。太糟糕了,Stackoverflow 不会让我将你的两个答案都标记为“答案”。如果我有选择,我会的。
    • 我们实际上只是在公司博客上添加了一个 EC2 术语列表:blog.labslice.com/2011/03/taxonomy-of-amazon-cloud.html
    【解决方案2】:

    我或许可以回答您的一些问题,但肯定不是全部。 EC2 是预配置了许多不同选项的虚拟机。听起来你想要的是一个 Windows 实例。它们带有许多不同的内存和 CPU 选项,具体取决于您认为您的应用程序需要什么。

    EBS 基本上是您的容错文件系统。那是您放置文件的地方,包括您的数据库文件。

    S3 本质上是一个内容交付网络。放置文件的 REST 友好的地方。例如,如果您只有静态内容,您可以将整个内容放在 S3 存储桶中,而无需支付任何计算能力,只需支付存储和带宽(这很便宜)。

    我应该补充一点,如果您愿意使用 EC2 实例来提供所有内容,则无需使用 S3。都是选项问题。

    至于你为什么要关闭一个实例——那是因为你没有使用它。例如,用于在各种不同场景中测试应用程序的登台服务器。您可以为每个场景使用不同的 EC2 实例,在您想要运行测试时启动它们,然后在完成后停止。

    对于 SQL Server,Amazon 提供的“预配置”EC2 实例之一包括已经设置好的 SQL Express。如果您不想要 SQL Express,那么我相信您将使用您的一个 SQL Server 许可证并将其安装在您的服务器上。

    AWS 的优点在于准入门槛非常低。只需几美元的投资,您就可以闲逛一天,看看有什么可看的。当我第一次开始使用 AWS 时,我发现从小处着手,使用单个 EC2 实例很有帮助。只需打开 RDP 端口并连接到它。您很快就会有宾至如归的感觉,在云端拥有自己的机器。

    让 CDN 和负载均衡的事情及时到来。

    最后一点建议是,请记住您的 ESB 数据和您的实例必须位于同一区域。如果您在欧洲启动一台机器,而您的 ESB 卷在西雅图,那么您就不走运了。您必须将您的音量从一个区域转移到另一个区域(他们会为该数据传输收取一定的费用)

    【讨论】:

    • 感谢您的好评。当您提到用于存储数据库文件的 EBS 时,是否意味着我将在那里安装 SQL Server 2005/2008 或者?我不是管理员,所以我不明白什么是数据库文件。我以为它只是在那里运行的服务器?那么对于 S3,比如说一个论坛站点,它将用于存储所有用户上传的图像、文件、电影等?那么为什么不将它存储到 EBS 上呢?而 S3 和 EBS 的区别是一个收取“计算”能力而另一个不收取?
    • @liming,我更新了我的回答,更清楚了一点。希望有帮助。你检查过我们的 ServerFault 吗 --- 我相信那里也有一些人在做 AWS 的事情。
    • @非常感谢拉尔夫。它清除了很多。是的,sql express 不会削减它,所以我将在那里使用我们的 sql server 许可证之一。非常感谢您在这件事上花费的时间。
    【解决方案3】:

    这里的其他答案错过了 EBS 和 S3 之间的一些重要区别。

    1. S3 完全按用量付费。即您只需为您使用的存储和带宽付费。而对于 EBS,您需要预先确定希望您的 EBS 容量有多大,并且您支付全部金额,无论您实际使用多少数据

    2. 单个 EBS 卷只能连接到一个 EC2 实例 - 您不能在多个实例之间同时共享它们。当然,这对您来说可能不是问题,但需要注意。它不是共享存储空间。另一方面,可以使用简单的 url 从任何地方访问 S3 上的资源。

    3. S3 存储桶可与 Cloudfront(cdn) 一起使用,以加快全球交付速度。您无法对 EBS 卷执行此操作。

    【讨论】:

    • +1 非常正确。 S3 是一项非常重要的服务,与 EBS 非常不同。你真的需要两者。
    • @RalphShillington,这完全取决于每个人的具体情况。
    猜你喜欢
    • 2013-08-26
    • 2019-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-06
    • 1970-01-01
    • 2017-04-21
    • 1970-01-01
    相关资源
    最近更新 更多