DevOps CMDB平台整合Jira工单

背景

在DevOps CMDB平台建设的过程中,我们可以很容易的将业务应用所涉及的云资源(WAF、K8S、虚拟机等)、CICD工具链(Jenkins、ArgoCD)、监控、日志等一次性的维护到CMDB平台,但随着时间的推移,我们却很难及时适应业务应用资源的变化,从而及时有效的更新DevOps CMDB资源。比如某SRE工程师处理完下线某K8S应用的Jira工单后,CMDB平台工程师无法及时知道K8S资源的变化及相关信息,也就无法及时的维护CMDB相关应用。

解决方案

针对上述痛点以及基于Jira工单的DevOps运维背景下,我们可以采用CMDB整合Jira工单的方案来解决CMDB信息维护的问题。具体内容如下:

目标

实现Jira工单处理事件自动同步到CMDB平台及通过邮件、企微消息等通知到CMDB维护人员。

步骤

1 集成Jira和CMDB平台

使用Jira的WebHooks或Jira REST API来监听特定的工单事件(如状态变更、特定字段更新等)。

确保CMDB平台支持API调用或可以通过某种方式接受外部系统的请求。

2 创建Jira WebHook

2.1 登录Jira管理界面

首先,以管理员身份登录到Jira管理界面。

2.2. 导航到WebHook配置页面

点击右上角的齿轮图标,选择 "系统"。

在系统页面左侧的菜单中,找到并点击 "高级" 部分下的 "WebHooks"。

2.3. 创建新的WebHook

在WebHooks页面,点击 "创建WebHook" 按钮。

填写WebHook的基本信息:

名称: 为WebHook指定一个名称,便于识别。

描述: (可选)填写描述信息。

URL: 输入接收WebHook请求的目标URL。

选择事件: 选择触发WebHook的事件类型,可以是某个特定事件(如问题创建、更新、删除等)或多个事件。

例如,选择"Issue Updated"事件来触发WebHook。

配置过滤器(可选):

你可以添加JQL(Jira Query Language)过滤器,以便仅在特定问题匹配条件时触发WebHook。

例如,添加 project = "MYPROJECT" AND status = "Confirmed" 以便仅当特定项目中的问题状态变为"Confirmed"时触发WebHook。

点击 "创建" 按钮,保存WebHook。

示例

以下是一个配置示例,用于在问题更新时触发WebHook,且仅在状态变为"Confirmed"时触发

2.4 接收WebHook的服务

创建WebHook后,确保接收WebHook请求的服务能够处理Jira发送的HTTP请求。以下是一个简单的Flask示例,展示如何接收和处理Jira WebHook请求

2.5 CMDB服务如何处理Jira工单事件

这里可以区分为自动处理、手动处理。

自动处理:操作简单且不需要Jira工单详细信息的事件可以让CMDB平台自动化处理,比如停止应用。

手动处理:操作复杂且需要Jira工单详情的事件,可以在CMDB收到事件后进一步处理,提取工单内容,并以邮件的方式提醒CMDB维护人员,可以设置周期性提醒直到CMDB维护人员处理完CMDB变更后关闭该提醒。

通过上述步骤和代码示例,你可以创建一个接收Jira事件并处理CMDB更新的完整流程,确保CMDB数据的实时性和准确性,同时通知相关团队成员了解更新情况。

相关推荐
阳小江13 分钟前
Docker知识点
运维·docker·容器
只是橘色仍温柔1 小时前
xshell可以ssh连接,但vscode不行
运维·vscode·ssh
IT里的交易员1 小时前
【系统】换硬盘不换系统,使用WIN PE Ghost镜像给电脑无损扩容换硬盘
运维·电脑
共享家95272 小时前
深入剖析Linux常用命令,助力高效操作
linux·运维·服务器
大刘讲IT2 小时前
制造业数字化转型:流程改造先行还是系统固化数据?基于以MTO和MTS的投资回报分析
运维·经验分享·生活·产品经理·数据可视化
吃旺旺雪饼的小男孩2 小时前
Ubuntu 22.04 安装和运行 EDK2 超详细教程
linux·运维·ubuntu
阿政一号2 小时前
Linux进程间通信:【目的】【管道】【匿名管道】【命名管道】【System V 共享内存】
linux·运维·服务器·进程间通信
方渐鸿3 小时前
【2025】快速部署安装docker以及项目搭建所需要的基础环境(mysql、redis、nginx、nacos)
java·运维·docker·持续部署·dockercompse
小哈里3 小时前
【运维】云计算的发展历程,云原生时代的运维理念&工具技术栈,高可用系统的云运维 —— 以K8S集群调度算法与命令为例
运维·云原生·kubernetes·云计算·架构设计
A charmer3 小时前
【Linux】文件系统知识梳理:从磁盘硬件到文件管理
linux·运维·服务器