Storage | Grafana Loki documentation

Storage | Grafana Loki documentation

Grafana is the open source analytics & monitoring solution for every database.

访问网站
我的收藏178 次访问更新于 a month ago反馈
Storage | Grafana Loki documentation screenshot

详细介绍

简介

Grafana Loki 是一个开源日志聚合系统,其存储设计不同于其他日志系统:Loki 仅对日志的元数据(标签,类似于 Prometheus 标签)建立索引,日志数据本身经过压缩后以 chunks 形式存储在对象存储(如 S3、GCS)或本地文件系统中。这种“小索引 + 高压缩 chunk”的架构简化了运维并显著降低了成本。

本页面为 Grafana Loki 官方文档中的 Storage(存储) 配置章节,介绍了 Loki 的存储架构演进、单存储(Single Store)模式、支持的块存储与索引存储后端,以及已弃用的多存储后端。

主要功能

存储架构演进

  • Loki 2.8+:引入 TSDB 作为 Single Store 的新模式,并成为推荐的数据持久化方式。
  • Loki 2.0:引入 boltdb-shipper(即 Single Store),仅需一个对象存储即可同时保存索引和 chunks。
  • Loki 2.0 之前:chunks 与索引数据分开存储(对象存储/文件系统 + NoSQL/KV 数据库),这类“multistore”后端现已弃用。

Single Store(单存储)

指使用对象存储同时保存 Loki 索引与数据(chunks),支持两种模式:

  • TSDB(推荐):从 Loki 2.8 开始提供,提升查询性能、降低总拥有成本(TCO),功能与 boltdb-shipper 对等。
  • BoltDB(已弃用):开发期间称 boltdb-shipper,是 v2.0.0–v2.7.x 的推荐索引存储;利用 chunk 存储同时存索引与 chunks,部署更便宜简单。

使用 Single Store 无需额外的 Chunk 存储与 Index 存储。

支持的存储后端

Chunk 存储

  • 文件系统:最简单,但无复制易丢数据,适合单机部署或本地开发。
  • 对象存储:
    • Google Cloud Storage (GCS):生产可用,适合 GCP 环境。
    • Amazon S3:生产可用,适合 AWS 环境。
    • Azure Blob Storage:生产可用,支持存储账户密钥或 Service Principal 认证。
    • IBM Cloud Object Storage (COS):生产可用。
    • Baidu Object Storage (BOS):百度云对象存储。
    • Alibaba OSS:阿里云对象存储。
    • 其他兼容 S3 API 的服务(如 MinIO)。
  • Cassandra(已弃用):可用于 chunk 存储,生产安全,但未来可能移除。

Index 存储(以下均己弃用)

  • Cassandra:可水平扩展、可配置复制,适合本地或已有 Cassandra 场景。
  • BigTable:Google 云数据库,适合 GCP 或已有用户。
  • DynamoDB:AWS 云数据库,需注意 provisioned capacity 导致的限流。
  • BoltDB:嵌入式磁盘数据库,无复制,不适用于高可用集群。

适用场景

  • 云上托管环境:在 AWS、GCP、Azure、IBM Cloud、百度云、阿里云等平台运行时,直接使用对应的生产级对象存储作为 Single Store 后端。
  • 本地或开发测试:使用文件系统 + BoltDB 快速体验 Loki,或进行概念验证与本地开发。
  • 低成本日志方案:通过 Single Store 减少组件数量,降低运维复杂度和费用。
  • 自建兼容 S3 存储:通过 MinIO 等实现私有化对象存储支撑 Loki。

更多存储选项细节可查阅 Loki 文档的“manage(管理)”章节。