运维编排场景系列---一键更新伸缩配置镜像并替换伸缩组实例的系统盘
场景介绍
把新代码部署到ECS实例后,需要创建一个新的ECS镜像并且修改指定伸缩组伸缩配置的镜像,之后还需要把伸缩组中已存在的实例的镜像一并修改。本文介绍如何通过OOS一键自动化实现以上流程。
解决方案
如下图所示,伸缩配置中的源镜像和伸缩组中实例的镜像都为:aliyun_2_1903_64_20G_alibase_20190829.vhd
登录OOS控制台。如果您之前从未开通过OOS服务,请点击“立即开通”按钮,即可一键开通。OOS运维编排是安全免费的服务,请放心开通。
开通后进入运维编排界面,点击自定义模板,点击创建模板。
点击空白模板,点击选取。
在创建模板页面Yaml栏中粘贴以下模板。
FormatVersion: OOS-2019-06-01 Description: en: Creates an ECS image and modify scaling configuration. zh-cn: 创建一个ECS镜像后更新伸缩组配置镜像。 Parameters: instanceId: Description: en: The ID of ECS instance. zh-cn: ECS实例ID。 Type: String scalingConfigurationId: Description: en: The ID of the scaling configuration to be modified. zh-cn: 待修改伸缩配置的ID。 Type: String scalingGroupId: Description: en: The unique id of the scaling group. zh-cn: 伸缩组ID。 Type: String rateControl: Description: en: Concurrency ratio of task execution. zh-cn: 任务执行的并发比率。 Type: Json AssociationProperty: RateControl OOSAssumeRole: Description: en: The RAM role to be assumed by OOS. zh-cn: OOS扮演的RAM角色。 Type: String Default: OOSServiceRole RamRole: '{{ OOSAssumeRole }}' Tasks: - Name: createImage Action: 'ACS::ECS::CreateImage' Description: en: Create new image with the specified image name and instance ID. zh-cn: 通过指定实例ID和镜像名称创建新的镜像。 Properties: imageName: 'm-{{ACS::ExecutionId}}' instanceId: '{{ instanceId }}' Outputs: imageId: ValueSelector: imageId Type: String - Name: modifyScalingConfiguration Action: 'ACS::ExecuteAPI' Description: en: Modify scaling configuration. zh-cn: 修改伸缩配置。 Properties: Service: ESS API: ModifyScalingConfiguration Parameters: ScalingConfigurationId: '{{ scalingConfigurationId }}' ImageId: '{{ createImage.imageId }}' - Name: getInstance Description: en: Views the ECS instances. zh-cn: 获取ECS实例。 Action: 'ACS::ExecuteApi' Properties: Service: ECS API: DescribeInstances Parameters: Status: Running Tags: - Key: 'acs:autoscaling:scalingGroupId' Value: '{{ scalingGroupId }}' Outputs: instanceIds: Type: List ValueSelector: 'Instances.Instance[].InstanceId' - Name: replaceSystemDisk Description: en: replaces system disk. zh-cn: 更换系统盘。 Action: 'ACS::ECS::ReplaceSystemDisk' Properties: instanceId: '{{ ACS::TaskLoopItem }}' imageId: '{{ createImage.imageId }}' Loop: RateControl: '{{ rateControl }}' Items: '{{ getInstance.instanceIds }}' Outputs: imageId: Type: String Value: '{{ createImage.imageId }}'
输入模板名称,点击创建模板。
在自定义模板页面找到刚创建的模板,点击创建执行。
选择自动执行,点击下一步:设置参数。
参数设置页面需要输入以下参数:
确认参数无误后点击创建执行。在执行详情页面可以看到模板执行的详细过程。
执行成功后,伸缩配置镜像已更换为新创建的镜像。
伸缩组中实例的镜像已更换为新创建的镜像。
欢迎使用OOS
OOS客户支持钉钉群:23330931
OOS管理控制台的链接
OOS帮助文档的链接
系列文章
主题文章
最佳实践
玩转运维编排服务的权限:Assume Role+Pass Role
阿里云运维编排新功能:一键批量克隆ECS
场景系列
运维编排场景系列----更新ECS镜像
运维编排场景系列----运行远端shell脚本
运维编排场景系列----给ECS实例自动打TAG
运维编排场景系列----从实例中拷贝文件到OSS
运维编排场景系列----给实例加到SLS机器组
运维编排场景系列----检测MFA功能状态
运维编排场景系列----每日统计多Region实例的运行状态
运维编排场景系列----如何使用jq
运维编排场景系列----分批到机器上运行命令
运维编排场景系列----更新镜像后自动更新伸缩配置镜像
运维编排场景系列----向Linux实例上传文件
运维编排场景系列----在ECS实例上运行Ansible-playbook
运维编排场景系列----下载JVM堆栈到OSS
运维编排系列场景----将实例的固定公网IP转换为其它新EIP
运维编排场景系列----自动定时升级临时带宽
运维编排场景系列----ECS实例系统快照下载到本地
运维编排场景系列----批量开启存储空间访问日志
运维编排系列场景----快速生成模版shell命令
运维编排系列场景----批量释放实例
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
【Kubernetes系列】第5篇 Ingress controller - traefik组件介绍
1. 概述 为了能够让Ingress资源能够工作,在Kubernetes集群中必须至少有一个运行中的ingress controller组件。也就是说如果在kubernetes集群中没有一个ingress controller组件,只是定义了ingress资源,其实并不会实现http、https协议的请求转发、负载均衡等功能。常见的ingress controller组件如下: Nginx Traefik Kong Istio HAProxy 关于上述的组件目前并没有详细的对比,后续我们在对每个组件都有一定的了解和使用的基础之上,可以给出一些详细的对比信息。本篇内容将主要介绍traefik组件的安装部署以及会通过一个具体的应用作演示。 2. traefik组件的安装部署 2.1 通过helm chart部署traefik helm traefik chart包中包含了部署traefik组件的所需的资源,我们可以通过借助该组件进行快速部署traefik组件,以下是部署命令行信息: > helm install --name inner-traefik --namespace kub...
- 下一篇
运维编排场景系列-----批量更新云助手客户端
应用场景 当云助手客户端未自动更新时,需要人为的手动触发去更新云助手客户端。已知需要更新的实例标签,或已知具体实例,执行模版来自动更新目标实例的客户端。 解决方案 模版功能:1、查找指定的Tags实例,或者指定目标实例。2、自动升级云助手客户端。 一、打开控制台,找到运维编排 二、创建模版 选择空白模版,并点击选取来创建模版。 模版内容: FormatVersion: OOS-2019-06-01 Description: en: Bulky update cloud assostant agent. zh-cn: 批量升级云助手客户端。 name-en: ACS-ECS-BulkyUpdateCloudAssistantAgent name-zh-cn: 批量升级云助手客户端 Parameters: targets: Type: Json AssociationProperty: Targets AssociationPropertyMetadata: ResourceType: 'ALIYUN::ECS::Instance' rateControl: Description: en...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Hadoop3单机部署,实现最简伪集群
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2全家桶,快速入门学习开发网站教程
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库