通过阿里云Python SDK,您不用复杂编程即可访问阿里云服务。本教程以运行Linux系统的电脑为例,介绍如何使用阿里云Python SDK调用运维编排服务OOS的API执行滚动升级任务。
前提条件
- 已创建伸缩组并添加ECS实例。
- 已在本地电脑中安装Python。
- 已创建RAM用户并获取AccessKey。
背景信息
操作步骤
在本地电脑中使用Python SDK为ECS实例执行脚本的步骤如下:
步骤一:安装阿里云Python SDK
步骤二:执行滚动升级任务
本步骤提供示例代码,演示在ECS实例中执行脚本。
执行回滚任务:滚动升级异常时的处理
如果滚动升级过程中出现异常,或者滚动升级后又需要使用历史配置,您可以执行回滚任务为伸缩组内ECS实例恢复配置。本步骤提供示例代码,演示如何回滚已经执行的滚动升级任务。
模板参数说明
本教程中使用了公共模板ACS-ESS-RollingUpdateByRunCommandInScalingGroup,参数说明如下表所示。
参数 | 说明 |
---|---|
invokeType | 任务类型。取值范围:
|
scalingGroupId | 待执行任务的伸缩组。 |
commandType | 待执行的脚本类型,取值RunShellScript代表Shell脚本。 |
invokeScript | 执行滚动升级任务时,在ECS实例中执行的脚本。 |
rollbackScript | 执行回滚任务时,在ECS实例中执行的脚本。 |
OOSAssumeRole | 执行任务时使用的RAM角色,默认为OOSServiceRole。 |
enterProcess | 开始执行任务时暂停的伸缩组流程。 |
exitProcess | 结束任务时需要恢复的伸缩组流程。 |
batchNumber | 执行任务时,将伸缩组内ECS实例分成几个批次,每批次至少包括一台ECS实例。 |
batchPauseOption | 执行任务时的暂停设置。取值范围:
|
sourceExecutionId | 执行回滚任务时,源滚动升级任务的执行ID。 |