1

我正在做一个项目,并且正处于完成 POC 的阶段,现在想要转向真正的产品。我试图了解亚马逊云产品只是为了看看我是否需要在开发时了解它们。我有很多问题无法从亚马逊网站得到解答。这可能是因为我对整个 Web 服务的事情不熟悉,并且以前从未托管过网站。我希望有人在这里向我解释这一点,就像我是 C 程序员一样:)

我看到亚马逊有很多产品 -

  • EC2
  • 弹性块存储
  • 简单数据库
  • 自动缩放
  • 弹性负载平衡

我了解 EC2 是我可以使用的虚拟服务器实例,这些实例可以预装我想要的(比如 Apache + python)。我有以下问题-

  • 如果我想要一个自定义实例(比如我为我的项目编写的自定义 apache 模块)。我可以使用确切的模块创建服务器实例,并在下次创建新实例或在 Autoscaling 中将其设为默认值吗?
  • 我可以获得 IP 地址来访问它吗?我可以设置我自己的主机名吗?我的意思是我有DNS记录吗?还是 Elastic IP 是什么?
  • 如何从外部访问它?SSH?远程桌面?还是完全取决于我如何配置实例?
  • 区域间或区域内数据传输是什么意思?数据传输从什么开始?只是人们使用我的实例吗?因此,如果我使用它,那将是我必须为使用它的人支付的费用?
  • AutoScaling 和 Elastic Load Balancing 有什么区别?
  • 什么是弹性块存储?是存储吗?如果是这样,我必须担心备份还是他们会照顾它?

关于简单数据库 -

  • 看起来使用它的界面与我的常规 SQL 调用不同。我对么?
  • 如果是这样,整个开发需要专门为亚马逊量身定制。哪种烂。有更好的选择吗?
  • 我得到数据备份还是我必须自己担心?
  • 我是否能够使用常规工具连接到数据库来检查数据库(在开发期间或之后)。或者我可以获得亚马逊为它制作的其他工具吗?
  • 安全呢?数据库显然位于云场中远离 EC2 实例的某个位置。我的数据库密码通过网络传输,我的所有数据也完全未加密。我不用担心吗?出现这个问题只是因为我不拥有任何硬件。

我真的希望有人在这里指出我正确的方向。

感谢您花时间阅读。

4

3 回答 3

5

我刚刚解决了这个问题,在这里我试图回答其中的几个问题,1)AWS EC2 实例不发布预配置的实例,实际上它是由开发人员配置的,并公开提供给用户,以便他们可以使用它。可以是这些实例中的任何一个,或者您可以选择您想要的原始操作系统并相应地对其进行配置并创建它的快照,以便您可以将其用于自动校准。快照成为基础 AMI你的情况。2)您启动的每个实例都会附加一个公共 DNS,如果您是 linux 用户,则可以使用公共 DNS 连接到该实例,如果您是 linux 用户,则可以使用 putty;如果您是 Windows 用户,则可以使用 putty。除此之外,

3)AWS 在世界不同地区拥有数据库。例如,您根据您的客户群部署您的应用程序,如果您的目标客户位于印度以外,那么最近的可用区域是新加坡,AWS 将其称为 ap-southeast-1。每个区域将有多个可用区,例如 ap-southeast-1a 和 ap-southeast-1b,它们是两个不同的数据库和地理部分。Intre 地区是指从 ap-southeast-1a 到 ap-southeast-1b。Inter Region 是指从 ap-southeast-1 到 us-east-1,即北弗吉尼亚数据中心。AWS 从进出带宽中收取费用,相信我没什么。

他们收取每 GB 1/8 美分的费用。这是一件连想都想不到的事情。

4)弹性负载均衡器是集群,它将负载平均分配给跨可用区的所有区域(如果您在多可用区中运行) ELB 位于 AWS EC2 实例之上并定期监控实例运行状况并启用自动扩展

5)为了帮助您了解什么是自动缩放,请阅读此文档http://aws.amazon.com/autoscaling/

6)弹性块存储或 EBS 就像硬盘一样,它是可以附加到您的实例的持久数据存储。关于备份是取决于您的用例。我会定期备份 EBS。

7)Simple Db现在改名为dynamo DB是nosql DB,希望大家明白什么是nosql db,它是一个非RDMS db系统。请阅读一些文档以了解 nosql db 是什么。

8)如果你有mysql或oracle db你可以选择RDS,请阅读文档。

9)我个人觉得你是整个云生态系统的新手,你需要先了解云到底是做什么的。

10)您不必对开发进行大量更改,只需确保它在您的本地机器中正常工作,它可以毫不费力地部署到云端。

11)您不必为此使用任何额外的工具,将数据库端点更改为 RDS(如果您使用它),或者在您的 ec2 实例中安装 mysql 并连接到驻留在 ec2 实例中的本地数据库并连接到它,这和你的开发模式一样简单。

12)您不必担心任何安全问题,它是安全的。不要听信神话,我已经使用 AWS 运行 3 年了,我什至不记得有多少应用程序,例如(电子商务、移动商务、社交媒体应用程序)我从未遇到过任何类型的安全问题,而且 aws 允许随心所欲地设置您的安全性。

来吧,快乐的编码。如果您有任何问题,请与我联系。

于 2013-03-16T17:03:52.263 回答
1

上面的答案是对 AWS 的一个很好的总结。只是想补充

AWS 提供完整的数据中心,因此这取决于您要实现的目标。对于初学者,您将需要,

  • EC2 - 这是你的服务器,它带有实例存储,重启时会丢失
  • EBS - 您安装的存储,数据在重新启动后保持不变
  • S3 - 提供存储(RESTful API 位于顶部,成本基于使用情况,而不是 EBS 中的“预置”)
  • 数据库 - 可以从提供托管数据库服务的 Amazon RDS 开始,您可以在各种可用数据库之间进行选择。您还可以使用 EC2 + EBS 安装自己的数据库,您必须自己管理数据库。
  • 弹性 IP:面向公众的 IP 地址,您可以将您的 DNS 服务器指向此地址。

一种计算价格的好工具, http://calculator.s3.amazonaws.com/calc5.html

于 2013-03-17T03:20:04.920 回答
0

需要考虑的其他一些服务包括:

VPC(虚拟私有云)。这是您自己的专用网络。您可以在那里定义子网、路由表和互联网网关。我强烈建议将 VPC 用于多个实例的任何严肃部署。

Glacier - 这将取代您的磁带库来存储备份。

Cloud Formation - 用于实例部署和自动化的绝佳工具。

于 2013-03-18T20:11:11.577 回答