Настройка Grafana Loki
В этом руководстве приведены инструкции по настройке Loki для сбора журналов и Grafana для запроса и отображения журналов для кластера Milvus.
В этом руководстве вы узнаете, как:
- Развертывать Loki и Promtail на кластере Milvus с помощью Helm.
- Настраивать объектное хранилище для Loki.
- Запрашивать журналы с помощью Grafana.
Необходимые условия
- Вы установили кластер Milvus на K8s.
- Вы установили необходимые инструменты, включая Helm и Kubectl.
Развертывание Loki
Loki - это система агрегации логов, созданная по мотивам Prometheus. Разверните Loki с помощью Helm для сбора логов с вашего кластера Milvus.
1. Добавьте репозиторий диаграмм Grafana в Helm
Добавьте репозиторий графиков 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,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 и отправляет их в Loki.
1. Создание конфигурации Promtail
Создайте файл конфигурации promtail.yaml
:
config:
clients:
- url: http://loki-gateway/loki/api/v1/push
2. Установить Promtail
Установите Promtail с помощью Helm:
helm install --values promtail.yaml promtail grafana/promtail -n loki
Запрос журналов с помощью Grafana
Разверните Grafana и настройте ее на подключение к Loki для запроса журналов.
1. Развертывание Grafana
Установите Grafana с помощью следующих команд:
kubectl create ns monitoring
helm install my-grafana grafana/grafana --namespace monitoring
Прежде чем получить доступ к Grafana, необходимо получить пароль admin
:
kubectl get secret --namespace monitoring my-grafana -o jsonpath="{.data.admin-password}" | base64 --decode ; echo
Затем перенаправьте порт Grafana на вашу локальную машину:
export POD_NAME=$(kubectl get pods --namespace monitoring -l "app.kubernetes.io/name=grafana,app.kubernetes.io/instance=my-grafana" -o jsonpath="{.items[0].metadata.name}")
kubectl --namespace monitoring port-forward $POD_NAME 3000
2. Добавьте Loki в качестве источника данных в Grafana
После запуска Grafana необходимо добавить Loki в качестве источника данных для запроса журналов.
- Откройте веб-браузер и перейдите по адресу
127.0.0.1:3000
. Войдите в систему, используя имя пользователяadmin
и пароль, полученный ранее. - В левом боковом меню выберите Подключения > Добавить новое подключение.
- На появившейся странице выберите Loki в качестве типа источника данных. Вы можете ввести loki в строке поиска, чтобы найти источник данных.
- В настройках источника данных Loki укажите Имя и URL, а затем нажмите Сохранить и проверить.
Источник данных
3. Запрос журналов Milvus
После добавления Loki в качестве источника данных сделайте запрос к журналам Milvus в Grafana:
- В левом боковом меню нажмите Explore.
- В левом верхнем углу страницы выберите источник данных loki.
- С помощью браузера Label выберите метки и запросите журналы.
Запрос