2015-11-03 75 views
0

让我通过说我主要是程序员,尽管我对Linux和“标准”LAMP安装有相当不错的工作知识。我一直负责在亚马逊网络服务(AWS)中建立一个持久的LAMP环境,这比我在这方面使用的要多得多。AWS上持久LAMP的最佳做法是什么?

尽管AWS有很好的文档记录,但我还没有找到明确的,最佳的“最佳实践”概述来设置持久的LAMP环境。我遵循官方的亚马逊教程(http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/install-LAMP.html)在我们的EC2实例上设置了一个LAMP服务器,但后来发现这些实例是“临时的”,并且我需要一个EBS来使任何东西保持不变。有趣的是,EBS(弹性块存储)没有出现在我的管理控制台中,尽管它们在公共方面提供了定价(https://aws.amazon.com/ebs/pricing/)。它仍然被称为EBS?

当然,这引发了一个问题 - 我安装的程序(Apache,MySQL)以及它们各自的配置文件会发生什么?亚马逊当然不希望我们在每次启动时都从头开始重新配置我们的服务器?

我有什么现在

  • 运行Linux的亚马逊EC2 1个实例。我在亚马逊发布的“安装LAMP”教程之后安装并配置了Apache和MySQL。
  • 1X路线53托管区域(对于DNS路由)
  • 1X弹性IP连接到EC2服务器

此外,似乎存在附接到的/ dev/xvda一个未加密的8GB的体积,虽然我没有设置它,没有人可以访问,但我自己 - 它似乎是在我申请EC2时产生的 - 不知道它是否持久。

我想我需要

所以,这里是什么,我想我需要做的。请告诉我,如果我走了 - 有没有更理智的选择?

  • 1X运行亚马逊的Linux和Apache
  • 1X RDS为MySQL
  • 1X路线53托管区
  • 1X弹性IP连接到EC2服务器
  • 1X(EBS?S3?EFS EC2实例?),用于存储EC2的htdocs中
  • 1X快照保存服务器配置

这听起来是对的吗?有一个更好的方法吗?非常感谢任何建议。亚马逊的文档似乎非常善于提供细微的信息,但在解决整体战略问题方面却不尽如人意。

回答

0
  1. Web应用程序

    建议具有下Elastic Load Balancer与这些2个实例中为获得高可用性单独可用性区域为2个EC2实例。进一步来说,最好是监视CPU和带宽的这些实例 - CloudWatch - 一旦你看到他们超过了某个阈值,你可以自动添加更多实例到ELB,这是auto scaling。当然,正如你所说的,你需要AMI(快照)和服务器软件来准备启动。您还需要在负载较小时关闭服务器 - 同样会自动使用这些指标,但不应该在两台计算机之间关闭。在升级软件时不要忘记更新这些图像。

  2. 路线53

    因为你会使用ELB你不需要弹性IP地址了,你的Web服务器只能有私有地址。而就在路53,你需要指向你的网站的ELB的名字 -

  3. 数据库

    对于数据库的一部分去的RDS为MySQL在内的多AZ部署,所以你将有主人和一个副本在不同的可用区域。

  4. EBS(磁盘)

    对于EBS部分,你将定义使用这一点,他们有3种形式:磁(最慢),通用SSD(快),并置备IOPS(最快)。这些是您在计算机,Web服务器和数据库上安装的磁盘。对于数据库,您应该使用Provisioned,稍后更改它们会更加困难,而对于Web服务器,我们使用General Purpose。在AWS控制台中,您可以在EC2的Elastic Block Store部分找到它们。

的8G磁盘出现是默认的,当你创建一个Linux机器,它是一个通用的SSD是一个Web服务器不够好,但我想你应该有一个更大的去,至少50G。

+0

非常感谢这一点 - 我需要详细了解这些服务,但这是所有涉及部分的精彩概要 - 只是我一直在寻找的东西。如果您仍然在附近,我确实有几个问题需要跟进:1. 8G磁盘是否持久?和2.你提到关闭服务器(并根据需要放置服务器) - 是否有办法保存我配置的Amazon Linux的映像,以便我可以创建一个已准备好的实例,或者每次我们在线实例时是否需要重新配置它? – Typel

+0

是的,8G是持久的,但是当你从控制台启动一个新的实例时,你有一步添加存储。您可以看到磁盘,并且默认情况下您已选中终止删除标记 - 这意味着终止机器时它将被删除。如果您取消选中它,则可以将其附加到任何其他机器。对于使用正确软件安装和配置的机器,您肯定需要创建映像,这就是自动缩放的工作原理。在EC2实例的控制台上,在“操作”按钮上,您具有图像>创建图像(您可以在左侧的AMI子菜单中看到它) –

相关问题