Vitrage
什么是 Vitrage?
Vitrage 是 OpenStack 的 RCA(根本原因分析)服务,用于组织、分析和扩展 OpenStack 告警和事件,从而洞察问题的根本原因,并在问题直接被检测到之前推断其存在。
高级功能
- 物理实体到虚拟实体的映射
- 推导出的告警和状态(即,基于对系统的分析来触发告警或修改状态,而不是直接监控)
- 告警/事件的根本原因分析 (RCA)
- Horizon 插件,用于上述功能
高级架构
Vitrage 数据源。 负责从不同的来源导入有关系统状态的信息。这包括有关物理和虚拟资源、告警等的信息。然后将这些信息处理到 Vitrage 图中。目前 Vitrage 已经准备好了 Nova、Cinder 和 Aodh OpenStack 项目、Nagios 告警以及静态物理资源数据源的数据源。
Vitrage 图。 存储由数据源收集的信息以及它们之间的关系。此外,它实现了一系列基本的图算法,这些算法由 Vitrage 评估器使用(例如,子匹配、BFS、DFS 等)。
Vitrage 评估器。 协调对 Vitrage 图(更改)的分析,并处理此分析的结果。它负责在 Vitrage 中执行不同类型的基于模板的操作,例如添加告警之间的 RCA(根本原因分析)关系、触发推导出的告警或设置推导出的状态。
有关更多信息,请参阅 低级别设计
用例
基准
我们考虑以下示例,其中我们正在监控一个交换机(ID 1002),例如通过 Nagios,并且交换机上的问题导致 Nagios 告警(又名 Nagios 测试)被激活。下图描绘了与此交换机相关的系统中不同资源的逻辑关系,以及触发的告警。请注意虚拟实体(实例)和物理实体(主机、交换机)之间的映射,以及告警与其相关交换机之间的映射。
推导出的告警和状态
交换机上的问题有时会对连接到交换机的虚拟实例产生负面影响。我们希望在这些实例上触发告警,以指示这种影响,如下所示
如您所见,交换机上的问题应触发与交换机相关联的所有实例上的告警。 同样,我们可能希望将所有这些实例的状态更改为“ERROR”。 即使我们无法直接监控实例的状态,也应支持此功能。 实例可能不会针对所有方面的性能进行监控,或者交换机中的问题使得监控它们变得困难甚至不可能。 相反,我们可以推断 该问题存在于实例上,基于交换机状态,并相应地触发告警和更改状态。
根本原因指示器
此外,我们希望能够跟踪这种因果关系——交换机中的问题导致实例中遇到的问题。 在下图中,我们突出显示单个因果关系以提高清晰度——但应支持所有此类链接。
重要提示:并非所有推导出的告警都由 触发器引起——触发器可能只是相关性的指示,而不是因果关系。 但是,在我们要检查的情况下,触发器告警也是原因
一旦检测并注册了本地“原因”链接(单跳),我们就可以沿着这些链接一跳接一跳地跟踪事件序列的完整因果链。
演示和演讲
快速演示(有点过时)
峰会会议
OpenStack Austin,2016 年 4 月
OPNFV Berlin,2016 年 6 月
- 利用 Vitrage 和 Congress 在 Doctor 中进行故障检查
- Doctor:OpenStack 中的快速动态故障管理(DOCOMO、NTT、NEC、Nokia、Intel)- Telecom TV
OpenStack Barcelona,2016 年 10 月
- OpenStack 主题演讲与 Doctor 一起使用 - 保持您的手机通话连接
- OpenStack 及其他领域的根本原因分析原理与实践
- 基于 OPNFV Doctor 框架的 OpenStack Congress 和 Vitrage 的故障管理
OpenStack Boston,2017 年 5 月
- 超越自动化 - 将 Vitrage 带入机器学习领域
- Collectd 和 Vitrage 集成 - 一次事件性演示
- Vitrage 故事 - 从无到大帐篷
- 根本原因分析的高级用例
- 项目更新 Vitrage
OpenStack Sydney,2017 年 11 月
OpenStack Vancouver,2018 年 5 月
- 闭环:VNF 端到端故障检测和自动修复
- 扩展 Horizon 标头以方便监控和故障检测 - 以及更多
- Vitrage - 项目更新
- 使用 Vitrage、Kubernetes、Zabbix 和 Prometheus 进行主动根本原因分析
开发(蓝图、路线图、设计...)
- Vitrage 文档
- Vitrage 在 StoryBoard 中
- 路线图
- 源代码
设计讨论
- 支持重叠模板
- Barcelona 设计峰会
- Pike PTG
- Queens PTG
- Vancouver 论坛:Vitrage 高级用例
- Vancouver 论坛:Vitrage 在 Kubernetes 上的 RCA
沟通和会议
Meetings
- 每周三 UTC 时间 0800 在 freenode 的 #openstack-meeting-4 中
- 请查看 Vitrage 会议 以获取更多详细信息
联系我们
- IRC 频道用于日常讨论:#openstack-vitrage
- 在 OpenStack 邮件列表 上使用 [Vitrage] 标签发送 Vitrage 电子邮件
