Amazon ec2 您如何在自己的ami中管理应用程序?

Amazon ec2 您如何在自己的ami中管理应用程序?,amazon-ec2,Amazon Ec2,我们有一些从互联网收集数据的爬虫。 EC2 spot对于我们的应用来说是一个非常便宜的解决方案 在本例中,我们可以通过以下步骤设置爬虫程序: 从AMAZON快速入门模板启动ami 安装依赖项库 将爬虫应用程序发送到实例 为我们的爬虫设置启动器,让它在引导完成后工作 将实例设置为ami 但当爬虫程序需要更新时,我们需要重复步骤3。 它会影响其他设置,例如自动缩放中的“ami id” 或其他spot实例请求脚本 “ami”中的应用程序管理是一个部署问题,因此我们需要建议使其尽可能简单。现在,有另一种

我们有一些从互联网收集数据的爬虫。 EC2 spot对于我们的应用来说是一个非常便宜的解决方案

在本例中,我们可以通过以下步骤设置爬虫程序:

  • 从AMAZON快速入门模板启动ami
  • 安装依赖项库
  • 将爬虫应用程序发送到实例
  • 为我们的爬虫设置启动器,让它在引导完成后工作
  • 将实例设置为ami
  • 但当爬虫程序需要更新时,我们需要重复步骤3。 它会影响其他设置,例如自动缩放中的“ami id” 或其他spot实例请求脚本

    “ami”中的应用程序管理是一个部署问题,因此我们需要建议使其尽可能简单。现在,有另一种方法来管理它。我们使用源代码管理工具,部署步骤如下:

    • 3 git克隆源代码repo
    • 3.1从源代码编译应用程序
    • 3.2删除以前的版本
    • 3.3安装最新版本
    • 4启动器在唤醒爬虫程序之前,总是从最新版本重建爬虫程序
    新方法防止更改ami id,但每次都必须签出源代码。最后,获取源代码需要更多的时间(源代码每天都在增长)

    如何管理ami上的工件? 我不确定总是从源头建设是最好的选择。
    它只解决了一些部署问题,但没有解决爬虫实例运行后的更新问题。

    好吧,如果你的爬虫不是一天中每小时更新一次,那么我认为你应该
    编写一些脚本
    ,即你将使用你以前的和新的想法,为此,将脚本写入服务器,检查当前版本是否为最新版本,然后执行正常的爬网,如果是较旧的版本,则移动到GIT克隆内容,这样,如果不经常修改爬网程序,则可以获得高效的性能

    事实上,有了以上内容,您将在大部分时间内减少重建,因为在描述重建过程时,您必须无缘无故地执行这些步骤


    希望这对您有所帮助

    谢谢您的建议。检查变更集是一个好主意,表明新版本即将到来。