Centos部署Loki日志聚合系统

有关一些日志聚合的起源和原则,请参阅我的另一篇文章“用于编程入门的日志聚合系统”。

[En]

For the origin and principles of some log aggregations, see my other article, “Log aggregation system for getting started with programming”.

https://www.cnblogs.com/uncleguo/p/15948763.html

Loki日志聚合系统是由 Loki + Promtail+Grafana三部分组成的,这三个依次分别为 日志存储引擎,日志收集器,GUI界面,下面我们来简单实践部署下。

1.安装运行Loki及promtail

  • Loki 负责日志测存储,搜索
  • Promtail 负责收集日志,通过网络发送给Loki

首先去发布页面下载对应的Loki及Promtail版本。https://github.com/grafana/loki/releases/

Centos下载如下链接,下载完成后,解压到相同目录。

Loki:https://github.com/grafana/loki/releases/download/v2.4.2/loki-linux-amd64.zip
Promtail:https://github.com/grafana/loki/releases/download/v2.4.2/promtail-linux-amd64.zip

cd到解压目录中, wget下载默认配置文件模板,可以按需修改,也可以先用模板简单跑起来,增加信心:-)

wget https://raw.githubusercontent.com/grafana/loki/master/cmd/loki/loki-local-config.yaml
wget https://raw.githubusercontent.com/grafana/loki/main/clients/cmd/promtail/promtail-local-config.yaml

默认配置内容可以简单看下,比较容易理解。Promtail的默认配置是收集/var/log/*log,发送到本机的Loki http://localhost:3100/loki/api/v1/push 。可以根据需要调整。

以下命令运行Loki 及 Promtail,日志收集和存储就已经工作了。

./promtail-linux-amd64 -config.file=promtail-local-config.yaml
./loki-linux-amd64 -config.file=loki-local-config.yaml

2.安装运行Grafana

Grafana可以提供一个图形界面,以便查询日志,以下位置下载centos tar.gz版本。

wget https://dl.grafana.com/oss/release/grafana-8.4.3.linux-amd64.tar.gz
tar -zxvf grafana-8.4.3.linux-amd64.tar.gz

cd进解压目录运行

cd grafana-8.4.3
./bin/grafana-server web

成功运行后, 默认在3000端口提供服务, 默认的用户名密码为 admin/admin (注意替换实际ip) http://192.168.1.1:3000/login

3.配置Grafana数据源

为Grafana配置Loki作为数据源,以便进行日志可视化查看搜索。

Centos部署Loki日志聚合系统

Centos部署Loki日志聚合系统

Centos部署Loki日志聚合系统

Centos部署Loki日志聚合系统

Centos部署Loki日志聚合系统

可以查询了。

4 .日志滚动配置

日志总是流动的,它们会被自动删除太长时间,以避免填满存储空间。

[En]

Logs are always flowing, and they are automatically deleted for too long to avoid filling up storage.

修改Loki配置文件 loki-local-config.yaml,追加如下内容。

compactor:
 working_directory: /data/retention
 shared_store: filesystem
 compaction_interval: 10m
 retention_enabled: true
 retention_delete_delay: 2h
 retention_delete_worker_count: 150

storage_config:
   boltdb_shipper:
       active_index_directory: /data/index
       cache_location: /data/boltdb-cache
       shared_store: filesystem

limits_config:
 retention_period: 168h

其中retention_period为保留时间,这里168小时是7天。

至此,收工~!

Original: https://www.cnblogs.com/uncleguo/p/15975647.html
Author: 锅叔
Title: Centos部署Loki日志聚合系统

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/524034/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 使用MyBatis Generator代码生成器的简单模式

    在动态web项目的lib目录下放入mybatis-3.2.2jar、mysql-connector-java-5.1.25-bin.jar、log4j-1.2.17.jar还有生成…

    Linux 2023年6月8日
    0117
  • 方法的深度理解

    权限修饰符 返回值类型 类名(行参列表 )throws 异常的类型{ //方法体 约定俗称:子类中叫重写的方法,父类中叫被重写的方法。 ①子类重写的方法名和行参列表和父类被重写的方…

    Linux 2023年6月14日
    099
  • 美团笔试(22.03.19)

    代码题 一共五道代码题,看了前面三道,ac了三道,后面两道题没有时间看,此处将对前三题进行记录总结,后附代码。 题意:给定一组n个商品的价格,下单购买商品时,必须购买前i个商品,即…

    Linux 2023年6月13日
    0102
  • CentOS 7.x 用shell增加、删除端口

    一、在/usr/local/sbin/下创建port文件,不要扩展名,并给权限 chom 777 port 二、用法 #port add 8080 #port remove 808…

    Linux 2023年5月28日
    097
  • TCP三次握手 四次挥手

    最近在恶补计算机网络方面的知识,之前对于TCP的三次握手和四次分手也是模模糊糊,对于其中的细节更是浑然不知,最近看了很多这方面的知识,也在系统的学习计算机网络,加深自己的CS功底,…

    Linux 2023年6月7日
    084
  • 计算机系统领域学术会议论文评审流程

    今天看到海波老师的一张图,进行转载一下,下图记录了SOSP, OSDI, Eurosys 等计算机系统顶会的评审流程: 保持更新;cnblogs.com/xuyaowen。 Ori…

    Linux 2023年6月14日
    086
  • redis

    PHP-redis:http://pecl.php.net/package/redis PHP-redis中文文档(redis各种方法介绍):http://www.cnblogs….

    Linux 2023年5月28日
    087
  • VMware 虚拟机图文安装和配置 Rocky Linux 8.5 教程

    前言这是《VMware 虚拟机图文安装和配置 AlmaLinux OS 8.6 教程》一文的姐妹篇教程,如果你需要阅读它,请点击这里。2020 年,CentOS 宣布:计划未来将重…

    Linux 2023年6月7日
    0224
  • Docker centos7,宝塔

    拉取一个centos镜像 docker pull centos:centos7 运行一个容器 docker run -i -t -d –restart=always –name…

    Linux 2023年6月6日
    098
  • Java基础系列–07_String、StringBuffer和StringBuilder

    String类(1)字符串:字符串是 常量;它们的值在 创建之后不能更改,存储在堆中。如果字符串多次赋值,其实是每次重新赋值的时候程序都先在内存中寻找已开辟的空间是否存在该值;如果…

    Linux 2023年6月7日
    076
  • Kubernetes-DashBoard部署

    DashBoard 在kubernetes中完成的所有操作都是通过命令行工具kubectl完成的。其实,为了提供更丰富的用户体验,kubernetes还开发了一个基于web的用户界…

    Linux 2023年6月13日
    096
  • 搭建redis集群

    这里总结性给出搭建步骤: 1、 至少6个节点,三主三从 2、 编译redis源码 3、放置集群的配置文件redis.conf 创建工作目录: 每个文件夹下新建redis.conf …

    Linux 2023年5月28日
    093
  • shell bash-shell

    bash shell中的命令替换,cmd或者$(cmd)。 bash shell中的变量赋值,直接name = var; ( bash中的变量赋值不能中间有空格) 变量引用时,$n…

    Linux 2023年5月28日
    095
  • Linux运行Jar包方式

    1 运行Jar包 第一种方式 java -jar xxx.jar 最基本的方式,程序运行的信息会一直输出在控制台,ctrl+c中断或者关闭窗口时,程序中断执行。 第二种方式 jav…

    Linux 2023年6月7日
    0105
  • 在Windows下使用CodeBlock使用libiconv第三方库

    在 Windows 下使用 CodeBlock 使用 libiconv 第三方库 1、 选择在Project—>Build options下: 2、 如下图添加libicon…

    Linux 2023年6月6日
    089
  • django 将原本数据库中的表导入models中

    django 将原本数据库中的表导入models中 python manage.py inspectdb > app名/models.py 在执行过程中,如果发现出现报安装m…

    Linux 2023年6月13日
    0103
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球