爱分享

grafana+Promtail +loki轻量化日志系统的部署

image.png

很长一段时间内流行的日志收集与管理系统肯定ELK或EFK,因为它可以定义日志的切割与展现方式,存储时效等。它虽然好用,但由于它们对系统资源占用较多,往往被技术人员诟病。为此新的一套日志管系统日志 GPL诞生了,它因轻量,易上手被人们采用,今天就来给大家分享下它的部署与简单使用;

一、部署:

   GPL是由grafana、promail、loki组成,在k8s环境中其工作路径如下:

   Kubernetes Pods → Promtail (日志收集) → Loki (日志存储) → Grafana (展示/告警)

   1、Grafana 安装,其安装较为简单,只需要官网下载 RPM包,进行直接安装即可

         下载地址:https://grafana.com/grafana/download  选择自己计划安装的版本即可。

         安装则是以centos系统  rpm -ivh grafana***.rpm 安装后一般不需要修改什么信息,默认即可,其默认帐号密码为  admin/admin

   2、Promtail 其负责对每个k8s节点上所有pod日志的收集,因此pod类型为 DaemonSet。

        其k8s相关的yaml文件见附件;

prom.zip

        注意事项一:在国内很难直接下载到promtail的镜像,此时用yaml安装时,需提前下好相关镜像包,否则易安装失败。

        注意事项二:monitoring.coreos.com_servicemonitors默认未安装,需要执行如下步骤才可

         下载安装文件  wget https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.87.1/example/prometheus-operator-crd/monitoring.coreos.com_servicemonitors.yaml

         安装 kubectl apply -f monitoring.coreos.com_servicemonitors.yaml

   3、loki安装可选用容器,k8s或非容器化部署等。 本次选用容器部署。

        有一注意事项,在国内很难直接下载到loki的镜像,也需要提前下好相关镜像包,否则安装失败。

        容器启动命令 docker run -d   --name=loki   -p 3000:3100   -v /data/loki-data:/loki   10.38.80.53:8888/energyot/loki:latest   -config.file=/etc/loki/local-config.yaml

 二、使用:

      首次登陆garafa时,其要求修改默认密码,密码最好是修改复杂一些,防止信息的泄露。使用步骤如下:

      1、登陆grafana后,在数据源处,将loki进行绑定

      2、在仪表板外点新建仪表版,然后选择数据源时选择loki,该名字是在绑定数据源时定义的。

             image.png    

        3、数据查询

           我们多数情况下会选择 code方式进行查询,然后选择job进行日志收集时主题 (在promtail的配置文件中定义) 的选择,然后进按需查询

         image.png

        这只是基本的查询,如果想做图与日志的展现,对grafana比较熟悉的人可以自己定义,如果不熟悉也可以到官方去下载现有模板

          官网地址是 https://grafana.com/grafana/dashboards/

        image.png     

 

nyx
nyx
这个人很神秘