当您需要更新云服务器ECS实例内部的软件、配置等时,您可以基于系统运维管理 OOS(CloudOps Orchestration Service)一键自动化更新自定义镜像。
背景信息
系统运维管理为更新镜像的场景提供了公共模板,您只需选择一个源镜像,输入更新镜像所需的云助手脚本等必要参数,就可以创建立即执行的运维任务,一键更新自定义镜像。更多信息,请参见什么是系统运维管理。
在更新自定义镜像的完整流程中,系统运维管理的ACS-ECS-UpdateImage公共模板按顺序执行以下任务,并生成新的自定义镜像:
检查新自定义镜像的名称是否已存在,以及是否符合规则。
根据您配置的实例规格、源镜像ID、安全组ID等参数创建并运行一台临时ECS实例。
检查临时ECS实例是否安装了云助手Agent,若缺失则安装云助手Agent。
在临时ECS实例上,通过云助手执行脚本更新实例系统环境。
说明系统运维管理通过调用云助手API执行Shell、Bat或者PowerShell等脚本,更新ECS实例的系统应用环境。更多信息,请参见云助手概述。
停止临时ECS实例。
使用临时ECS实例创建自定义镜像。
释放临时ECS实例。
重要在更新自定义镜像过程中,阿里云会自动创建临时实例,临时资源以按量付费方式计费。因此,在更新自定义镜像之前,需要确保您的账号余额足够支付可能产生的临时资源费用。
操作步骤
登录ECS管理控制台。
在左侧导航栏,选择 。
在页面左侧顶部,选择目标资源所在的资源组和地域。
在镜像页面,选择自定义镜像页签。
找到目标镜像,在操作列选择 > 更新镜像。
跳转至系统运维管理控制台,完成以下配置。
完成通用设置。
参数
说明
示例
新镜像名称
更新的自定义镜像的名称,不能和已有镜像名称重名。
image-20230713133609
执行使用到的权限的来源
(默认设置)当前账号的已有权限:执行您使用的账号的权限动作。请确保您拥有创建自定义镜像涉及的所有ECS API调用权限。
指定RAM角色,使用该角色的权限:如果指定了RAM角色名称,OOS将扮演该RAM角色执行运维任务。
当前账号的已有权限
选择镜像。
默认填充已选择的目标镜像,请确认已选的镜像是否为需要操作的镜像。
配置中转实例。
设置用于创建临时ECS实例的专有网络、交换机、安全组和实例类型等。
参数
说明
示例
专有网络
用以创建临时ECS实例的专有网络。
vpc-bp1pfyqnwdnvj7b******
交换机
用以创建临时ECS实例的交换机ID。指定的虚拟交换机必须和安全组在同一个专有网络VPC中。
vsw-bp1s5fnvk4gn2tw******
安全组
用以创建临时ECS实例的安全组ID。
sg-bp1azkttqpldxg******
实例类型
用以创建临时ECS实例的实例规格。更多信息,请参见实例规格族。
ecs.g6.xlarge
系统盘类型
用于创建临时ECS实例的系统盘。
cloud_essd
流量公网带宽
设置访问临时ECS实例的公网带宽。
0
(可选)发送远程命令。
您可以根据需要选择命令类型并输入命令内容,该命令内容是在临时ECS实例中执行的脚本内容。
(可选)完成镜像分发设置。
您可以根据需要设置是否复制镜像(填写需要复制的目标地域)或者共享镜像(填写镜像共享账号ID)。
(可选)根据需要设置伸缩组配置。
(可选)完成执行设置。
您可以根据需要设置描述信息、标签、资源组或者将当前配置保存为模板。
单击创建,在弹出的对话框中确认参数信息后,单击确定。
如果成功创建运维任务,且执行状态处于运行中,则表示正在更新镜像。当执行状态转换为成功时,则表示镜像更新成功。
说明如需了解更新镜像的详细执行过程,您可以单击操作列的详情,然后单击日志页签了解运维任务的实时进度和状态。
(可选)您可以查看更新后的新镜像信息。
在执行任务的详情页面,在输出参数中查看新镜像ID。
在ECS控制台的自定义镜像列表中,根据镜像ID查看新生成的镜像。