数字化业务已是大势所趋。无论是优化内部工作流,还是直接提供相应的功能(比如通过跨混合云托管的应用)来提升客户体验,都将成为企业发展的关键所在。一旦构建并部署了这些解决方案,平稳运维就成为首要目标。
通过自动化保持运转
IT 运维团队在 Day 2 运维中面临诸多挑战,例如:
- 持续降低安全风险
- 可扩展性
- 升级和补丁
- 相关技术和环境的变更及影响
- 变更的一致性
- 保持解决方案更新
- 合规需求
- 人员有限
- 技能差距
- 招人困难
- “敏捷”交付服务
- 缩短平均解决时间(MTTR)
- 等等
在这样的背景下,IT 自动化解决方案持续帮助团队更快地做出响应,提高了工作一致性和效率。
例如,当发现新的安全风险时,团队可能需要为 100 台服务器安装补丁。而红帽 Ansible 自动化平台能够在几分钟内完成通常需要数小时甚至数天才能完成的任务。您可以通过埃默里大学和北卡罗来纳州蓝十字蓝盾公司的案例研究,了解 IT 自动化解决方案快的快速响应能力。这种自动化由于能够简化运维,在各种规模的 IT 运维中得到了广泛应用。
观察和响应:事件驱动自动化
那么,接下来还能做什么?通过事件驱动自动化,IT 团队可以进一步推动自动化应用。在上述用例中,在 Ansible Playbook 成功创建后,由 IT 人员手动启动 Playbook 的执行。对于大规模变更(比如计划为 100 台服务器安装补丁)而言,这是一个很好的模式。
在事件驱动模式中,自动化包含在 Ansible 规则中,采用 If-this-then-that 的格式。事件驱动自动化已就绪,等待事件触发,因此非常适合响应观察到的事件。例如,如果某个路由器没有响应,事件驱动自动化将创建工单并重启该路由器。Ansible 规则(见下文 Ansible Rulebook 所示)始终保持在就绪状态,等待被事件或条件触发,从而做出自动响应。
红帽的事件驱动自动化解决方案名为事件驱动的 Ansible,它通过 Ansible Rulebook 中包含的三种结构来实现运作:
来源:事件的生成器,例如在 Web 服务器宕机时做出识别并进行通信的第三方监控工具。事件驱动的 Ansible 使用来自第三方工具或自定义来源(使用来源插件)的事件。我们的 ISV(独立软件供应商)合作伙伴正在积极开发插件,以将其技术与事件驱动的 Ansible 相结合。您也可以开发自己的自定义事件来源插件。
规则:规则是尝试匹配事件条件的条件语句。满足某一条件后,即可执行某个已定义的操作。例如,可以设置规则在 Web 服务器发生宕机机时自动创建服务工单并重启 Web 服务器。Rulebook 和 Playbook 都是用 YAML 编写的,但 Rulebook 会特别指定事件来源,并采用 If-this-then-that 方法进行构建。请注意,可以在 Rulebook 中调用现有的 Ansible Playbook,作为满足条件时要执行的操作。或者,也可以通过模块直接描述操作。当事件传达到事件驱动的 Ansible 中的决策功能时,这些 Rulebook 已准备就绪。
操作:一旦与 Rulebook 中的某个条件匹配,就可以触发相应的操作。可以触发的一些操作包括:运行 Ansible Playbook、单个模块、自动化控制器中的模板,以及设置 facts 或创建其他事件。
图 1:事件驱动的 Ansible 如何利用来源、规则和操作来运行。
为什么要使用事件驱动自动化?
简而言之,事件驱动自动化可以在人手有限的情况下减轻员工的负担,并提供快速、自动且一致的响应。用例范围广泛,从简单的通知和事实收集,到修复或其他技术操作等。事件驱动的 Ansible 足够灵活,团队可以自行决定所需的响应级别。
事件驱动的 Ansible 具有用途广泛的 Rulebook 和灵活的整体架构,适合多种多样的用例,可以在企业的各个部门中使用,以减少日常的大批量被动响应任务。它具有 YAML 功能,因而是现有 Ansible 用户理想的进阶技术,能够充分发挥 Ansible 自动化平台的价值。它使得构建事件驱动解决方案变得更容易,无需依赖耗时且成本高昂的 IT 服务和项目,因而 IT 团队中的任何成员都能以符合自身需求的方式使用这项技术,减轻手动操作的负担。
图 2:使用事件驱动的 Ansible 实现跨 IT 运维自动化,从来源到规则再到操作都非常灵活,适合对各种用例进行自动化。
对于 IT 主管而言,这意味着可以大幅提高运维的响应速度和弹性。对于 IT 职员来说,这可以更好地平衡工作与生活,也减少了手动响应任务的需求,因此团队可以专注于重要的创新,并承担更具挑战性的工作。
查看关于 AnsibleFest 2022 的 IDC 快速报道(其中谈到了事件驱动的 Ansible),或自行开始探索。
关于作者
Cindy Russell is a Senior Principal Product Marketing Manager for Ansible Automation Platform.
产品
工具
试用购买与出售
沟通
关于红帽
我们是世界领先的企业开源解决方案供应商,提供包括 Linux、云、容器和 Kubernetes。我们致力于提供经过安全强化的解决方案,从核心数据中心到网络边缘,让企业能够更轻松地跨平台和环境运营。