注意:原创文章,转载请注明来源:http://laowubiji.com/index.php/2023/02/03/loki_write_read1/
之前笔者部署的模式是单个Loki write +单个 loki querier,结构如下图所示。这种模式下,数据接收没有问题,但是数据查询会明显很慢,尤其对于大规模数据量会显得尤为明显。
笔者近期经过多方查找资料,重新部署了单个Loki write + 单个Loki read的模式。该模式参考了Loki官方文档中的如下架构:
本文中采用最简单的方式,一个write+一个read,简单架构如下图所示:
需要注意:loki read模式下,配置文件中必须有ruler相关配置,否则会报错。
另外就是需要指定
frontend_worker: match_max_concurrent: true grpc_client_config: max_send_msg_size: 900000000000
否则可能会因为message过大而报错。
此模式下的查询效率比 单Loki write+单loki querier显著提升,快了大约十几倍,而且时间跨度可以支持到2天左右(这个与日志的数据规模有关)。后续还有继续提升的空间。