Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это важно
Предварительные версии функций AKS доступны на условиях самообслуживания и добровольного выбора. Предварительные версии предоставляются "как есть" и "при наличии". На них не распространяются соглашения об уровне обслуживания и ограниченная гарантия. Предварительные версии AKS сопровождаются частичной поддержкой клиентов на основе принципа лучших усилий. Как таковые, эти функции не предназначены для использования в производстве. Для получения дополнительной информации ознакомьтесь со следующими статьями поддержки:
Сеть приложений Azure Kubernetes предоставляет комплексные метрики для рабочих нагрузок и компоненты плоскости данных сети приложений Azure Kubernetes (ZTunnel, Istio CNI и Waypoint) с помощью метрик Azure Monitor. В этой статье объясняется, как настроить и просмотреть эти метрики в Azure Monitor.
Ограничения
Метрики плоскости управления в настоящее время не поддерживаются. Однако доступны метрики плоскости данных, и их можно использовать для мониторинга работоспособности и производительности рабочих нагрузок и компонентов сети приложений Azure Kubernetes.
Метрики плоскости данных
Метрики плоскости данных включают метрики из ваших рабочих нагрузок и приложений, а также из пространства имен appnet-system. В настоящее время сеть приложений Azure Kubernetes поддерживает только метрики плоскости данных.
Настройка метрик плоскости данных
Параметры конфигурации рабочей области для метрик плоскости данных
Если включить коллекцию метрик Prometheus для кластеров членов сети приложений Azure Kubernetes, у вас есть следующие параметры конфигурации рабочей области:
- Используйте существующую рабочую область Azure Monitor.
- Опустите идентификатор ресурса рабочей области и используйте рабочую область по умолчанию, созданную для группы ресурсов.
- Создайте новую рабочую область Azure Monitor.
Включение сбора метрик плоскости данных
- Использование существующей рабочей области Azure Monitor
- Использование рабочей области по умолчанию
- Создание новой рабочей области Azure Monitor
Включите коллекцию метрик Prometheus в кластере членов сети приложений Azure Kubernetes, используя
az aks updateкоманду с параметром, заданным--azure-monitor-workspace-resource-idдля существующего идентификатора рабочей области. Если метрики Azure Monitor уже включены в кластере-члене, перейдите к следующему шагу.az aks update --enable-azure-monitor-metrics \ --name $CLUSTER_NAME \ --resource-group $AKS_RG \ --azure-monitor-workspace-resource-id $WORKSPACE_IDСоздайте и примените следующий ConfigMap в
kube-systemпространстве имен с помощьюkubectl applyкоманды. Этот ConfigMap позволяет выполнять очистку Ztunnel, Istio CNI, точки пути и приложений или рабочих нагрузок.kubectl apply -f - <<EOF kind: ConfigMap apiVersion: v1 metadata: name: ama-metrics-settings-configmap namespace: kube-system data: schema-version: v1 config-version: ver1 prometheus-collector-settings: |- cluster_alias = "" https_config = true default-scrape-settings-enabled: |- ztunnel = true istio-cni = true pod-annotation-based-scraping: |- podannotationnamespaceregex = ".*" default-targets-metrics-keep-list: |- ztunnel = "" istio-cni = "" minimalingestionprofile = true default-targets-scrape-interval-settings: |- ztunnel = "30s" istio-cni = "30s" podannotations = "30s" debug-mode: |- enabled = false EOFДобавьте аннотации к pod приложений, с которых вы хотите собирать данные.
-
prometheus.io/scrape: "true"Необходимо указать, что модуль pod должен быть сломлен. -
prometheus.io/pathпри необходимости используется для указания пути размещения метрик. Если опущен, значение по умолчанию/metrics. -
prometheus.io/portпри необходимости используется для указания порта, в котором размещаются метрики. Если опущено, Prometheus будет использовать объявленные порты контейнера из спецификации pod. Для контейнеров без объявленных портов Prometheus создает целевой объект без порта (только IP-адрес), который требует надлежащей настройки повторной маркировки для работы с заметками портов. Рекомендуется явно указать порт, чтобы обеспечить надежную очистку.
В следующем примере определяются аннотации для pod, на котором размещены метрики
<pod IP>:15020/metricsprometheus.io/scrape: "true" prometheus.io/port: "15020" prometheus.io/path: "/metrics"Для загрузки этой конфигурации для ReplicaSet метрик AMA может потребоваться несколько минут.
-
Просмотр метрик плоскости данных
Перейдите в рабочую область Azure Monitor на портале Azure, чтобы запросить метрики с помощью PromQL.
Создайте некоторый трафик, а затем выберите запросы из предоставленных метрик для просмотра метрик . Например, можно выполнить следующий запрос, чтобы просмотреть общее количество запросов, обрабатываемых по путьной точке:
# ztunnel istio_xds_connection_terminations_total # waypoint istio_requests_total # istio-cni istio_cni_install_readyНа следующем снимке экрана показаны результаты для примеров запросов:
Список предоставляемых метрик
| Компонент | Предоставляемые метрики |
|---|---|
| ZTunnel | istio_buildistio_xds_connection_terminations_totalistio_xds_message_totalistio_xds_message_bytes_totalistio_tcp_connections_opened_totalistio_tcp_connections_closed_totalistio_tcp_received_bytes_totalistio_tcp_sent_bytes_totalistio_on_demand_dnsistio_dns_requests_totalistio_dns_upstream_requestsistio_dns_upstream_failuresistio_dns_upstream_request_duration_secondsworkload_manager_active_proxy_countworkload_manager_pending_proxy_countworkload_manager_proxies_started_totalworkload_manager_proxies_stopped_total |
| Istio CNI | istio_cni_install_readyistio_cni_installs_totalnodeagent_reconcile_events_totalztunnel_connected |
| Путевая точка | istio_buildistio_request_bytes_bucketistio_request_bytes_countistio_request_bytes_sumistio_request_duration_milliseconds_bucketistio_request_duration_milliseconds_countistio_request_duration_milliseconds_sumistio_requests_totalistio_response_bytes_bucketistio_response_bytes_countistio_response_bytes_sum |
Доступ к метрикам непосредственно из прокси-точек
Помимо метрик запросов и ответов Istio, прокси-узлы также генерируют метрики Envoy.
Чтобы найти полный список метрик, создаваемых waypoint, можно перенаправить порт на proxy waypoint в пространстве имен и перечислить метрики с помощью этих команд:
# Port-forward to waypoint proxy kubectl port-forward -n <namespace> deployment/waypoint 15020:15020 & # List metrics exposed by waypoint curl http://localhost:15020/stats/prometheus | grep -v '^#' | grep -v '^$' | awk -F'{' '{print $1}' | sort -u
Визуализация метрик с помощью Grafana на портале Azure
Создайте трафик для кластера членов и перейдите в рабочую область Azure Monitor на портале Azure.
> Выберитепанели мониторинга с помощью Grafana.
На следующих снимках экрана показаны примеры импорта панели мониторинга Istio Ztunnel:
Если вы хотите настроить управляемую Grafana Azure вместо использования панелей мониторинга с помощью Grafana, см. Создание рабочей области Azure Managed Grafana с помощью Azure CLI.
Связанный контент
Дополнительные сведения о наблюдаемости и мониторинге сети приложений Azure Kubernetes см. в следующих статьях: