通过阿里云CLI执行ESS滚动升级

简介: 通过阿里云CLI执行OOS模板完成ESS滚动升级

安装并配置阿里云CLI
本文以Mac-os为例,其他系统安装可参考阿里云CLI
1.首先为阿里云CLI创建一个RAM用户来获取AK,详细操作请参考创建RAM用户

2.为创建的RAM用户授权:
a. 云账号登录RAM控制台
b. 在左侧导航栏的人员管理菜单下,单击用户
c. 在用户登录名称/显示名称列表下,找到目标RAM用户。
d. 单击添加权限,被授权主体会自动填入。
e. 在左侧权限策略名称列表下,单击AliyunECSFullAccess, AliyunESSFullAccess, AliyunOOSFullAccess, AliyunOSSFullAccess
f. 单击确定
g. 单击完成

3.安装阿里云CLI。

brew install aliyun-cli

4.配置CLI。

aliyun configure

1.png

5.验证CLI可用,若可用,可在终端看到输出当前支持的多个地域。

aliyun ecs DescribeRegions

通过CLI执行滚动升级
1.通过更新镜像滚动升级。
2.png
模板参数说明请查看ACS-ESS-RollingUpdateByReplaceSystemDiskInScalingGroup模板详情
执行命令如下:

aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByReplaceSystemDiskInScalingGroup --Parameters '{
   
                "invokeType": "invoke",
                "imageId": "centos_7_8_amd_x64_20G_alibase_20200806.vhd",
                "sourceImageId": "centos_8_2_x64_20G_alibase_20200717.vhd",
                "OOSAssumeRole": "",
                "exitProcess": [],
                "scalingConfigurationId": "asc-bp14e7lqyl66ca4rp4rb",
                "enterProcess": [
                    "ScaleIn",
                    "ScaleOut",
                    "HealthCheck",
                    "AlarmNotification",
                    "ScheduledAction"
                ],
                "scalingGroupId": "asg-bp1cjeuvlt1e1i1t",
                "batchNumber": 2,
                "batchPauseOption": "Automatic"
            }'

回滚命令如下:

aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByReplaceSystemDiskInScalingGroup --Parameters '{
   
                "invokeType": "rollback",
                "sourceImageId": "centos_8_2_x64_20G_alibase_20200717.vhd",
                "OOSAssumeRole": "",
                "scalingConfigurationId": "asc-bp14e7lqyl66ca4rp4rb",
                "scalingGroupId": "asg-bp1cjeuvlt1e1i1t",
                "sourceExecutionId": "exec-6801252e615c4067a2ef",
                "batchNumber": 2,
                "batchPauseOption": "Automatic"
            }'

2.通过脚本执行滚动升级。
3.png
模板参数说明请查看ACS-ESS-RollingUpdateByRunCommandInScalingGroup模板详情
执行命令如下:

aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByRunCommandInScalingGroup --Parameters '{
   
                "invokeType": "invoke",
                "commandType": "RunShellScript",
                "OOSAssumeRole": "",
                "exitProcess": [],
                "invokeScript": "df -h\nifconfig",
                "rollbackScript": "df -h\nifconfig",
                "enterProcess": [
                    "ScaleIn",
                    "ScaleOut",
                    "HealthCheck",
                    "AlarmNotification",
                    "ScheduledAction"
                ],
                "scalingGroupId": "asg-bp1cjeuvlt1e1i1t",
                "batchNumber": 2,
                "batchPauseOption": "Automatic"
            }'

回滚命令如下:

aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByRunCommandInScalingGroup --Parameters '{
   
                "invokeType": "rollback",
                "commandType": "RunShellScript",
                "OOSAssumeRole": "",
                "rollbackScript": "df -h\nifconfig",
                "scalingGroupId": "asg-bp1cjeuvlt1e1i1t",
                "sourceExecutionId": "exec-f577d2a639f24f4e9c0a",
                "batchNumber": 2,
                "batchPauseOption": "Automatic"
            }'

3.通过安装OOS软件包滚动升级。
4.png
模板参数说明请查看ACS-ESS-RollingUpdateByConfigureOOSPackage模板详情
执行命令如下:

aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByConfigureOOSPackage --Parameters '{
   
                "invokeType": "invoke",
                "OOSAssumeRole": "",
                "exitProcess": [],
                "action": "install",
                "enterProcess": [
                    "ScaleIn",
                    "ScaleOut",
                    "HealthCheck",
                    "AlarmNotification",
                    "ScheduledAction"
                ],
                "packageVersion": "v4",
                "packageName": "wordpress",
                "scalingGroupId": "asg-bp1cjeuvlt1e1i1t",
                "batchNumber": 2,
                "batchPauseOption": "Automatic"
            }'

回滚命令如下:

aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByConfigureOOSPackage --Parameters '{
   
                "invokeType": "rollback",
                "OOSAssumeRole": "",
                "packageVersion": "v3",
                "packageName": "wordpress",
                "scalingGroupId": "asg-bp1cjeuvlt1e1i1t",
                "sourceExecutionId": "exec-b1a293da254042f492f6",
                "batchNumber": 2,
                "batchPauseOption": "Automatic"
            }'
相关文章
|
1月前
|
弹性计算 人工智能 Serverless
阿里云ACK One:注册集群云上节点池(CPU/GPU)自动弹性伸缩,助力企业业务高效扩展
在当今数字化时代,企业业务的快速增长对IT基础设施提出了更高要求。然而,传统IDC数据中心却在业务存在扩容慢、缩容难等问题。为此,阿里云推出ACK One注册集群架构,通过云上节点池(CPU/GPU)自动弹性伸缩等特性,为企业带来全新突破。
|
弹性计算 缓存 运维
【运维知识进阶篇】用阿里云部署kod可道云网盘(DNS解析+CDN缓存+Web应用防火墙+弹性伸缩)(三)
【运维知识进阶篇】用阿里云部署kod可道云网盘(DNS解析+CDN缓存+Web应用防火墙+弹性伸缩)(三)
230 0
|
7月前
|
弹性计算 监控 开发工具
【阿里云弹性计算】实战教程:如何高效利用阿里云ECS弹性伸缩应对业务高峰
【5月更文挑战第20天】本文介绍了如何使用阿里云ECS弹性伸缩服务应对业务高峰。通过自动调整云资源规模,弹性伸缩在流量增加时扩展实例,流量减少时收缩实例,实现成本与性能的优化。步骤包括开通服务、创建伸缩组、设定规则和监控指标。文中还提供了一个Python脚本示例,并强调了优化策略,如应用无状态设计、考虑冷却时间和结合云监控。通过实践和调整,企业可以有效应对业务波动。
168 5
|
弹性计算 缓存 运维
【运维知识进阶篇】用阿里云部署kod可道云网盘(DNS解析+CDN缓存+Web应用防火墙+弹性伸缩)(二)
【运维知识进阶篇】用阿里云部署kod可道云网盘(DNS解析+CDN缓存+Web应用防火墙+弹性伸缩)(二)
209 0
|
缓存 弹性计算 运维
【运维知识进阶篇】用阿里云部署kod可道云网盘(DNS解析+CDN缓存+Web应用防火墙+弹性伸缩)(一)
【运维知识进阶篇】用阿里云部署kod可道云网盘(DNS解析+CDN缓存+Web应用防火墙+弹性伸缩)
291 0
|
存储 弹性计算 负载均衡
《阿里云认证的解析与实战-云计算ACP认证》——云计算ACP训练营第4天——二、弹性伸缩AS
《阿里云认证的解析与实战-云计算ACP认证》——云计算ACP训练营第4天——二、弹性伸缩AS
|
存储 弹性计算 负载均衡
阿里云服务器是一种简单高效可弹性伸缩的计算服务
阿里云服务器是一种简单高效可弹性伸缩的计算服务,阿里云服务器是什么?云服务器ECS是一种安全可靠、弹性可伸缩的云计算服务,云服务器可以降低IT成本提升运维效率,免去企业或个人前期采购IT硬件的成本,阿里云服务器让用户像使用水、电、天然气等公共资源一样便捷、高效地使用服务器
231 0
|
弹性计算 运维 监控
阿里云弹性伸缩介绍|学习笔记
快速学习阿里云弹性伸缩介绍
阿里云弹性伸缩介绍|学习笔记
|
弹性计算 运维 负载均衡
阿里云 “弹性伸缩” 使用体验及避坑指南
搭建弹性伸缩的业务环境共分为三个步骤,分别为:搭建三层架构、配置弹性伸缩、弹性业务验证。
2034 2
阿里云 “弹性伸缩” 使用体验及避坑指南
|
弹性计算 Kubernetes 调度
下一篇
DataWorks