配置 Grafana Loki
本指南提供了如何配置 Loki 收集日志以及 Grafana 查询和显示 Milvus 集群日志的说明。
在本指南中,您将学习如何:
先决条件
- 您已经在 K8s 上 安装了 Milvus 集群。
- 您已经安装了必要的工具,包括 Helm 和 Kubectl。
部署 Loki
Loki 是受 Prometheus 启发的日志聚合系统。使用 Helm 部署 Loki 来收集来自 Milvus 集群的日志。
1. 添加 Grafana 的 Helm Chart 仓库
添加 Grafana 的图表仓库到 Helm 并更新:
helm repo add grafana https://grafana.github.io/helm-charts
helm repo update
2. 为 Loki 配置对象存储
选择以下存储选项之一并创建 loki.yaml
配置文件:
-
选项 1: 使用 MinIO 作为存储
loki:
commonConfig:
replication_factor: 1
auth_enabled: false
minio:
enabled: true -
选项 2: 使用 AWS S3 作为存储
在下面的示例中,将
<accessKey>
和<keyId>
替换为您自己的 S3 访问密钥和 ID,将s3.endpoint
替换为 S3 端点,将s3.region
替换为 S3 区域。loki:
commonConfig:
replication_factor: 1
auth_enabled: false
storage:
bucketNames:
chunks: loki-chunks
ruler: loki-ruler
admin: loki-admin
type: 's3'
s3:
endpoint: s3.us-west-2.amazonaws.com
region: us-west-2
secretAccessKey: <accessKey>
accessKeyId: <keyId>
3. 安装 Loki
运行以下命令安装 Loki:
kubectl create ns loki
helm install --values loki.yaml loki grafana/loki -n loki
部署 Promtail
Promtail 是 Loki 的日志收集代理。它从 Milvus pod 中读取日志并将其发送到 Loki。
1. 创建 Promtail 配置
创建一个 promtail.yaml
配置文件:
config:
clients:
- url: http://loki-gateway/loki/api/v1/push
2. 安装 Promtail
使用 Helm 安装 Promtail:
helm install --values promtail.yaml promtail grafana/promtail -n loki