【运维自动化】37秒万台服务器标准化与交付自动化
情景
对运行在上万台服务器上的业务服务做标准化的调整
前提条件
- 服务器已在CMDB注册
- 拥有服务器所在CMDB中业务的运维权限
操作步骤
1.新建作业
2.执行和查看执行结果
1. 新建作业
按照标准化的需求,我们需要将gsectl文件推送至/usr/local/gse_bkte/agent/bin/目录,为了确保万无一失,做md5校验。
作业模板如下:
提示:为了阐述作业平台中的两个全局参数:IP 和 云参,我们通过需求自助化中用到的作业模板来介绍。
IP这个参数,我们一般建议使用动态分组,因为服务器会有故障替换的可能,IP会变。
云参在脚本中可以直接引用。
2. 执行作业及查看执行结果
点击执行作业后,在9946台服务器上总耗时37秒。
其中分发gsectl文件耗时13秒
md5校验耗时24秒。
一次标准的应用交付自动化案例
情景
应用发布是运维这个岗位的职能之一,发布关联多个ITIL系统的功能模块,比如发布单、监控的告警屏蔽、DB变更、业务内公告、统一登录入口等,频繁在多个系统间切换,不但影响效率而且容易出错,同时无法可视化查看发布进度以及事后的回溯。
接下来,一起看下标准运维是如何解决这些痛点。(有功能特性需要5.1环境)
前提条件
主机在蓝鲸CMDB中管理
术语解释
-
流程模板 : 标准化的资源和应用交付模式,通过资源编排引擎,实现对资源的创建、配置,实现自动化交付资源或应用,行业中一般称之为pipeline、资源编排模板,比如一次发布任务可以编排为一个流程模板。
-
标准插件 : 多个执行节点通过编排规则实现流程模板,其中的执行节点称之为 标准插件,比如执行脚本为一个标准插件
操作步骤
1.梳理:梳理标准化模板
2.建模:新建流程模板
3.执行:执行流程
1. 梳理标准化模板
配置管理标准化中提到,运维服务“四化建设”的标准化包含配置管理、发布、变更、故障处理、监控告警等场景的流程制定。以发布为例,通过流程图梳理应用交付的流程。
分为发布前准备、发布中、发布后检查三部分。
2. 创建流程模板
为了简化演示,将流程图中的关键节点在标准运维的业务流程模板中体验出来。
选择 [流程模板] -> [业务流程],点击 新建 来创建业务流程模板。
从左侧标准插件区,选择发布流程中需要的标准插件作为流程的节点,比如执行作业, 向右拖动到画布。
选择作业平台中准备好的 作业模板,然后新建 全局变量,并将全局变量填充到节点的参数中。
按照上述步骤,完成一个应用发布的流程模板。
标准运维内置了CMDB、作业平台、通知等标准组件,如果不在此列的,需要开发标准运维插件来集成企业内部ITIL系统。
这里重点说明 全局参数 和 流程分支。
2.1 全局参数
服务器发生故障后,保障下一次应用发布获取最新的IP列表,可以通过IP选择器实现。
2.2 流程分支
应用发布过程中,执行成功 和 执行失败的处理分支不同,可以通过流程分支功能对上一步执行结果为真或为假来判断。
提前引用上一步流程节点的输出参数执行结果,将其用于上图中的流程分支表达式。
3. 执行流程
在业务流程列表中,点击新建任务
点击执行任务流程
部署蓝鲸智云
https://bk.tencent.com/download/
扩展阅读
上下文传参
将一个流程节点的输出作为另一个流程节点的输入。
比如第1步输出 MD5值 ,第2步分发版本,第3步使用第1步中生成的 MD5值 来校验版本的一致性,效果如下:
主要用到标准运维流程节点中的引用输出参数(5.1版),引用第1步中的release_md5变量。
release_md5变量需要提前在作业模板中设置,如下图:
蓝鲸智云简介
腾讯蓝鲸智云(简称蓝鲸)软件体系是一套基于PaaS的技术解决方案,致力于打造行业领先的一站式自动化运维平台。目前已经推出社区版、企业版,欢迎体验。了解更多:https://bk.tencent.com/