本文仅对Loki进行简单评测,不涉及原理和细节。git
Loki是grafana团队开发一个日志采集工具。使用推荐使用helm方式安装loki,官方推荐的tanka须要使用aws的s3服务。安装helm后直接运行以下命令便可在loki
命名空间中部署最简单的loki套件。github
# helm repo add loki https://grafana.github.io/loki/charts # helm upgrade --install loki loki/loki-stack
使用以下命令能够查看loki
支持的chartsshell
# helm search repo loki NAME CHART VERSION APP VERSION DESCRIPTION loki/loki 0.30.1 v1.5.0 Loki: like Prometheus, but for logs. loki/loki-stack 0.38.1 v1.5.0 Loki: like Prometheus, but for logs. loki/fluent-bit 0.1.4 v1.5.0 Uses fluent-bit Loki go plugin for gathering lo... loki/promtail 0.23.2 v1.5.0 Responsible for gathering logs and sending them...
若是使用openshift平台,则须要进行scc受权工具
# oc adm policy add-scc-to-user privileged -z loki # oc adm policy add-scc-to-user privileged -z loki-promtail
若是promtail
pod由于权限问题没法读取hostpath
挂载的目录,直接给promtail daemonset
使用的serviceaccount loki-promtail
受权privileged
权限便可。ui
若是grafana是集群外部的,须要配置ingress,以访问Loki。openshift直接建立router便可。日志
参考官方配置文档。code
部署好Loki以后,在grafana中配置Loki的datasourcerouter
在exporter中就能够经过Loki自动生成的标签查看日志信息。blog
目前grafana仅有Logs
dashboard支持Loki,若是要使用图表的话只能经过explore,相对不那么方便,且exolore的图表没法保存。另外grafana的Logs
dashboard能够支持简单的检索过滤,实现方式参考该文。ip
Loki日志系统相比传统的ELK要轻便不少,其使用了相似Prometheus的方式进行日志的匹配过滤等,日志采集查看的思路很新颖。
受制于该工具比较新,不少地方还待完善。如dashboard对Loki的支持力度远远不够,基于Loki日志的告警目前也很不方便。
相信在后续的版本解决和完善这些不便之处后,Loki会成为一个很是好用的工具。此外,在官方的explore介绍中能够看到,grafana还对Tracing进行了集成,由此看到,grafana最终的目标多是实现log,metric和tracing的大统一。