我是否可以在GCS上设置一个存储,并对其进行多个Loki读/写本地实例[预处理系统的中央Loki存储]



我是Loki的新手,我们正在尝试为在不同服务器上运行的多个Loki/Grafana实例设置共享存储。

主查询:我查看了boltdb发货人,它充当了块/索引的共享存储,可以运送到"GCS bucket",我想知道:

是否可以将日志从Loki的不同预处理实例运送到同一个"GCS"存储,然后在谷歌云上设置一个Loki/Grafana实例,该实例可以从该中央存储中消费,为我们提供所有服务器日志的整体视图。

细分:假设我们有一个名为">共享bucket xyz"的GCS bucket为了简单起见,我使用术语日志而不是块/索引,因为获得集中式日志是的最终目标

  1. 我们可以将日志从本地设置推送到远程共享bucket xyz吗?因为我在提供的配置选项中看不到任何身份验证机制。

  2. 我们可以将日志从2个或多个本地服务器推送到同一个存储桶共享存储桶xyz吗?

  3. 云部署的Loki/Grafana堆栈是否能够使用共享bucket xyz中的日志?

Grafana提供的配置示例:


schema_config:
configs:
- from: 2018-04-15
store: boltdb-shipper
object_store: gcs
schema: v11
index:
prefix: loki_index_
period: 24h
storage_config:
gcs:
bucket_name: GCS_BUCKET_NAME
boltdb_shipper:
active_index_directory: /loki/index
shared_store: gcs
cache_location: /loki/boltdb-cache

所以我在Grafana社区发布了同样的问题,并在那里得到了答案。我将在这里与其他人分享:

是否可以从Loki到同一个"GCS"存储,然后在上设置一个Loki/Grafana实例谷歌云可以从这个中央商店消费,为我们提供所有服务器日志的整体视图。

使用代理(promtail(将日志从所有远程集群发送到此单个远程loki实例。这是推荐的方法,也是我们自己管理Loki的方式。

我们可以将日志从本地设置推送到远程共享bucket xyz吗?原因我在提供的配置中看不到任何身份验证机制选项。

是的,身份验证是通过我们使用的GCS SDK进行的,该SDK通常使用环境变量进行。

为此,在";docker run";命令,将googleauth文件保存为json格式。在他们的官方页面上了解更多关于谷歌认证的信息

我们可以将日志从2个或多个本地服务器推送到同一个存储桶吗共享bucket xyz?

是的,但是最好只运行一个表管理器和一个压缩程序,运行多个不会有任何影响,但不是最佳的。然而,目前这很难用单个二进制文件来实现(默认情况下,它将同时运行表管理器和压缩程序(。我们一直在讨论添加配置来更好地处理这一问题,但这项工作尚未完成。

云部署的loki/grafana堆栈是否能够使用日志来自共享桶xyz?

是的,但请注意,在这个远程实例中可见的内容会有一些延迟,因为Loki将日志数据保存在内存中,以便在刷新它们之前构建足够的块。远程站点的Loki配置将决定这一点,默认情况下可能长达一个小时,但在块被刷新并在中心位置可见之前。可以更改这些时间,但不建议更改,因为强制使用较小的块会影响查询性能。这就是为什么我们通常推荐我建议的第一种方法,即集中Loki并从任何地方向其发送日志。

最新更新