【Kubernetes】helm部署轻量级日志系统-loki
·
简介
Loki 是 Grafana Labs 团队最新的开源项目,是一个水平可扩展,高可用性,多租户的日志聚合系统。它的设计非常经济高效且易于操作,因为它不会为日志内容编制索引,而是为每个日志流编制一组标签,专门为 Prometheus 和 Kubernetes 用户做了相关优化。该项目受 Prometheus 启发,官方的介绍就是: Like Prometheus,But For Logs.,类似于 Prometheus 的日志系统;
项目地址:https://github.com/grafana/loki/
与其他日志聚合系统相比, Loki 具有下面的一些特性:
- 不对日志进行全文索引。通过存储压缩非结构化日志和仅索引元数据,Loki 操作起来会更简单,更省成本。
- 通过使用与 Prometheus 相同的标签记录流对日志进行索引和分组,这使得日志的扩展和操作效率更高,能对接alertmanager;
- 特别适合储存 Kubernetes Pod 日志; 诸如 Pod 标签之类的元数据会被自动删除和编入索引;
- 受 Grafana 原生支持,避免kibana和grafana来回切换;

- 组件说明
Promtail :作为采集器,类比filebeat
loki:相当于服务端,类比es
- loki进程包含四种角色
querier 查询器
inester 日志存储器
query-frontend 前置查询器
distributor 写入分发器
可以通过loki二进制的 -target 参数指定运行角色
1)部署
环境准备:
- k8s集群
- helm
# 已经部署了 Kubernetes 集群,并安装配置了 Helm 客户端
# 添加 repo 并更新
helm repo add grafana https://grafana.github.io/helm-charts
helm repo update
# 注意这里后面是 -stack 的是默认打包好在一起的,没stack的是默认只有 loki 的,自定义安装请参考官网给出的命令
helm upgrade --install loki --namespace=loki grafana/loki-stack
# 安装 grafana
helm install loki-grafana --namespace=loki grafana/grafana
# 确保所有的pod为running状态
# 查看grafana登录密码
kubectl get secret --namespace loki loki-grafana -o jsonpath="{.data.admin-password}" | base64 --decode ; echo
hgC9VILMWiG39L5xU6jungBnfV0je7Q1wrzN2qLP
# 将loki-grafana的service改为nodeport类型
kubectl patch svc loki-grafana -n loki -p '{"spec": {"type": "NodePort"}}'
[root@k8s-master-4 ~]# kubectl get svc -n loki
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
loki-grafana NodePort 10.106.225.152 <none> 80:31896/TCP 12d
loki1 ClusterIP 10.109.19.211 <none> 3100/TCP 12d
loki1-headless ClusterIP None <none> 3100/TCP 12d
loki1-memberlist ClusterIP None <none> 7946/TCP 12d
[root@k8s-master-4 ~]# kubectl get po -n loki
NAME READY STATUS RESTARTS AGE
loki-grafana-57d45f9b45-lcl8l 1/1 Running 2 12d
loki1-0 1/1 Running 2 12d
loki1-promtail-5wzmp 1/1 Running 2 12d
loki1-promtail-b6k2z 1/1 Running 2 12d
loki1-promtail-g85km 1/1 Running 2 12d
访问
http://192.168.76.4:31896/
用户名密码:
admin/hgC9VILMWiG39L5xU6jungBnfV0je7Q1wrzN2qLP
2)数据源配置

3)查看日志

根据自己的需求写查询语句,然后点击run query就能看到查询的日志啦

更多推荐


所有评论(0)