跳转到: 导航, 搜索

Vitrage


OpenStack Project Vitrage horizontal.png

什么是 Vitrage?

Vitrage 是 OpenStack 的 RCA(根本原因分析)服务,用于组织、分析和扩展 OpenStack 告警和事件,从而洞察问题的根本原因,并在问题直接被检测到之前推断其存在。

高级功能

  1. 物理实体到虚拟实体的映射
  2. 推导出的告警和状态(即,基于对系统的分析来触发告警或修改状态,而不是直接监控)
  3. 告警/事件的根本原因分析 (RCA)
  4. Horizon 插件,用于上述功能




高级架构

Vitrage High Level Architecture


Vitrage 数据源。 负责从不同的来源导入有关系统状态的信息。这包括有关物理和虚拟资源、告警等的信息。然后将这些信息处理到 Vitrage 图中。目前 Vitrage 已经准备好了 Nova、Cinder 和 Aodh OpenStack 项目、Nagios 告警以及静态物理资源数据源的数据源。

Vitrage 图。 存储由数据源收集的信息以及它们之间的关系。此外,它实现了一系列基本的图算法,这些算法由 Vitrage 评估器使用(例如,子匹配、BFS、DFS 等)。

Vitrage 评估器。 协调对 Vitrage 图(更改)的分析,并处理此分析的结果。它负责在 Vitrage 中执行不同类型的基于模板的操作,例如添加告警之间的 RCA(根本原因分析)关系、触发推导出的告警或设置推导出的状态。

有关更多信息,请参阅 低级别设计

用例

基准

Baseline

我们考虑以下示例,其中我们正在监控一个交换机(ID 1002),例如通过 Nagios,并且交换机上的问题导致 Nagios 告警(又名 Nagios 测试)被激活。下图描绘了与此交换机相关的系统中不同资源的逻辑关系,以及触发的告警。请注意虚拟实体(实例)和物理实体(主机、交换机)之间的映射,以及告警与其相关交换机之间的映射。









推导出的告警和状态

Deduced Alarm

交换机上的问题有时会对连接到交换机的虚拟实例产生负面影响。我们希望在这些实例上触发告警,以指示这种影响,如下所示

如您所见,交换机上的问题应触发与交换机相关联的所有实例上的告警。 同样,我们可能希望将所有这些实例的状态更改为“ERROR”。 即使我们无法直接监控实例的状态,也应支持此功能。 实例可能不会针对所有方面的性能进行监控,或者交换机中的问题使得监控它们变得困难甚至不可能。 相反,我们可以推断 该问题存在于实例上,基于交换机状态,并相应地触发告警和更改状态。








根本原因指示器

Root Cause Link

此外,我们希望能够跟踪这种因果关系——交换机中的问题导致实例中遇到的问题。 在下图中,我们突出显示单个因果关系以提高清晰度——但应支持所有此类链接。

重要提示:并非所有推导出的告警都 触发器引起——触发器可能只是相关性的指示,而不是因果关系。 但是,在我们要检查的情况下,触发器告警也是原因

一旦检测并注册了本地“原因”链接(单跳),我们就可以沿着这些链接一跳接一跳地跟踪事件序列的完整因果链。







演示和演讲

快速演示(有点过时)

峰会会议

OpenStack Austin,2016 年 4 月

OPNFV Berlin,2016 年 6 月

OpenStack Barcelona,2016 年 10 月

OpenStack Boston,2017 年 5 月

OpenStack Sydney,2017 年 11 月

OpenStack Vancouver,2018 年 5 月


开发(蓝图、路线图、设计...)

设计讨论


沟通和会议

Meetings

  • 每周三 UTC 时间 0800 在 freenode 的 #openstack-meeting-4 中
  • 请查看 Vitrage 会议 以获取更多详细信息

联系我们

  • IRC 频道用于日常讨论:#openstack-vitrage
  • OpenStack 邮件列表 上使用 [Vitrage] 标签发送 Vitrage 电子邮件