以前的企业级日志系统ELK(Elasticsearch、Logstash、Kibana)比较重,而Loki是一个轻量级的日志系统,且Loki与Prometheus、Grafana是同一个生态的产品,在云原生领域有着很好的兼容性。
日志系统的价值
Promtail是Loki的一个组件,通过DaemonSet在每一个节点上都有部署,负责收集Pod日志,以及给日志流加上Label,然后发送给Loki。Loki是一个可扩展、高可用、多租户的日志聚合系统。Loki 提供的日志查询语言,类似 Prometheus 的 PromQL,而且 Loki 支持 LogQL 查询直接转换为 Prometheus 指标。
Loki的架构:
Distributor(分配器)
Ingester(采集器)
Querier(查询器)
1、添加grafana repo
helm repo add grafana https://grafana.github.io/helm-charts
2、安装loki
helm upgrade --install loki grafana/loki-stack --set grafana.enabled=true,prometheus.enabled=true,prometheus.alertmanager.persistentVolume.enabled=false,prometheus.server.persistentVolume.enabled=false
3、修改grafana service为NodePort类型
kubectl edit svc loki-grafana -oyaml -n default
4、查看安装结果
4、部署应用程序
5、通过grafana service访问,查看日志