Gnocchi Charm

在 OpenStack 云中存储指标是一个大数据问题。

Ceilometer 自启动以来一直使用 MongoDB 来存储度量数据;然而,这并未证明其可扩展性,遥测项目已转变为默认使用 Gnocchi(遥测项目的衍生产品)来存储度量数据。

我们需要为 Gnocchi 编写 charm,以便 OpenStack 操作员能够将遥测服务作为 OpenStack 云的一部分进行部署和使用。

问题描述

Gnocchi 是一种多租户时序、指标和资源数据库。它提供了一个 HTTP REST 接口来创建和操作数据。它被设计为以非常大的规模存储指标,同时提供对指标和资源信息以及历史数据的访问。

提议的变更

新的 Gnocchi charm 至少应包含以下功能

  • 可以部署为高可用性配置

  • 允许客户端和服务使用 SSL 加密进行交互

  • 通过工作负载状态显示 charm 进度

该 charm 将使用默认存储选项

  • 存储驱动程序:Ceph(首选)

  • 索引驱动程序:MySQL(非首选,但 OpenStack 其余部分的默认设置)

  • 协调:Memcache(zookeeper 和 redis 是替代选项)

协调驱动程序的选择仅限于 memcache、zookeeper 或 redis,因为这些驱动程序支持 Gnocchi 所需的功能。

Gnocchi charm 将支持 OpenStack Mitaka 及更高版本,在 Ubuntu 16.04 上运行。

Horizon 在 Ocata 期间删除了 Ceilometer 的图形报告;遥测堆栈将使用 Grafana Charm + Gnocchi 插件来对 Gnocchi 指标进行图形报告。

备选方案

无。

实现

负责人

主要负责人

jamespage

Gerrit Topic

对于与此规范相关的所有补丁,请使用 Gerrit 主题“gnocchi-charm”。

git-review -t gnocchi-charm

工作项

Reactive 接口

  • interface: gnocchi

提供 Gnocchi charm

  • 基于 OpenStack 基本层和可用接口层创建 Gnocchi 部署的 charm 骨架。

  • 添加对升级 Gnocchi 的支持

  • 添加配置选项和配套的通过 action-managed-upgrade 进行升级的支持。

  • 添加对以高可用性配置部署 Gnocchi 的支持

  • 添加对 Gnocchi 显示工作负载状态的支持

  • 添加对 SSL 端点的支持

  • Charm 应该具有单元测试和功能测试。

更新 Ceilometer 和 Aodh charms

  • 支持使用 Gnocchi 进行部署

Mojo 规范部署和测试 Gnocchi

  • 更新 HA Mojo 规范,以高可用性配置部署 Gnocchi。

更新遥测 bundle

  • 更新遥测 bundle 以部署 Gnocchi 和 Grafana。

仓库

需要一个新的 git 仓库来存放 Gnocchi charm

https://git.openstack.org/openstack/charm-gnocchi

文档

Gnocchi charm 应包含一个 README,其中包含有关部署 charm 的说明。一篇博文是可选的,但会是一个有用的补充。

安全性

没有额外的安全问题。

测试

代码更改将由单元测试覆盖;功能测试将使用 Amulet、Bundle tester 和 Mojo 规范的组合进行。

依赖项

  • 除了此规范之外,没有其他依赖项。