美文网首页
LOKI日志系统

LOKI日志系统

作者: 小玉1991 | 来源:发表于2024-01-16 11:00 被阅读0次

    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的基本配置

    登录

    • 安装完成后,在浏览器输入访问网址:http://ip:3000
    • 默认的登录用户名/密码:admin/admin
    • 首次登录后,建议根据导航提示修改密码
      例如,想在server为td2_chan_up_wx,host为10.9.17.53,note为gl01的日志中,查询0000843335522269的日志,其LogQL语句为:

    {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

    相关文章

      网友评论

          本文标题:LOKI日志系统

          本文链接:https://www.haomeiwen.com/subject/rdjkodtx.html