2013-03-16 140 views
1

我正在开展一个项目,并且正在完成POC并现在想要转向实际产品。我试图了解亚马逊云产品,以了解是否需要在开发时注意这些产品。我有一堆问题,我无法从亚马逊网站获得答案。这可能是因为我对整个网络服务事物都陌生,以前从未托管过网站。我希望有人在这里像我一个C程序员:)了解亚马逊产品

我看到亚马逊的产品的一堆将这个给我解释 -

  • EC2
  • 弹性块存储
  • 简单DB
  • AuotScaling
  • 弹性负载平衡

我知道EC2是可以使用的虚拟服务器实例,它们可以预先加载我想要的(比如Apache + python)。我有以下问题 -

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

有关Simple DB -

  • 它看起来像使用,这是我经常SQL调用不同的接口。我对么?
  • 如果是这样,整个开发需要专门为亚马逊量身定制。哪种吸吮。有更好的选择吗?
  • 我可以获得数据备份还是我自己必须担心?
  • 我可以使用普通工具连接到数据库,以检查数据库(在开发期间或之后)。或者,我还能获得亚马逊为其制作的其他工具吗?
  • 安全性如何?数据库显然远离EC2实例在云农场的某处。我的数据库密码正在通过线路,所以我的所有数据都完全未加密。我不必担心吗?这个问题只是因为我没有任何硬件。

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

感谢您花时间阅读。

P

回答

5

我刚刚经历的问题就在这里,我试图回答他们几个, 1)AWS EC2实例犯规发布预配置的情况下,实际上它由开发商配置,并使其公开可用给用户,以便他们可以使用它。你可以选择任何一个这样的实例,或者你可以选择你想要的操作系统,并且相应地配置它,并创建一个快照,以便你可以使用它来自动调整。快照成为基础AMI你的情况。 2)你启动的每个实例都会有一个公共的DNS附加到它,如果你是一个Linux用户,你可以使用公共DNS连接到那个实例,如果你是一个Windows用户,你可以使用putty。除此之外,您还可以附加一个弹性IP,其花费将像花生一样附加到实例并通过弹性IP访问您的实例,您可以映射公共DNS或弹性IP映射到网站分别添加A记录或Cname。

3)AWS拥有世界各地的数据库。例如,根据您的客户群部署您的应用程序,如果您的目标客户是基于印度以外的地区,则可用的最近地区是新加坡,这个地区被AWS称为ap-southeast-1。每个地区将有多个可用区域,例如ap-southeast-1a和ap-southeast-1b,这是两个不同的数据库和地理上的一部分。 Intre区域是指从ap-southeast-1a到ap-southeast-1b。国际区域是指从ap-southeast-1到us-east-1这是北弗吉尼亚州数据中心。 AWS在即将到来的带宽中收费,相信我一无所获。

它们每GB占1美分的1/8。它甚至可以考虑它。

4)Elastic Load Balancer是集群,它将负载平均分配到所有可用区域内的区域(如果您在多个AZ中运行)ELB位于AWS EC2实例之上,并定期监控实例健康状况并启用自动扩展

5)为了帮助你了解什么是自动缩放请到通过这个文件http://aws.amazon.com/autoscaling/

6)弹性块存储或EBS是像硬盘是它可以连接到您的instance.Regarding回持久性数据存储在你的使用案例中提供依赖。我定期备份EBS。

7)简单Db的现更名为发电机DB是的NoSQL数据库,我希望你明白什么是NoSQL的数据库,它的非关系数据库管理系统的数据库。请阅读一些文档来了解nosql db是什么。

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

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

10)你不必做大量更改,以发展为这样,只要确保它在你的本地箱罚款,就可以部署了无事生非云。

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

12)你不必担心任何安全问题,它是安全的。不要按照神话,我已经使用aws 3年以来我甚至不知道记得有多少应用程序,如(电子商务,移动电子商务,社交媒体应用程序),我从来没有面对任何类型的安全问题,也aws允许设置您的安全性,无论你想要什么。

继续,快乐编码。如果您有任何问题,请与我联系。

+0

我将添加到1.一旦你配置了你的实例,你就可以用它创建一个“AMI”,它是系统的一个副本,并且你将能够从相同的“AMI”。 – 2013-03-16 21:36:33

+0

非常感谢!这回答了我所有的问题。我仍然需要了解各种数据库产品。我对使用云很陌生,但确切地了解我从中得到了什么以及期待什么。就像你猜到的那样,这是第一次使用它,所以试图在跳入前了解。 – R11 2013-03-17 04:13:14

1

上面的答案是AWS上的一个很好的总结。只需要添加

AWS提供完整的数据中心,因此它取决于您尝试实现的目标。对于初学者来说,你需要,

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

一个伟大的工具来计算价格, http://calculator.s3.amazonaws.com/calc5.html

+0

谢谢!为什么我需要EBS和S3?使用S3,我的代码不会专门针对亚马逊云?这是最初让我困惑的原因。使用Amazon RDS将获得自动备份?我的意思是我保证写入的数据不会丢失? – R11 2013-03-17 17:54:12

+1

这取决于你的应用程序,区别在于它们可以与它们一起使用。 EBS专门用于EC2实例,除非安装到一个实例,否则无法访问。另一方面,S3不限于EC2。 S3存储桶中的文件可以使用HTTP协议/ BitTorrent进行检索。您需要使用API​​(或API生成的URL)来读取或写入S3的信息。使用EBS,卷可以安装在EC2上,并且看起来像一个硬盘分区。它可以用任何文件系统进行格式化,文件可以通过EC2实例写入/读取,就像硬盘一样。 – Monis 2013-03-17 20:10:22

+0

我现在明白了。我还得到了关于数据库的这个[URL](http://aws.amazon.com/running_databases/),它清楚地解释了不同类型的数据库。我不知何故直到现在才发现它。 – R11 2013-03-18 02:05:31

0

一些其他的服务,您考虑是:

VPC(虚拟私有云)。这是你自己的私人网络。您可以在那里定义子网,路由表和Internet网关。我强烈建议使用VPC进行多个实例的严重部署。

冰川 - 这将取代你的磁带库来存储备份。

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