Как проверить прикладной мониторинг

Сборка образа и развёртывание demo-app, Service и VMServiceScrape.

Когда в кластере настроен прикладной мониторинг, вы можете проверить его работу с помощью любого приложения с метриками в формате OpenMetrics. В инструкции используется демо-приложение от VictoriaMetrics.

Перед проверкой убедитесь, что выполнены требования к приложениям и развёрнуты VMSingle и VMAgent в user-monitoring — см. настройку прикладного мониторинга.

Что создаётся в demo-app

Объект Неймспейс Назначение
Namespace demo-app
Deployment demo-app Демонстрационное приложение с метриками
Service demo-app Доступ к endpoint метрик
VMServiceScrape demo-app Правило сбора метрик VMAgent из user-monitoring

Предусловия

  • хост/машина/компьютер с установленными git и docker — для скачивания исходников и сборки образа demo-app;
  • локальный или публичный registry для публикации собранного образа:
    • в закрытом контуре — локальное зеркало (например, mirror.shturval.local);
    • в открытой инсталляции — например, hub.docker.com.

Шаг 1. Создать неймспейс demo-app

Перейдите в ваш кластер в раздел Неймспейсы, создайте неймспейс demo-app, в котором будет развернуто демонстрационное приложение VictoriaMetrics

Скриншот интерфейса платформы

Скриншот интерфейса: Скриншот интерфейса платформы

Шаг 2. Собрать и опубликовать образ

В интерфейсе командной строки подключитесь к кластеру и выполните команды по загрузке приложения, собора его в контейнер и отправки в репозиторий локального зеркала, используя свои значения параметров.

Пример:

git clone https://github.com/VictoriaMetrics/demo-app
cd demo-app/
REGISTRY=<ВАШЕ ЗНАЧЕНИЕ> TAG=<ВАШЕ ЗНАЧЕНИЕ> make docker-push
Параметр Описание Тип данных Пример
REGISTRY Локальный или публичный Registry string mirror.shturval.local
TAG Версия сборки демонстрационного приложения string 1.2

Шаг 3. Развернуть приложение и VMServiceScrape

В графическом интерфейсе с помощью импорта манифестов загрузите в кластер Deployment, Service и VMServiceScrape в неймспейсе demo-app без изменения параметров (кроме образа в Deployment — укажите registry и tag из шага 2):

  1. Deployment demo-app — контейнер с образом demo-app;
  2. Service demo-app — порт http для scrape;
  3. VMServiceScrape demo-app-service-scrape — правило сбора метрик для VMAgent.

Пример манифестов:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: demo-app
  namespace: demo-app
  labels:
    app.kubernetes.io/name: demo-app
spec:
  replicas: 1
  selector:
    matchLabels:
      app.kubernetes.io/name: demo-app
  template:
    metadata:
      labels:
        app.kubernetes.io/name: demo-app
    spec:
      containers:
        - name: app
          image: r.shturval.tech/victoriametrics/demo-app:1.2 # замените на свой REGISTRY/TAG из шага 2
---
apiVersion: v1
kind: Service
metadata:
  name: demo-app
  namespace: demo-app
  labels:
    app.kubernetes.io/name: demo-app
spec:
  selector:
    app.kubernetes.io/name: demo-app
  ports:
    - port: 8080
      name: http
---
apiVersion: operator.victoriametrics.com/v1beta1
kind: VMServiceScrape
metadata:
  name: demo-app-service-scrape
  namespace: demo-app
spec:
  endpoints:
    - port: http
  selector:
    matchLabels:
      app.kubernetes.io/name: demo-app
Скриншот интерфейса платформы

Скриншот интерфейса: Скриншот интерфейса платформы

Проверка

После развёртывания метрики demo-app должны появиться в выбранном хранилище (локальный VMSingle в user-monitoring или внешний remoteWrite).