参考文献https://blog.csdn.net/weixin_52270081/article/details/124801308
介绍
日志监控告警系统,较为主流的是ELK(Elasticsearch 、 Logstash和Kibana核心套件构成),虽然优点是功能丰富,允许复杂的操作。但是,这些方案往往规模复杂,资源占用高,操作苦难。很多功能往往用不上,大多数查询只关注一定时间范围和一些简单的参数(如host、service等),使用这些解决方案就有点杀鸡用牛刀的感觉了。
所以寻找更轻量级的日志监控系统,所以也就有了EFK(elasticsearch+kibana+filebeat),
搭建参考:EFK轻量级日志系统搭建
另外一种是Promtail + Loki + Grafana核心组件构成,简称PLG,这种是更轻量级的,配置要求也不高,功能简单,但是目的明确,就是日志采集。
Loki的架构也非常简单,使用了和prometheus一样的标签来作为索引,Loki 是受Prometheus启发的水平可扩展、高可用、多租户日志聚合系统。
组件:
promtail: 日志收集的代理,安装部署在需要收集和分析日志的服务器,promtail会将日志发给Loki服务。
Loki: 主服务器,负责存储日志和处理查询。
Grafana:提供web管理界面,数据展示功能。
docker-compose基础文件
version: "3"
networks:
loki:
services:
loki:
image: grafana/loki:2.5.0
ports:
- "3100:3100"
command: -config.file=/etc/loki/local-config.yaml
networks:
- loki
promtail:
image: grafana/promtail:2.5.0
volumes:
- /var/log:/var/log
command: -config.file=/etc/promtail/config.yml
networks:
- loki
grafana:
image: grafana/grafana:latest
ports:
- "3000:3000"
networks:
- loki
执行:docker-compose up --build
目的是尝试运行,确保能够正常拉取镜像,并通过运行好的容器,获取相关的配置文件
通过 :
docker cp eb5c3c8c3f5b:/var/lib/grafana/grafana.db /home/Promtail_Loki_Grafana/
docker cp 容器ID:/容器内路径/** /宿主机路径/**
复制容器内文件到宿主机中自定义的目录中(参考以下配置)
docker-compose正式文件
version: "3"
net

本文介绍了轻量级日志监控系统的两种选择:EFK(Elasticsearch、Logstash、Kibana)和PLG(Promtail、Loki、Grafana)。相较于EFK的复杂性,PLG更加轻量且易于配置。Loki受到Prometheus启发,用于日志聚合,Promtail负责日志收集,Grafana提供可视化界面。通过示例展示了如何使用docker-compose搭建PLG系统,包括各组件配置及客户端Promtail的配置和启动。此外,还提到了日志查询表达式和过滤器的使用,以及遇到日志量过大导致的429错误及其解决办法。

5394

被折叠的 条评论
为什么被折叠?



