5分钟快速体验下一代轻量级日志分析系统 Loki

2023年 12月 22日 65.9k 0

Grafana Loki 是什么

Loki是由Grafana Labs开源的一个水平可扩展、高可用性,多租户的日志聚合系统的日志聚合系统。它的设计初衷是为了解决在大规模分布式系统中,处理海量日志的问题。Loki采用了分布式的架构,并且与Prometheus、Grafana密切集成,可以快速地处理大规模的日志数据。该项目受 Prometheus 启发,官网地址:grafana.com/oss/loki/

  • Promtail是代理,负责收集日志并将其发送给 Loki 。
  • Loki 是主服务器,负责存储日志和处理查询。
  • Grafana则 用于 UI 展示。

为什么使用 Grafana Loki?

  • 入门非常简单:可以使用各种客户端从任何来源发送任何格式的日志
  • 没有采集日志格式要求:提供了更大的灵活性以及在查询时格式化的选项
  • 轻量级:相比ELK,Loki更加轻量级,因为它不需要一个单独的Elasticsearch集群来存储和索引日志数据。
  • 高度可扩展性:Loki可以通过添加更多的Loki实例来实现水平扩展,这使得它更容易处理大量的日志数据。
  • 与 Prometheus、Grafana 和 K8s 原生集成:可以在单个用户界面中无缝切换查询指标、日志等数据
  • 根据日志生成告警:可以从日志行构建指标并生成告警
  • 环境部署

    1.创建文件夹

    mkdir evaluate-loki
    cd evaluate-loki
    

    2.下载安装文件

    wget https://raw.githubusercontent.com/grafana/loki/main/examples/getting-started/loki-config.yaml -O loki-config.yaml
    wget https://raw.githubusercontent.com/grafana/loki/main/examples/getting-started/promtail-local-config.yaml -O promtail-local-config.yaml
    wget https://raw.githubusercontent.com/grafana/loki/main/examples/getting-started/docker-compose.yaml -O docker-compose.yaml
    

    3.在evaluate-loki目录,使用docker-compose启动服务

    docker-compose up -d
    

    可以看到相关组件已启动

    4.访问http://localhost:3101/ready进行验证,如果返回ready 则成功

    使用 Grafana 进行查询验证

    访问http://localhost:3000 访问 Grafana来查询和观察 Loki 集群的日志数据,Grafana 已经默认把 Loki 配置为数据源。

    访问expore,输入以下指令,查询容器evaluate-loki-flog-1的日期数据,这里用的语法是LogQL语法

    {container="evaluate-loki-flog-1"}
    

    查询所有Get 请求日志数据

    {container="evaluate-loki-flog-1"} |= "GET"
    

    查询接口/engage/content/seize的请求数据

    {container="evaluate-loki_flog_1"} |= `/engage/content/seize`
    

    更多示例请查看

    grafana.com/docs/loki/l…

    相关文章

    KubeSphere 部署向量数据库 Milvus 实战指南
    探索 Kubernetes 持久化存储之 Longhorn 初窥门径
    征服 Docker 镜像访问限制!KubeSphere v3.4.1 成功部署全攻略
    那些年在 Terraform 上吃到的糖和踩过的坑
    无需 Kubernetes 测试 Kubernetes 网络实现
    Kubernetes v1.31 中的移除和主要变更

    发布评论