写点什么

使用 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:25816

评论

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

KPI与360度考核结合的应用落地方案

明道云

工程师们看过来|这是我见过的IT圈最“潮”的产品发布会了!

观测云

程序员 可观测性 产品发布会 IT工程师 监测

MySQL数据库之数据查询

乌龟哥哥

4月月更

小程序赛道的发展,让智能电视业务发展如虎添翼

Speedoooo

小程序 物联网 IoT 小程序容器 智能电视

全场景式全流程监控,博睿数据为券商IT运维难题提供了范例

博睿数据

直播预告丨Hello HarmonyOS进阶系列课程重磅来袭,4月27日开播

HarmonyOS开发者

HarmonyOS 智能家居 原子化服务

阿里云人工智能创新发布-工业五金图片搜索

视觉智能

拍照购物 以图搜图 图像搜索 拍立淘

网站的FAQ页面应该怎么写?

小炮

FAQ

区块链赋能不动产—易居EBaaS在不动产领域应用

BSN研习社

区块链

以南大通用为例,讲一讲如何完成与龙蜥操作系统的兼容验证

OpenAnolis小助手

操作系统 龙蜥社区 南大通用 兼容验证

天翼云:加速推进云网融合共赢算力时代

天翼云开发者社区

大数据

OpenHarmony,一路前行,为了奇迹

脑极体

风险与机遇并存,数据分析厂商如何突围?

ToB行业头条

Sidecar 模式的机制与应用

全象云低代码

Kubernetes 容器 低代码 后端技术 Sidecar

天翼云Web应用防火墙(边缘云版)拦截WordPress Elementor漏洞的说明

天翼云开发者社区

防火墙

最新云原生网络技术标准来了,为企业提供基础架构能力权威指南

York

架构 云原生 网络性能

如何通过灵魂复盘大幅降低业务风险?

Samson

技术管理 复盘 事故 SRE 4月月更

RTE NG-Lab:一起探索下一代实时互动新世界

声网

NG-Lab 声网动态

不知道OpenCLA的注意啦!(OpenCLA签署须知)

Jianmu

开源项目 开源社区 建木CI CLA 贡献者许可协议

OpenHarmony技术日圆满举行 | 3.1 Release版本重磅发布,生态落地初具规模

OpenHarmony开发者

OpenHarmony 技术日

直播预告|企业云原生 IT 成本治理方案解析

阿里巴巴云原生

阿里云 容器 云原生 cncf 直播预告

使用车载小程序,共建车联网联合共赢生态

Speedoooo

车联网 物联网 智能设备 小程序容器 车载设备

基于Sharding-JDBC的订单分库⽅案

领创集团Advance Intelligence Group

松灵学院 | Scout mini 仿真指南

松灵机器人

人工智能 机器人 ROS 移动机器人

OpenHarmony技术日成功举办,全球下载次数高达6300万

科技汇

免费IT自动化运维平台- ETL调度批量管理工具 TASKCTL 8.0 作业设计功能使用

敏捷调度TASKCTL

数据仓库 数据治理 运维自动化 ETL任务 TASKCTL

80+产品正通过兼容性测试,OpenHarmony生态落地已初具规模

科技汇

设计千万级学生管理系统的考试试卷存储方案

锎心😌😌😌

一看即会:Serverless 应用开发的 7 个实战小技巧(文末附好礼)

阿里巴巴云原生

阿里云 Serverless 架构 开发者 云原生

合作创新,携手共赢!共筑坚实数字底座!

天翼云开发者社区

系统

测试自动化最佳实践指南

阿里云云效

云计算 阿里云 测试 自动化测试 测试自动化

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