繁体   English   中英

如何自动化Packer AMI构建?

[英]How to automate Packer AMI builds?

我使用打包程序和amazon-ebs构建并配置了AMI。

我需要每周重建一次AMI。 有一个简单的解决方案吗? 我需要针对詹金斯的单独ec2还是过度杀伤力? 任何CI工具都可以做到这一点还是有更简单的方法? 我的打包程序AMI代码托管在github上。

此外,我从AMI创建了一个新的ec2实例,并每周拆除一次旧的。 自动安排ec2拆卸和重建的最佳方法是什么?

所以有两个问题:

  1. 每周重建AMI
  2. 根据重建的AMI每周重建ec2

我没有任何开发经验,请原谅。

我假设这是您要使用自动化服务器的唯一任务。 在其他情况下,建议您创建一个Jenkins或任何其他自动化服务器。 这完全取决于您的需要。

要自动化此单个任务,您不一定需要自动化服务器。 我要演示的一种方法是多种实现方法中的一种。 以下是您所需的AWS资源。

  1. 安装了packeraws cli和任何其他依赖项的Docker映像。
  2. 使用#1中的映像配置的ECS任务。
  3. CloudWatch计划表达式,以定期(在本例中为每周)触发ECS任务。

您的docker映像应进行配置,以便容器执行可以重建AMI。 您可以为此编写一个bash脚本,并将其配置为容器入口点。

第二点,重建EC2服务器不是最佳实践。 您应该有一个单独的过程来将AMI更改应用到各个实例。 但是,您可以通过安排一个lambda函数来执行此操作,该函数将终止并启动新实例。

我知道这是一个广泛的答案,还有许多其他方法可以做到这一点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM