2.4. 规划和管理归档策略


归档策略定义了如何聚合指标以及如何将指标存储在时间序列数据库中。归档策略定义为一段时间内的点数。

如果您的归档策略定义了粒度为 1 秒的 10 点的策略,则时间序列存档最多保留 10 秒,每个归档代表 1 秒的聚合。这意味着时间序列保留最大 10 秒的数据以及更早的点之间的数据。归档策略也定义要使用的聚合方法。默认设置为参数 default_aggregation_methods,其中默认值被设置为 mean, min, max总和,std,计数.因此,根据用例,归档策略和粒度可能会有所不同。

要规划归档策略,请确保您熟悉以下概念:

要创建和管理归档策略,请完成以下任务:

  1. 创建归档策略。更多信息请参阅 第 2.4.6 节 “创建归档策略”
  2. 管理归档策略。更多信息请参阅 第 2.4.7 节 “管理归档策略”
  3. 创建归档策略规则。更多信息请参阅 第 2.4.8 节 “创建归档策略规则”

2.4.1. 指标

Gnocchi 提供名为 metric 的对象类型。指标是您可以测量的任何对象,例如,服务器的 CPU 使用量、房间温度或网络接口发送的字节数。指标具有以下属性:

  • 用于标识它的 UUID
  • 名称
  • 用于存储和聚合测量结果的归档策略

其他资源

2.4.1.1. 创建指标

流程

  1. 创建资源。将 <resource_name> 替换为资源的名称:

    $ openstack metric resource create <resource_name>
  2. 创建指标。将 <resource_name> 替换为资源名称,<metric_name> 替换为指标的名称:

    $ openstack metric metric create -r <resource_name> <metric_name>

    在创建指标时,归档策略属性是固定的且不可更改的。您可以通过 archive_policy 端点更改归档策略的定义。

2.4.2. 创建自定义测量结果

测量是 API 发送到 Gnocchi 的传入数据点元组。它由一个时间戳和一个值组成。您可以创建自己的自定义测量结果。

流程

  • 创建自定义测量:

    $ openstack metric measures add -m <MEASURE1> -m <MEASURE2> .. -r <RESOURCE_NAME> <METRIC_NAME>

2.4.3. 默认归档策略

默认情况下,Gnocchi 有以下归档策略:

    • 30 天内 5 分钟粒度
    • 使用的聚合方法: default_aggregation_methods
    • 每个指标的最大估计大小:406 KiB
    • 7 天的 1 分钟粒度
    • 365 天 1 小时粒度
    • 使用的聚合方法: default_aggregation_methods
    • 每个指标的最大估算大小: 887 KiB
  • high

    • 1 小时内的 1 秒粒度
    • 1 周的 1 分钟粒度
    • 1 年内的 1 小时粒度
    • 使用的聚合方法: default_aggregation_methods
    • 每个指标的最大估计大小:1 057 KiB
  • bool

    • 1 年内的 1 秒粒度
    • 使用的聚合方法:last
    • 每个指标的最大最佳大小: 1 539 KiB
    • 每个指标的最大 pessimistic size: 277 172 KiB

2.4.4. 计算时间序列聚合的大小

Gnocchi 存储一个数据点集合,每个点都是聚合。存储格式使用不同的技术进行压缩。因此,根据最糟糕的情况计算时间序列的大小,如下例所示。

流程

  1. 使用此公式计算点数:

    point = timespan / granularity

    例如,如果要使用一分钟分辨率保持一年的数据:

    点数 = (365 天 X 24 小时 X 60 分钟)/1 分钟

    点数 = 525600

  2. 要计算点大小(以字节为单位),请使用以下公式:

    size (以字节为单位) = 点 X 8 字节的数量

    size in bytes = 525600 points X 8 bytes = 4204800 bytes = 4.1 MB

    这个值是单个聚合时间序列估计的存储要求。如果您的归档策略使用多个聚合方法 - min, max, mean, sum, std, count - 根据您使用的聚合方法数量乘以这个值。

2.4.5. 指标 worker

您可以使用 metricd 守护进程来处理测量、创建聚合、存储测量结果在聚合存储和删除指标中。指标守护进程负责 Gnocchi 中大多数 CPU 使用量和 I/O 作业。每个指标的归档策略决定了指标守护进程执行的速度。metricd 定期检查传入存储是否有新测量结果。要配置每个检查之间的延迟,您可以使用 [metricd]metric_processing_delay 配置选项

2.4.6. 创建归档策略

流程

  • 创建归档策略。将 <archive-policy-name> 替换为策略的名称,将 <aggregation-method> 替换为聚合方法。

    # openstack metric archive policy create <archive-policy-name> --definition <definition> \
    --aggregation-method <aggregation-method>
    注意

    <definition> 是策略定义。使用逗号(,)分隔多个属性。使用冒号(:)分隔归档策略定义的 name 和值。

2.4.7. 管理归档策略

  • 删除归档策略:

    openstack metric archive policy delete <archive-policy-name>
  • 查看所有归档策略:

    # openstack metric archive policy list
  • 查看归档策略的详情:

    # openstack metric archive-policy show <archive-policy-name>

2.4.8. 创建归档策略规则

归档策略规则定义了指标和归档策略之间的映射。这样,用户可以预定义规则,以便基于匹配模式将归档策略分配给指标。

流程

  • 创建归档策略规则。将 <rule-name> 替换为规则的名称,<archive-policy-name> 替换为归档策略的名称:

    # openstack metric archive-policy-rule create <rule-name> /
    --archive-policy-name  <archive-policy-name>
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.