Loki 日志块使用 MinIO 对象存储

news2024/11/28 12:33:50

简介

与其他日志记录系统不同,Grafana Loki 是围绕仅索引有关日志的元数据的想法构建的:标签(就像 Prometheus 标签一样)。然后,日志数据本身会被压缩并以块的形式存储在对象存储(例如 S3 或 GCS)中,甚至本地存储在文件系统中。小索引和高度压缩的块简化了操作并显着降低了 Loki 的成本。

在 Loki 2.0 之前,索引数据存储在单独的索引中。

安装 Loki

略,参见:  Grafana+Loki+Promtail 搭建日志收集系统_promtail多行日志收集_不会飞的小龙人的博客-CSDN博客

安装 MinIO

略,参见:MinIO 安装笔记_不会飞的小龙人的博客-CSDN博客

Loki 对象存储配置

S3 是 AWS 的托管对象存储服务,也是互联网通用的网络对象存储服务模式。它非常适合托管对象存储,尤其是当您已经在 AWS 上运行并且生产安全时。

使用 AWS config 配置 MinIO,因为 MinIO 实现了 S3 API。而 Loki 支持配置 s3 的应用,如下:

storage_config:
  aws:
    # Note: use a fully qualified domain name, like localhost.
    # full example: http://loki:supersecret@localhost.:9000
    s3: http<s>://<username>:<secret>@<fqdn>:<port>
    s3forcepathstyle: true
  boltdb_shipper:
    active_index_directory: /loki/boltdb-shipper-active
    cache_location: /loki/boltdb-shipper-cache
    cache_ttl: 24h         # Can be increased for faster performance over longer query periods, uses more disk space
    shared_store: s3

schema_config:
  configs:
    - from: 2020-07-01
      store: boltdb-shipper
      object_store: aws
      schema: v11
      # index为索引数据,prefix表示设置索引存储文件夹的前缀,period表示设置当天24小时内的索引数据放在一个index_xxx目录,每天创建一个新index_xx索引目录
      index:
        prefix: index_
        period: 24h
      # 注意chunks存储的即为数据块
      chunks:
        prefix: chunks_
        period: 24h

我们用一个完整的示例,来演示如何将 Loki 通过 s3 协议将日志块上传到 MinIO,完整的 Loki 示例配置如下:

root@ubuntu2:/opt/loki# vim loki-local-config-minio.yaml
auth_enabled: false

server:
  http_listen_port: 3100
  grpc_listen_port: 9096

common:
  path_prefix: /tmp/loki
#  storage:
#    filesystem:
#      chunks_directory: /tmp/loki/chunks
#      rules_directory: /tmp/loki/rules
  replication_factor: 1
  ring:
    instance_addr: 0.0.0.0
    kvstore:
      store: inmemory

query_range:
  results_cache:
    cache:
#      embedded_cache:
#        enabled: true
#        distributed: true
#        max_size_mb: 100

storage_config:
  aws:
    # Note: use a fully qualified domain name, like localhost.
    # full example: http://loki:supersecret@localhost.:9000
    s3: http://miniotest:miniotest@192.168.16.128:9000/loki
    s3forcepathstyle: true
  boltdb_shipper:
    active_index_directory: /tmp/loki/boltdb-shipper-active
    cache_location: /tmp/loki/boltdb-shipper-cache
    cache_ttl: 24
    # Can be increased for faster performance over longer query periods, uses more disk space
    shared_store: s3

schema_config:
  configs:
    - from: 2020-10-24
      store: boltdb-shipper
      object_store: aws
      schema: v11
      index:
        prefix: index_
        period: 24h
      chunks:
        prefix: chunks_
        period: 24h

ruler:
  alertmanager_url: http://localhost:9093

MinIo 上创建 Buckets

loki 要使用 minio 存储日志块数据,必需先在 minio 创建网络对象存储桶 bucket,此 bucketName 必需与 yaml 配置文件中的 bucketName 一致,yaml 中配置的为 s3: http://miniotest:miniotest@192.168.16.128:9000/loki,loki 即为 minio 存储桶名称;miniotest:miniotest 为 minio 创建用的账号和密码,使用此账号上传日志数据到 minio 对象存储桶时,确认此账号有写入权限,如无可以进入 Buckets》loki》Manage》Access Audit》Users 中添加。

启动 loki 服务

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

日志存储查询

MinIo 管理平台成功上传日志块到 fake 目录和索引文件上传到 index 目录;

参考:

https://grafana.com/docs/loki/latest/configuration/examples/

https://grafana.com/docs/loki/latest/configuration/examples/#aws-basic-config-no-credsyaml (loki 配置 s3)

https://aws.amazon.com/cn/blogs/china/from-elk-efk-to-plg-implement-in-eks-a-container-logging-solution-based-on-promtail-loki-grafana/( 亚马逊 AWS 官方博客)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/723803.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RealEvo-IDE 更换激活码 License到期续期

license到期之后&#xff0c;会出现RealEvo-IDE无法打开的状况。在有新license的状况下&#xff0c;如何在不重新安装的情况下使用IDE&#xff1f;主要分为以下几个步骤&#xff1a; &#xff08;1&#xff09; 右击“RealEvo-IDE”&#xff0c;点击“打开文件位置”&#xff…

软件测试技能,JMeter压力测试教程,逻辑控制器之事务控制器(二十五)

一、前言 TPS就是每秒钟所处理的事务数&#xff0c;那么到底什么是事务呢&#xff1f; 事务是用户自定义的一个标识&#xff0c;是一个或多个操作完成一个业务所花费的时间&#xff0c;事务时间反映的是一个操作过程的响应时间 二、事务场景 电商场景大家并不陌生&#xff…

【Unity】Unity接入内购IAP,提示you are not authorized to set the license key

接入IAP的时候需要输入谷歌的开发者后台key Unity2020之后有可能会提示&#xff1a;you are not authorized to set the license key 查阅相关内容后&#xff08;https://forum.unity.com/threads/purchase-you-are-not-authorized-to-set-the-license-key-google-play.95426…

vue运行background-removal-js库

前段时间在github上有个能在浏览器扣图的js库蛮火https://github.com/imgly/background-removal-js 演示网站&#xff1a;demo 不仅仅能将人物主体扣出&#xff0c;还能处理动物、植物等 最近我萌发出在vue中运行这个库的想法&#xff0c;记录一下 下载、配置 首先当然是通…

揭秘python函数:编程艺术的核心力量

文章目录 前言什么是 python 函数函数的使用步骤1&#xff09;定义函数2&#xff09;调用函数 带有参数的函数函数的返回值函数的说明文档函数的嵌套调用实现简易的计算器 前言 当我们深入研究 Python 的内心深处&#xff0c;我们将会发现&#xff0c;函数是其内核的核心力量。…

信息安全管理与评估赛题第5套

全国职业院校技能大赛 高等职业教育组 信息安全管理与评估 赛题五 模块一 网络平台搭建与设备安全防护<

(四)并发编程带来了哪些问题?

&#xff08;四&#xff09;并发编程带来了哪些问题&#xff1f; 4.1 引入4.2 线程安全问题01、原子性02、可见性 4.3 活跃性问题01、死锁02、活锁03、饥饿 4.4 性能问题 4.1 引入 在一定场景下&#xff0c;使用多线程会给我们日常工作带来很多的便利&#xff0c;但并不是在任…

记一次数据库迁移(迁移数据)

book,由于之前建表没注意字符集的问题&#xff0c;导致之前写入的数据出现乱码。现在要将之前的数据和现在数据的字符集一致&#xff0c;不出现乱码情况&#xff0c;将字符集为 latin1 已有记录的数据转成 utf8&#xff0c;并且已经存在的记录不乱码。 操作步骤&#xff1a; 建…

SPI接口调试

本文记录了复旦微fmql45t900 SPI裸核和linux系统下spi接口的调试步骤。 问题描述&#xff1a; 复旦微fmql45t900 SPI接口片选信号无法拉低控制。 原因分析&#xff1a; 为了排除硬件问题&#xff0c;创建spi裸核测试工程进行单步调试&#xff0c;spi发送数据时用示波器可以正…

FPGA USB FX2 图片发送试验 驱动CY7C68013A实现 提供2套工程源码和技术支持

目录 1、前言2、我这儿已有的 FPGA USB 通信方案3、CY7C68013A芯片解读和硬件设计FX2 简介SlaveFIFO模式及其配置 4、工程详细设计方案输入测试图片的处理PC上位机发送测试图片图像接收与缓存图像输出显示 5、vivado工程1--LCD输出显示6、vivado工程1--LCD输出显示7、上板调试验…

vue数组深层赋值

一、问题 使用vue开发的项目&#xff0c;有一个页面的data中定义了两个数组&#xff0c;需要把其中一个数组赋值给另一个数组的其中一个对象的一个属性&#xff08;有点拗口&#xff09;&#xff0c;如图所示&#xff1a; 二、错误赋值 直接使用opts:this.print_name&#xf…

el-button与i标签实现区域切换效果

题记&#xff1a;我们工作中需要实现内容区域切换放大缩小的效果&#xff0c;其实道理很简单&#xff0c;给事件给样式即可。 #el-button与i标签实现区域切换效果 ##图片展示&#xff1a; ##代码实现 ###template部分 <div class"right"><el-button type&…

【SQL应知应会】行列转换(三)• Oracle版

欢迎来到爱书不爱输的程序猿的博客, 本博客致力于知识分享&#xff0c;与更多的人进行学习交流 本文收录于SQL应知应会专栏,本专栏主要用于记录对于数据库的一些学习&#xff0c;有基础也有进阶&#xff0c;有MySQL也有Oracle 行列转换 • Oracle版 oracle的行列转换前言1.数据…

Perhaps you are running on a JRE rather than a JDK?

我记得我遇到过好多次 mvn clean package的时候报错&#xff1b; 最后检查时这里的路径配置错了

蓝牙耳机品牌排行榜前十名!2023年超全蓝牙耳机合集!

虽然称不上发烧友&#xff0c;但近年来用过的蓝牙耳机少说也有几十款了。这篇文章以近年来市面上的热销且评价都比较高的十款蓝牙耳机为主要推荐对象&#xff0c;来给大家做一期有关于蓝牙耳机的实测体验以及提供相关的选购思路&#xff0c;希望能为大家的选择出一份力。 第一…

# TSWIKI 0.2 版本

TSWIKI 0.2 版本 TSWIKI 0.2 版本经过这段时间的改进&#xff0c;增加了搜索&#xff0c;版本变更查看等功能&#xff0c;基本开发完成。功能方面已经与 gollum 类似。 功能改进说明 1、GIT 版本变更查看功能 实现 git 版本变更查看功能, 在 markdown 文档查看界面&#xf…

day 44 完全背包

完全背包 有N件物品和一个最多能背重量为W的背包。第i件物品的重量是weight[i]&#xff0c;得到的价值是value[i] 。每件物品都有无限个&#xff08;也就是可以放入背包多次&#xff09;&#xff0c;求解将哪些物品装入背包里物品价值总和最大。 完全背包和01背包问题唯一不同…

LLVM介绍

LLVM项目是什么 工业级编译技术集合 优化器和代码生成器llvm-gcc和Clang前端MSIL和.NET虚拟机开源项目 行业组织、研究团体和个人 LLVM愿景 主要使命&#xff1a;构建一套模块化的编译器组件&#xff1a; 减少构建特定编译器的时间和成本组件可以在不同的编译器之间共享使用…

OpenCat:一个基于Arduino和Raspberry Pi的开源四足机器人宠物框架

一个深圳项目&#xff0c;OpenCat&#xff1a;一个基于Arduino和Raspberry Pi的开源四足机器人宠物框架。 项目灵感来自于到波士顿动力公司Big Dog和Spot Mini的启发。 OpenCat提供了一个基础的开源平台&#xff0c;可以创建令人惊奇的可编程步态、运动四足机器人。它可以进行复…

什么是孪生视频,孪生视频是什么意思,她的关键技术,及应用场景案例

视频孪生&#xff0c;即视频数字孪生。是集三维地理信息系统、视频虚实融合、数字孪生、人工智能、时空位置智能、地球空间网格编码、知识图谱于一体的多学科、多维度、多尺度的综合技术应用&#xff0c;是对数字孪生的创新升级。 什么是视频孪生&#xff0c;视频孪生的关键技术…