LOKI日志系统

2024-01-16  本文已影响0人  小玉1991

Loki日志服务查询系统是比较轻量级的。主要由promtail、loki、grafana三部分组成。


系统架构图
一、安装grafana。也可以在直接下载安装包

[root@loki ~]# yum install -y [<u>https://dl.grafana.com/enterprise/release/grafana-enterprise-10.0.0-1.x86_64.rpm</u>](https://dl.grafana.com/enterprise/release/grafana-enterprise-10.0.0-1.x86_64.rpm)

[root@loki ~]# rpm  -ivh  xxxx.rpm

[root@loki ~]# yum remove  xxxx.rpm

二、安装loki

[root@loki ~]# wget https://github.com/grafana/loki/releases/download/v2.8.2/loki-linux-amd64.zip

[root@loki ~]# unzip loki-linux-amd64.zip

[root@loki ~]# mkdir -p /etc/loki

[root@loki ~]# mv loki-linux-amd64  /etc/loki

三、安装promtail
[root@loki ~]# wget https://github.com/grafana/loki/releases/download/v2.8.2/promtail-linux-amd64.zip
[root@loki ~]# unzip promtail-linux-amd64.zip
[root@loki ~]# mkdir -p /etc/promtail
[root@loki ~]# mv promtail-linux-amd64 /etc/promtail/
[root@loki ~]# vim /etc/promtail/promtail.yaml
 

./promtail-linux-amd64 --config.file=promtail_config.yaml

./loki-linux-amd64 --config.file=loki_config.yaml

  nohup ./promtail-linux-amd64 --config.file=promtail_config.yaml &

nohup ./loki-linux-amd64 --config.file=loki_config.yaml &

[root@loki ~]# vim /lib/systemd/system/loki.service

———————————————— 

[Unit]

Description=Loki service

After=network.target

[Service]

Type=simple

User=root

ExecStart=/etc/loki/loki-linux-amd64 -config.file /etc/loki/loki.yaml

[Install]

WantedBy=multi-user.target

———————————————— 

vim /lib/systemd/system/promtail.service

[Unit]

Description=Promtail service

After=network.target

[Service]

Type=simple

User=root

ExecStart=/etc/promtail/promtail-linux-amd64 -config.file /etc/promtail/promtail.yaml

[Install]

WantedBy=multi-user.target

四、启用服务

[root@loki ~]# systemctl start promtail.service

[root@loki ~]# systemctl start loki.service

[root@loki ~]# systemctl start grafana-server.service

五、加入开机启动

[root@loki ~]# ystemctl enable promtail.service

[root@loki ~]# systemctl enable loki.service

[root@loki ~]# systemctl enable grafana-server.service

systemctl stop grafana-server.service

1. 重启服务:systemctl restart grafana-server.service



如果断网安装有如下失败,需要安装依赖依赖安装参考:linux 资源包安装详细教程
点击进入网页:linux资源包下载链接:pkgs.org

安装失败

本次安装涉及到的依赖


image.png

Grafana的基本配置

登录

{host="10.9.17.53",note="gl01",server="td2_chan_up_wx"} |= "0000843335522269"

image.png

LOKI配置文件 loki_config.yaml

auth_enabled: false
 
server:
  http_listen_port: 3100   #http监听端口,代理服务(promtail)会向此端口发送日志流
  grpc_listen_port: 9086   #grpc监听端口,简单部署不用管
 
common: #默认配置
  path_prefix: /data/loki  #默认的路径前缀
  storage:
    filesystem:
      chunks_directory: /data/loki/chunks  #压缩后的日志,存储在这个目录
      rules_directory: /data/loki/rules    #一些告警规则和查找规则,存储在这个目录,简单部署不用管
  replication_factor: 1   #简单部署不用管
  ring: #哈希环配置,简单部署不用管
    instance_addr: 172.15.25.101  #一般为部署loki的机器的ip
    kvstore:
      store: inmemory #沿用即可
 
schema_config:
  configs:
    - from: 2020-10-24   #2020-10-24之后loki信息用下面的配置,这个主要是用来做兼容的
      store: boltdb-shipper #索引使用哪种存储
      object_store: filesystem  #怎么存储,简单部署的话保存在本地文件系统
      schema: v11  #版本
      index: #索引怎么更新和存储
        prefix: index_    #索引前缀
        period: 24h       #索引期限24小时
 
ruler:
  alertmanager_url: http://localhost:9093  #告警地址,简单部署沿用即可
 
#若不需要清理日志,以下配置均可删除
chunk_store_config: 
  max_look_back_period: 24h #最大日志可见时间
 
#table_manager:
# retention_deletes_enabled: true
#  retention_period: 24h
 
limits_config:
  retention_period: 24h #全局保留期,超过这个时间的日志会被删除,具体删除规则在compactor里配置
  #retention_stream: #局部保留期
  #- selector: '{level="error"}'
  #  priority: 1
  #  period: 720h
 
compactor: 
  working_directory: /data/loki/compactor #compactor运行状态保存目录
  shared_store: filesystem
  retention_enabled: true #启动日志删除
  compaction_interval:  10m #compactor每隔10分钟运行一次
  retention_delete_delay: 2h  #在compactor运行2小时后删除
  retention_delete_worker_count: 150 #用150个worker删除chunks
 
analytics:
  reporting_enabled: false #关闭向loki团队发送此配置文件

promtail配置文件 promtail_config.yaml

server:
  http_listen_port: 9081 #监听端口
  grpc_listen_port: 0    # gRPC 服务监听的端口(0表示随机)
 
positions:
  filename: /home/tdcode2/td2_promtail/positions.yaml   #promtail保存文件的位置,当服务异常关闭,重启时可以继续在中断处继续采集,此文件保存日志采集进度
 
clients:
  - url: http://172.15.25.101:3100/loki/api/v1/push  #loki接收日志的地址
 
scrape_configs: # 日志采集配置
- job_name: test   #这个随意配置
  static_configs:
  - targets:
      - localhost
    labels: #note,host,server,level自己定义的标签,根据自己需要改动
      note: gl01 
      host: 10.9.17.53
      server: td2_chan_up_wx
      level: access
      __path__: /data/logs/tdcode2/td2_chan_up_wx/td2_chan_up_wx_access.log #从此文件采集的日志会被打上上面的4个标签,支持正则
  - targets:
      - localhost
    labels:
      note: gl01
      host: 10.9.17.53
      server: td2_chan_up_wx
      level: error
      __path__: /data/logs/tdcode2/td2_chan_up_wx/td2_chan_up_wx_error.log
参考文章:

Grafana 安装配置教程:https://blog.csdn.net/weixin_44462773/article/details/132422262
轻量级日志管理系统-loki 简单部署:https://blog.csdn.net/wx__wx/article/details/127055173
Loki部署:https://blog.csdn.net/xwupiaomiao/article/details/133642594

上一篇下一篇

猜你喜欢

热点阅读