在Amazon Web Services上开始使用Django

Eda*_*aor 23 python django amazon-ec2 amazon-ebs amazon-web-services

我开始将一些应用程序迁移到Amazon Web Services.我的应用程序是运行在MySQL上的Python/Django应用程序.

我计划将EC2和EBS用于初学者.

我正在寻找一些东西:

  1. 一个很好的分步教程,解释如何在AWS上部署Django.我环顾四周,但大多数教程都来自2年前,所以我担心它们已经过时了.

  2. 我想了解,我应该从哪个AMI开始?我知道有一个BitNami AMI预先配置了Django的良好状态,但我看到很多其他消息来源说你应该从一个基本的(干净的)linux盒开始并自己安装一切.为什么?

  3. 还有其他重要的事情我应该考虑一下吗?我的系统管理经验很少(应用程序目前在WebFaction上),所以我不确定我应该考虑什么.

一些额外的要点:

  • 我计划在同一个EC2实例上运行多个应用程序,我认为这可能吗?
  • 我现在正在使用virtualenv来分隔各种应用程序,我想我可以继续在EC2实例上做同样的事情吗?

谢谢!

小智 9

这里没有EC2的"特殊".它只提供裸(或通常从自定义AMI预配置)系统实例 - 您可以访问整个虚拟化系统,因此您可以安全地自行解决问题.将其视为特定的VPS.

您必须自己准备部署,这并不困难 - 只需按照文档进行操作即可.我建议运行基本的Linux发行版并添加所需的东西,而不是依赖于一些预先配置的图像.至于你的问题:

  1. 您需要做两件事:设置您的实例(帐户,所需的软件,其他自定义设置,因此一些Linux管理指南应该很方便)并准备django应用程序部署(部署python代码,连接到Web服务器).对于后者,可以在此处应用django的一般部署说明(http://docs.djangoproject.com/en/dev/howto/deployment/).

  2. 从您最喜欢的Linux发行版开始使用AMI,然后从它的存储库中添加必要的软件.

  3. 尽快为所有数据安装和使用EBS.重新启动时,EC2实例将清除其所有数据,因此请为此做好准备.将系统快照执行到AMI以便在发生故障时快速恢复.

是的,您可以在一个实例上部署多个应用程序,但请注意EC2实例已虚拟化(具有相当高的"虚拟化税"imo,尤其是对于较小的实例),因此您可能会遇到一般性能问题.假设您需要在一段时间后迁移到更大的实例/多个实例.

Virtualenv应该是您的默认部署工具.是的,你也可以在这里使用它.