istio.io/content/uk/docs/tasks/observability/metrics/querying-metrics/index.md

5.2 KiB
Raw Blame History

title description weight keywords aliases owner test
Отримання метрик в Prometheus Це завдання показує, як запитувати метрики Istio за допомогою Prometheus. 30
telemetry
metrics
/uk/docs/tasks/telemetry/querying-metrics/
/uk/docs/tasks/telemetry/metrics/querying-metrics/
istio/wg-policies-and-telemetry-maintainers yes

Це завдання показує, як запитувати метрики Istio за допомогою Prometheus. В рамках цього завдання ви будете використовувати вебінтерфейс для запитів значень метрик.

В якості демонстраційного застосунку використовуватиметься Bookinfo.

Перед початком

Отримання метрик з Istio

  1. Перевірте, що сервіс prometheus працює у вашому кластері.

    У середовищах Kubernetes виконайте наступну команду:

    {{< text bash >}} $ kubectl -n istio-system get svc prometheus NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE prometheus ClusterIP 10.109.160.254 9090/TCP 4m {{< /text >}}

  2. Надішліть трафік до мережі.

    Для застосунку Bookinfo відвідайте http://$GATEWAY_URL/productpage у вашому вебоглядачі або виконайте наступну команду:

    {{< text bash >}} $ curl "http://$GATEWAY_URL/productpage" {{< /text >}}

    {{< tip >}} $GATEWAY_URL — це значення, встановлене в застосунку Bookinfo. {{< /tip >}}

  3. Відкрийте UI Prometheus.

    У середовищах Kubernetes виконайте наступну команду:

    {{< text bash >}} $ istioctl dashboard prometheus {{< /text >}}

    Натисніть Graph справа від заголовка Prometheus.

  4. Виконайте запит до Prometheus.

    У полі "Expression" у верхній частині вебсторінки введіть текст:

    {{< text plain >}} istio_requests_total {{< /text >}}

    Потім натисніть кнопку Execute.

Результати будуть подібні до:

{{< image link="./prometheus_query_result.png" caption="Результат запиту Prometheus" >}}

Ви також можете переглянути результати запиту графічно, вибравши вкладку Graph під кнопкою Execute.

{{< image link="./prometheus_query_result_graphical.png" caption="Результат запиту Prometheus - графічний" >}}

Інші запити для спроби:

  • Загальна кількість усіх запитів до служби productpage:

    {{< text plain >}} istio_requests_total{destination_service="productpage.default.svc.cluster.local"} {{< /text >}}

  • Загальна кількість усіх запитів до v3 служби reviews:

    {{< text plain >}} istio_requests_total{destination_service="reviews.default.svc.cluster.local", destination_version="v3"} {{< /text >}}

    Цей запит повертає поточну загальну кількість усіх запитів до версії v3 служби reviews.

  • Швидкість запитів за останні 5 хвилин до всіх екземплярів служби productpage:

    {{< text plain >}} rate(istio_requests_total{destination_service=~"productpage.*", response_code="200"}[5m]) {{< /text >}}

Про надбудову Prometheus

Надбудова Prometheus є сервером Prometheus, який постачається з попередньо налаштованими параметрами для збору метрик Istio. Він забезпечує механізм для постійного зберігання та отримання метрик Istio.

Більше про запити до Prometheus читайте в документації з запитів.

Очищення

  • Видаліть будь-які процеси istioctl, які можуть ще працювати, використовуючи control-C або:

    {{< text bash >}} $ killall istioctl {{< /text >}}

  • Якщо ви не плануєте досліджувати подальші завдання, дотримуйтесь інструкцій з очищення Bookinfo для завершення роботи застосунку.