一种基于iTop实现服务树的方法

如何建设CMDB 一文中提到,CMDB 如果不是单纯管资产,想要用在更多的运维场景上(比如 成本核算,报警接收人查询),那么就一定要以业务为中心,即建立 资源 -> 业务 -> 人员 这样的关系,避免 人员 和 资源直接关联,这样能够减少关系的维护成本(比如容易交接业务,只需变更业务负责人,通过关联就能找到对应资源)。

业务管理的优先级高于资源 CI,应首先实现。

实现方案

基于 iTop 现有模型,或许可以用 Organization, BusinessProcess, ApplicationSolution 来实现一个三级的业务树:

需要对 ApplicationSolution 做一点改造,将 BusinessProcess 和 ApplicationSolution 的 N:N 关系改为 1:N 关系,即 App 归属于固定的 BusinessProcess。

业务树展示

接下来要实现一个树形展示页面,方便查看并梳理业务结构。选择基于 jstree 来做。新建 ajax.render.php 提供 jstree 需要的 json 格式。jstree 的 json 结构如下面代码所示。

核心代码:

然后新建 ui.php,用来展示业务树,代码比较简单:

业务树效果

效果如图。用 iTop 已经包含的 qtip 库,实现了鼠标移动展示更多信息的功能。

iTop 实现业务树

参考资料

One thought on “一种基于iTop实现服务树的方法

  1. 关于 ApplicationSolution 和 BusinessProcess 的讨论,可能此文的修改并不合适。

    【吐槽】*** 2021/6/23 10:30:53
    请教一下,itop中的应用方案和业务流程这两个CI的实际应用场景,大佬帮忙解惑一二
    我的理解(感觉理解的不对):
    1、应用方案,比如考勤系统、人事系统等具体的应用,包含了服务器(虚机或物理)、操作系统、中间件、数据库等
    2、业务流程,是应用方案的合集,比如综合办公系统,生产业务系统这一类
    【群主】广州-*** 2021/6/23 10:36:48
    应用方案是由几个子系统组合起来的业务系统
    【群主】广州-*** 2021/6/23 10:37:17
    业务流程,是由一个或多个业务系统支撑的业务处理流程。这里实现了IT支持业务的概念。
    【群主】广州-*** 2021/6/23 10:37:41
    支持了业务流程,才实现了IT的价值
    【活跃】版主-北京-*** 2021/6/23 10:37:48
    子系统是不是没有对应模型
    【活跃】版主-北京-*** 2021/6/23 10:38:33
    如果要搞一个类似服务树的概念,怎么做比较好?
    【群主】广州-*** 2021/6/23 10:38:38
    DB实例、中间件实例、APP应用实例,都是子系统呀
    【群主】广州-*** 2021/6/23 10:38:44
    各种各样的

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注