美文网首页Prometheus/监控
开发环境搭建分体式轻量级loki日志收集系统

开发环境搭建分体式轻量级loki日志收集系统

作者: Terry_Qian | 来源:发表于2021-06-27 18:47 被阅读0次

1 基础环境服务器端

  • 使用docker-compose安装loki,grafana

    loki是主服务器,负责存储日志和处理查询。
    Grafana用于日志分析检索界面操作。

    linux查看端口是否被占用netstat -nultp

    version: "3"
    
    networks:
      loki:
    
    services:
      loki:
        image: grafana/loki
        restart: always
        environment:
        - TZ=Asia/Shanghai
        - LANG=zh_CN.UTF-8
        ports:
        - 3100:3100
        networks:
        - loki
      
      grafana:
        image: grafana/grafana:master
        restart: always
        environment:
        - TZ=Asia/Shanghai
        - LANG=zh_CN.UTF-8
        ports:
        - 3000:3000
        networks:
        - loki
    
    docker-compose up -d
    
  • 访问ip:3000,设置grafana数据源url

image-20210627150700636.png

2 所有需要监控日志的服务器端

  • docker配置文件添加loki地址及相关参数

    vim /etc/docker/daemon.json
    
    {
      "log-driver": "loki",
      "log-opts": {
        "loki-url": "http://部署loki的服务器IP:3100/loki/api/v1/push",
        "max-size": "30m",
        "max-file": "10"
      }
    }
    

    其中max-size表示日志文件最大大小,max-file表示最多10个日志文件,都是对单个容器来说的。

  • 安装loki的docker插件收集容器的日志文件

    docker plugin install grafana/loki-docker-driver:latest --alias loki --grant-all-permissions
    
  • loki日志收集插件更新操作如下:

    docker plugin disable loki --force
    docker plugin upgrade loki grafana/loki-docker-driver:latest --grant-all-permissions
    docker plugin enable loki
    systemctl restart docker
    
  • 重启docker后,所有重新拉的镜像都可被收集到日志并发送到loki服务器

    service docker restart
    

3 3小时踩坑

互相ping通的两台内网服务器无法实时获取日志信息的问题

相关文章

网友评论

    本文标题:开发环境搭建分体式轻量级loki日志收集系统

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