前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >当Ansible遇到BPM,将自动化运维智能化!

当Ansible遇到BPM,将自动化运维智能化!

作者头像
魏新宇
发布2018-06-25 15:29:00
1.4K0
发布2018-06-25 15:29:00
举报

前言

本文仅代表作者们的个人观点;

文中内容仅供技术探讨,不能作为生产环境的技术指导。

本文书写过程中,

一、构建业务规则的必要性

什么是规则?

  • 机动车单双号限行
  • 极端天气预警
  • 应急响应系统
  • 不允许 root 账户远程登录
  • CPU 使用率 > 70% 时增加一个服务实例
  • 学生上课表
  • 物流行业:货物跟踪,物流实时感知
  • 智能交通:按照当前各路段的车流量动态调整路口红绿灯时长

“设置一个或多个条件,当满足这些条件时会触发一个或多个操作。 ”就是规则。

缺乏规则的世界是无可想象的,将会是一片混乱!

业务缺乏规则,会让客户在业务可见性、敏捷性、一致性方面都产生极大的困扰:

如果使用一个可衡量的规则,我们就可以更好地管理业务。

那么问题来了:在我们既定的业务规则和运维层面存在的那道的鸿沟,谁来搞定?

我们需要自动化的管理流程:

和传统的管理流程相比:

  • BPM是一种全面的管理方法,可以将组织的业务流程与客户的需求和需求相匹配
  • BPM采用系统化的方法不断提高业务效率和效率,同时追求创新,灵活性和与技术的整合
  • 与功能上集中的传统分层管理方法相比,BPM使组织能够更高效,更有效,更有能力进行变革。

BPM常见的使用场景有:

使用BPM的好处:

  • 将业务规则从应用程序代码中分离出来
  • 使用接近自然语言的语义模块编写业务规则
  • 把复杂的商业规则通过分组、设置优先级、是否允许重复触发等方式,最大限度的避免规则冲突
  • 规则触发与执行路径清晰可见
  • 适应市场要求,无惧业务规则经常变化,更新快速且低成本
  • 经过培训或定制化,业务人员可以直接管理IT系统中的规则,不需要程序开发人员参与

二、BPM的方案

谈到中间件,JBoss有整套的解决方案,它包含三个层面:

从下往上:

  • 加速层:以App Server、Web Server为核心(传统意义的中间件);
  • 整合层:以Fuse、JDV为核心(数据整合,Fuse实现ESB功能,JDV实现应用对多种异构数据源的访问和管理);
  • 自动化层:以BPM为核心。

三个层面,越往上,越偏向于业务逻辑:

业内有很多BPM的方案:IBM、Oracle都深谙此道。规则开源产品就 Drools 一家,流程开源产品 有jBPM 和 Activity。

红帽的BPM基于Drools + jBPM。

红帽® JBoss® BPM 套件将业务流程管理 (BPM)、业务规则管理 (BRM)、业务资源规划和复杂事件处理(CEP) 技术有效整合至统一、集成化的开源平台。该产品包含了红帽 JBoss BRMS 的所有功能,以及对业务流程建模、执行和监控的全方位支持。它可以帮助用户捕捉业务政策和流程,实现业务运营自动化,以及有效衡量业务活动在异构环境(包括物理、虚拟、移动和云环境)中的各项结果。JBoss BPM 套件包括简便易用的图形工具,有效促进 IT 用户和业务用户之间的协作,并为管理业务应用程序的规则和流程提供良好的能见度和掌控力。采用该产品将帮助企业迅速提高业务敏捷性、显著改善运营效率运营效率和缩短产品面市时间。

BRMS包括业务规则引擎(Drools),业务资源规划器 (OptaPlanner),商业中心(Drools Workbench)和实时决策 服务器(KIE服务器)。这些工具支持业务规则的创建和执行 以及解决优化问题。 BPM套件包含BRMS中的所有内容,但除此之外,还有 执行引擎(jBPM),总线中央(KIE工作台),过程 执行服务器(KIE服务器)和业务活动监控仪表板 (Dashbuilder)。这些工具提供完整的BPM解决方案,包括业务 过程建模,执行和监视。

三、当Ansible遇到BPM

Ansible是什么,本文无需再介绍。

Ansible Tower企业版中,有workflow的功能,是以上是基于多个模板创建的模板。本质上是将多个Playbook串起来。这做到了自动化,但还没有做到智能化。我们如何实现理想的自动化运维平台?

借助于BPM,可以实现:

可以实现的效果:

我们看几个示例:配置流程服务:

零代码拖拽式实现流程设计

动态传参:

发布、运行流程

我们再举两个场景:

流程步骤如下:

1.自动进行可行性检查,返回检查状态

2.创建工单号,人工人审批

3.申请到的存储,自动进行主机挂载

4执行状态邮件,短信通知管理员

借助于BPM和Ansible Tower,最终我们可以实现自动化运维的:平台化、服务化、组件化、可扩展:

魏新宇

  • "大魏分享"运营者、红帽资深解决方案架构师
  • 专注开源云计算、容器及自动化运维在金融行业的推广
  • 拥有MBA、ITIL V3、Cobit5、C-STAR、TOGAF9.1(鉴定级)等管理认证。
  • 拥有红帽RHCE/RHCA、VMware VCP-DCV、VCP-DT、VCP-Network、VCP-Cloud、AIX、HPUX等技术认证。
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-05-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大魏分享 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档