HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

使用 EC2 Image Builder 实现 OS 映像构建管道自动化

  • 2019-12-12
  • 本文字数:2060 字

    阅读完需:约 7 分钟

使用 EC2 Image Builder 实现 OS 映像构建管道自动化

在我职业生涯的早期,我可以回想起自己担负的为我的开发团队创建和维护操作系统 (OS) 映像的任务。这是一个耗时的过程,有时容易出错,需要我经常手动重新创建和重新快照映像。您一定能够想象,它还涉及大量的手动测试!


如今,客户仍然需要保持其映像最新,他们可以通过手动更新和快照 VM 来保持更新,或者设立构建自动化脚本来维护映像的团队,这两个过程仍然都是费时、资源密集型并且容易出错的。我很高兴地宣布 EC2 Image Builder 现已推出,该服务使使用自动构建管道,可以更轻松快捷地为 Windows Server 和 Amazon Linux 2 构建和维护安全的 OS 映像。由 EC2 Image Builder 创建的映像可以与 Amazon Elastic Compute Cloud (EC2) 和本地资源一起使用,并且可以进行保护和强化以利遵守适用的信息安全法规。AWS 提供了安全强化策略,您可以将其作为出发点,以达到在受管制行业中运营所需的“安全技术实施指南 (STIG)”标准。


您可以为 EC2 Image Builder 配置的管道包括映像配方、基础设施配置、分发和测试设置,以生成结果映像。这包括在新软件更新(包括安全补丁)可用时自动预置映像的能力。通过管道创建新映像后,您可以另外配置要运行的自动测试以验证映像,然后再将其分发到您指定的 AWS 区域。EC2 Image Builder 可以与 EC2 VM Import/Export 一起使用,以多种格式构建映像以供本地使用,包括 VMDK、VHDX 和 OVF。测试时,您可以结合使用 AWS 提供的测试和您自己编写的自定义测试。


让我们来看看如何开始使用 EC2 Image Builder。


创建 OS 映像构建管道


在控制台主页上,单击创建映像管道可以快速开始工作。在这里,我将构建一个管道,该管道将构建自定义的 Amazon Linux 2 映像。第一步是定义配方,其中包括选择要从其开始的源映像,要应用于所创建映像的构建组件以及要运行的测试。


从源映像开始,我将选择 EC2 Image Builder 提供的托管映像。请注意,我还可以选择我创建的或与我共享的其他映像,或者指定自定义 AMI ID。



接下来,我选择要包含在配方中的构建组件,换句话说,就是我想安装到新映像上的软件。在向导中,我可以选择通过单击创建构建组件来创建新的构建组件。构建组件具有名称(和可选描述)、目标操作系统、用于加密组件的可选 AWS Key Management Service (KMS) 密钥以及指定组件自定义步骤集的 YAML 文档。构建组件也可以进行版本控制,因此在自定义要应用于映像的软件方面,我具有很大的灵活性。我可以创建和选择多个构建组件,而不必从一个组件进行所有自定义。


但是对于这篇博文而言,我单击了浏览构建组件并为 Amazon Corretto、Python 3 和 PowerShell Core 选择了一些 Amazon 提供的组件。



配方的最后一步是选择要应用于映像以对其进行验证的测试。与构建组件一样,我可以在向导中创建和指定测试,并且与构建组件一样,我具有定义测试的相同能力。同样,我尽量保持局势简明:单击浏览测试以选择一个亚马逊提供的测试,该测试将成功重启映像(请注意,我也可以选择多个测试)。



这样就完成了我的配方,因此我单击下一步并开始定义管道。首先,我给管道命名,然后选择一个AWS Identity and Access Management (IAM) 角色与 EC2 实例关联以构建新映像。EC2 Image Builder 将使用此角色在我的账户中创建 Amazon Elastic Compute Cloud (EC2) 实例,以执行自定义和测试步骤。管道构建可以手动执行,也可以选择按时间表运行。我可以使用简单的日/周/月时间段和每天时间选择器来指定时间表,也可以使用 CRON 表达式。



我选择了具有足够权限的托管 IAM 策略 (EC2InstanceProfileForImageBuilder),以使用常见的 AWS 提供的构建组件并运行测试。当您开始自己使用 Image Builder 时,您将需要设置一个角色,该角色具有足够的权限来执行自定义、运行测试以及将问题排查日志写入 S3。作为设置适当权限的起点,我建议您将 AmazonSSMManagedInstanceCore IAM 策略附加到实例附带的 IAM 角色上。


最后,对于管道,我可以选择指定一些将代表我启动的基础设施的设置,例如,自定义映像时使用的实例类型的大小,以及可以将通知转发到的 Amazon Simple Notification Service (SNS) 主题。如果需要,我还可以控制与 Amazon Virtual Private Cloud 相关的设置。



如果我正在构建的映像的操作系统与许可证关联,则可以指定下一个(或即时创建新的许可证配置),以及我的新映像的名称以及新映像将共享到的 AWS 区域(无论共有还是私有)。



点击查看,我可以查看所有设置,最后点击创建管道以完成该过程。



即使我要求所配置的管道每天在世界标准时间 06:00 运行,我仍然可以随时运行它。选择管道,单击操作,然后是运行管道


构建完成后,AMI 将随时可以从 Amazon EC2 控制台启动!


要是我早年在工作中就有了这个工具,我可以节省多少的时间和精力! EC2 Image Builder 是免费提供给客户的,并且可以在所有商业 AWS 区域中使用。您仅需为用于创建、存储和共享映像的基础 AWS 资源付费。


本文转载自 AWS 技术博客。


原文链接:https://amazonaws-china.com/cn/blogs/china/automate-os-image-build-pipelines-with-ec2-image-builder/


2019-12-12 14:25695

评论

发布
暂无评论
发现更多内容

深耕边缘计算 揭秘阿里云边缘云网一体化的技术实践

阿里云Edge Plus

5G 边缘计算 视频

掌握这21个Java的核心技术点,涨薪5K起步,告别上班复制粘贴!!

Java架构师迁哥

小白读了这篇JVM,直呼真香!(长篇干货预警)

Java架构师迁哥

坚持新媒体写作第21天了,聊聊我为什么喜欢写作

老胡爱分享

学习 写作 习惯养成 坚持 随笔杂谈 讨论写作

The Way To Go --- 切片

书旅

slice Go 语言

开篇:开机界面设置欢迎语显示IP地址

程序饲养员

Linux __init__

虚拟币交易所搭建,数字货币永续合约平台搭建

第十三周.命题作业

刘璐

加强顶层设计 推动数字出版高质量发展

CECBC

区块链 数字经济 数字出版

拥抱K8S系列-08-命令行工具管理K8S集群1

张无忌

Kubernetes 运维 kubectl

高并发优雅的做限流

架构师修行之路

限流算法 高并发优化

亚马逊宣布20亿美元“气候宣言基金”首批投资企业名单

爱极客侠

LeetCode题解:144. 二叉树的前序遍历,递归,JavaScript,详细注释

Lee Chen

大前端 LeetCode

2020 恒生 LIGHT 开发者大会,早鸟票限时开售

DT极客

360视觉入局人脸识别:终结行业“裸奔”,“安全”是终极法则

脑极体

阿里面试,让我说说ThreadLocal,我一口气说了四种

root

Java 多线程 ThreadLocal

HashMap的7种循环姿势你都掌握了吗?

root

hashmap 循环效率 JDK1.8

第十二周.命题作业

刘璐

2020年“有史以来”全网最全1309道BAT大厂java面试题(附答案分享)

数据库 程序员 面试 Java 分布式

谈谈力软快速开发平台B/S专业报表工具

Philips

敏捷开发 开发工具

英特尔、阿里巴巴全方位深化技术创新 共同引领数智未来

E科讯

自己实现一个简单的 DevOps 工具系列(后端篇)- 1

sinsy

Shell CI/CD

当代开发者的好帮手,浅析.NET敏捷开发框架的优势与特点

Learun

敏捷开发 开发工具

社区活动 | Apache Flink Meetup·深圳站,锁定 Flink 最佳实践

Apache Flink

flink

闪送,为何能从顺丰中杀出一条血路?

学习 编程 架构师

flutter app 打开微信小程序探究

Daniel

甲方日常 19

句子

工作 随笔杂谈 日常

(1)skyent VMware Workstation Pro下载与安装

休比

第十一周.总结

刘璐

苹果A系列芯片的三年AI进化:为何要大规模升级AI算力?

脑极体

穷人也能建个人博客了——阿里云函数计算体验

KAMI

阿里云 云服务 Faas WordPress

使用 EC2 Image Builder 实现 OS 映像构建管道自动化_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章