跳至主要內容

日志采集监控

xw大约 2 分钟解决方案

安装

注意

开发测试环境使用该方式,生产环境使用集群部署。

  • 二进制安装promtail

    • 下载二进制文件,https://github.com/grafana/loki/releasesopen in new window

    • 解压安装

      ## 解压 ,如果没有unzip命令执行yum install -y unzip
      unzip promtail-linux-amd64.zip 
      ## 授权
      chmod a+x  promtail-linux-amd64
      ##启动
       ./promtail-linux-amd64 -config.file=./promtail-config.yaml
      
      • 配置服务

        cat>/usr/lib/systemd/system/promtail.service <<EOF
        
        [Unit]
        Description=promtail
        Documentation=https://github.com/grafana/loki/tree/master
        After=network.target
        
        [Service]
        Type=simple
        User=root
        ## 该配置请参照实际情况填写
        ExecStart=/data/promtail/promtail -config.file=/data/promtail/promtail-config.yaml  
        Restart=on-failure
        
        [Install]
        WantedBy=multi-user.target
        EOF
        
        

        运行以下命令,启动promtail并设置开机自启:

        systemctl daemon-reload
        systemctl start promtail
        systemctl enable promtail
        

        也可参考: https://sbcode.net/grafana/install-promtail-service/open in new window

  • docker安装promtail

    wget https://raw.githubusercontent.com/grafana/loki/v2.6.1/clients/cmd/promtail/promtail-docker-config.yaml -O promtail-config.yaml
    docker run --name promtail -d -v $(pwd):/mnt/config -v /var/log:/var/log --link loki grafana/promtail:2.6.1 -config.file=/mnt/config/promtail-config.yaml
    
  • docker安装loki

    wget https://raw.githubusercontent.com/grafana/loki/v2.6.1/cmd/loki/loki-local-config.yaml -O loki-config.yaml
    docker run --name loki -d --network=host -v $(pwd):/mnt/config -p 3100:3100 grafana/loki:2.6.1 -config.file=/mnt/config/loki-config.yaml
    
  • 安装alertmanger

    docker run --name alertmanager -d -p 9093:9093 quay.io/prometheus/alertmanager
    
  • 安装grafana

    docker run --name=grafana -d -p 3000:3000 grafana/grafana  
    

    访问地址: http://$open in new window:3000 ,初始化用户名/密码: admin/admin

测试

使用loki监控某服务日志并进行告警。

  • 服务宿主机安装promatail

    ## 创建配置文件挂载目录
    mkdir -p /data/promtail && cd /data/promtail
    
  • 添加配置文件 promtail-config.yaml

    server:
      http_listen_port: 9080
      grpc_listen_port: 0
    
    positions:
      filename: /tmp/positions.yaml
    
    clients:
      - url: http://192.168.1.177:3100/loki/api/v1/push
    
    scrape_configs:
    - job_name: cmp-maintenance-server-log
      static_configs:
      - targets:
          - localhost
        labels:
          job: varlogs
          __path__: /var/log/cmp/cmp-maintenance-server.log
    
    
  • 启动promtail

    docker run --name promtail -d --network=host -v $(pwd):/mnt/config -v /var/log:/var/log -v /data/promtail:/mnt/promtail grafana/promtail:2.6.1 -config.file=/mnt/promtail/promtail-config.yaml
    
  • grafana添加数据源和面板

  • 将日志存储到minio