我想知道烘焙AMI的最佳方法是什么。尽管它提供了很多一致性,但是由于安全更新较小或新的软件包版本而导致您需要重新烘焙AMI时,很难达到一定的一致性,因为最终您很可能会更新其他您不使用的软件包不需要更新,这可能会导致某些问题。

到目前为止,我正在烘焙所有软件包安装程序,包括docker和提取基本镜像(例如Ubuntu)。

我知道可以在执行apt-get install或cfn-init等效文件时确切指定所需的软件包版本,但是如果不再支持该版本,该怎么办?我应该将包裹放在S3桶中吗?但是所有依赖项又如何呢?是否有任何简单的方法可以从s3进行apt-get安装,而不是前往第三方存储库?

最佳答案

我刚刚回答了一个类似的问题,即将资源烘焙到AMI中与使用诸如Chef,Puppet等配置管理工具。

简短的答案是尝试不要将软件烘焙到AMI中,而是在具有可重复“食谱”(首席术语)的基础镜像之上构建。

至于要安装的软件包的特定版本,您当然可以将软件依赖项固定到特定版本。如果您对他们没有什么特别的事情,我强烈建议您尽可能使用本机软件包管理器。至于不再可用的软件包,希望Ubuntu LTS不会成为太大问题。

参见full answer here

关于amazon-web-services - 如何实现重新烘焙AMI的一致性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28886678/

10-11 06:17