Loki 保留期 s3 + dynamo

Posted

技术标签:

【中文标题】Loki 保留期 s3 + dynamo【英文标题】:Loki retention period s3 + dynamo 【发布时间】:2021-07-08 10:49:34 【问题描述】:

我对 grafana-loki 中的保留机制有疑问 我需要存储一年的日志并能够查询它们 使用官方 Loki 图表在 k8s 中进行设置

下面是我的配置

  auth_enabled: false
  ingester:
    chunk_idle_period: 5m
    chunk_block_size: 262144
    chunk_retain_period: 1m
    # max_transfer_retries: 0
    lifecycler:
      ring:
        kvstore:
          store: inmemory
        replication_factor: 1
  limits_config:
    enforce_metric_name: false
    reject_old_samples: true
    reject_old_samples_max_age: 168h
  schema_config:
    configs:
      - from: 2020-05-15
        store: aws
        object_store: s3
        schema: v11
        index:
          prefix: loki_index_prod_
          period: 8760h
          tags:
            env: prod-loki
  server:
    http_listen_port: 3100
  storage_config:
    aws:
      s3: s3://us-east-1/loki-prod-t
      s3forcepathstyle: true
      dynamodb:
        dynamodb_url: dynamodb://us-east-1
  table_manager:
    index_tables_provisioning:
      inactive_read_throughput: 5
      inactive_write_throughput: 5
      provisioned_write_throughput: 10
      provisioned_read_throughput: 10
    chunk_tables_provisioning:
      inactive_read_throughput: 5
      inactive_write_throughput: 5
      provisioned_write_throughput: 10
      provisioned_read_throughput: 10
    retention_deletes_enabled: true
    retention_period: 8760h
    creation_grace_period: 24h

现在保留设置为一年,但是当保留期结束时,dynamodb 中的新表将被创建,旧表将立即删除?

在这种情况下,我会丢失上一年的所有日志并从头开始?

另外一个方面是s3中chunk的保留如何处理?

请指教...

【问题讨论】:

【参考方案1】:

不,您不会丢失上一年的所有日志并从头开始。表管理器使用以下公式保持最后一个表处于活动状态:

number_of_tables_to_keep = floor(retention_period / table_period) + 1

在你的情况下:

number_of_tables_to_keep = 8760 / 8760 + 1 = 2

请参阅 Loki 文档 here。

【讨论】:

s3 块有什么用? 它们是在 Amazon S3 服务 (en.wikipedia.org/wiki/Amazon_S3) 上创建的 Loki 块 (grafana.com/docs/loki/latest/operations/storage)。 是的,我知道什么是块以及它们在 Loki 中的作用,但没有任何关于保留块的文档 抱歉,我读的是“what is”而不是“what with”。我认为它的工作方式相同,但我不确定。

以上是关于Loki 保留期 s3 + dynamo的主要内容,如果未能解决你的问题,请参考以下文章

s3 和发电机配置不适用于 Loki

评测Loki日志工具

Kubernetes日志系统新贵Loki-Stack

图解下一代轻量级日志系统 Grafana Loki 工作架构

为啥来自 s3 的 dask read_csv 保留了这么多内存?

将数据从 s3 导入 Redshift 时保留源文件名