环境配置:K8s集群1.21.1,已安装nfs持久化
1.安装helm,已经装可忽略
tar -zxvf helm-v3.10.2-linux-amd64.tar.gz
mv linux-amd64/helm /usr/local/bin/helm
查看版本
[root@k8s-master-1 ~]# helm version
version.BuildInfo{Version:"v3.10.2", GitCommit:"50f003e5ee8704ec937a756c646870227d7c8b58", GitTreeState:"clean", GoVersion:"go1.18.8"}
2.添加loki源
#添加loki源
helm repo add loki https://grafana.github.io/loki/charts
#查看loki相关包
helm search repo loki
3.安装loki
需要先创建ns
#创建lokins
kubectl create ns monitoring
#安装loki
Helm install loki loki/loki-stack -n monitoring
查看安装情况
kubectl get pod -n monitoring
4.创建loki的pvc做持久化
vim loki-pvc.yaml
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: k8s-loki-claim
namespace: monitoring #---指定namespace为monitoring
spec:
storageClassName: nfs-storage #---需要与上面创建的storageclass的名称一致
accessModes:
- ReadWriteMany
resources:
requests:
storage: 200Gi
生成pvc
kubectl apply -f loki-pvc.yaml
查看pvc绑定情况
kubectl get pvc -n monitoring
5.创建grafana做可视化看板
#下载grafana
https://github.com/prometheus-operator/kube-prometheus#
进入grafana目录,创建pvc
vim grafana-pvc.yaml
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: k8s-grafana-claim
namespace: monitoring #---指定namespace为monitoring
spec:
storageClassName: nfs-storage #---需要与上面创建的storageclass的名称一致
accessModes:
- ReadWriteMany
resources:
requests:
storage: 100Gi
进去到manifests目录,执行grafana目录
[root@master-tg-1 manifests]# kubectl apply -f grafana/
查看生成pod情况
kubectl get pod -n monitoring
查看pvc和svc情况
kubectl get pvc,svc -n monitoring
6.访问grafana,添加loki做数据源
ip+端口
10.103.11.8:30090
初始账号密码:admin admin
添加数据源
添加域名+3100端口即可,不用使用cluster ip
进行校验,通过即可
Explore按钮查看日志
点击Log browser展开相关日志目录
选中日志master-tg-1,点击Show logs即可查看master-tg-1日志
相关日志信息
7.卸载loki
#卸载loki
helm uninstall loki -n monitoring