Sdílet prostřednictvím


Ruční nasazení prostředků pozorovatelnosti

Důležité

Azure IoT Operations Preview – Služba Azure Arc je aktuálně ve verzi Preview. Tento software ve verzi Preview byste neměli používat v produkčních prostředích.

Až bude dostupná obecně dostupná verze, budete muset nasadit novou instalaci operací Azure IoT. Nebudete moct upgradovat instalaci verze Preview.

Právní podmínky, které platí pro funkce Azure, které jsou ve verzi beta, verzi Preview nebo které zatím nejsou veřejně dostupné, najdete v Dodatečných podmínkách použití pro Microsoft Azure verze Preview.

Tento článek ukazuje, jak nainstalovat a nakonfigurovat komponenty pozorovatelnosti operací Azure IoT ručně. Tento přístup poskytuje více možností a kontrolu nad vaším prostředím. Zjednodušený proces instalace, který nainstaluje všechny komponenty, které potřebujete začít, najdete v tématu Nasazení prostředků pozorovatelnosti pomocí skriptu.

Nakonfigurujte si vaše předplatné

Spuštěním následujícího kódu zaregistrujte poskytovatele v předplatném, ve kterém se nachází váš cluster.

Poznámka:

Tento krok stačí spustit jenom jednou pro každé předplatné. K registraci poskytovatelů prostředků potřebujete oprávnění k provedení /register/action operace, která je součástí rolí Přispěvatel předplatného a Vlastník. Další informace najdete v tématu Poskytovatelé a typy prostředků Azure.

az account set -s <subscription-id>
az provider register -n "Microsoft.Insights"
az provider register -n "Microsoft.AlertsManagement"

Instalace spravované služby Azure Monitor pro Prometheus

Spravovaná služba Azure Monitor pro Prometheus je součástí metrik Azure Monitoru. Tato spravovaná služba poskytuje flexibilitu v typech dat metrik, která můžete shromažďovat a analyzovat pomocí služby Azure Monitor. Metriky Prometheus sdílejí některé funkce s platformou a vlastními metrikami. Metriky Prometheus také používají některé různé funkce k lepší podpoře opensourcových nástrojů, jako jsou PromQL a Grafana.

Spravovaná služba Azure Monitor pro Prometheus umožňuje shromažďovat a analyzovat metriky ve velkém měřítku pomocí řešení monitorování kompatibilního s Prometheus. Tato plně spravovaná služba je založená na projektu Prometheus ze služby Cloud Native Computing Foundation (CNCF). Služba umožňuje použít dotazovací jazyk Prometheus (PromQL) k analýze a upozorňování na výkon monitorované infrastruktury a úloh, aniž byste museli provozovat základní infrastrukturu.

Pokud chcete nastavit kolekci metrik Prometheus pro nový cluster s podporou Arc, postupujte podle kroků v konfiguraci kolekce metrik Prometheus.

Instalace Container Insights

Container Insights monitoruje výkon úloh kontejnerů nasazených do cloudu. Poskytuje přehled o výkonu díky tomu, že shromažďuje metriky paměti a procesoru z kontrolerů, uzlů a kontejnerů, které jsou v Kubernetes dostupné prostřednictvím rozhraní API pro metriky. Po povolení monitorování z clusterů Kubernetes se metriky a protokoly kontejnerů automaticky shromažďují prostřednictvím kontejnerizované verze agenta Log Analytics pro Linux. Metriky se odesílají do databáze metrik ve službě Azure Monitor. Data protokolu se odesílají do pracovního prostoru služby Log Analytics.

Pokud chcete monitorovat výkon úloh kontejneru, proveďte kroky pro povolení přehledů kontejnerů.

Instalace Grafany

Azure Managed Grafana je platforma pro vizualizaci dat založená na softwaru Grafana od Grafana Labs. Azure Managed Grafana je plně spravovaná služba Azure provozovaná a podporovaná Microsoftem. Grafana vám pomůže spojit metriky, protokoly a trasování do jediného uživatelského rozhraní. Díky rozsáhlé podpoře zdrojů dat a možností vynášení do grafů můžete prohlížet a analyzovat telemetrická data aplikací a infrastruktury v reálném čase.

Operace Azure IoT poskytují kolekci řídicích panelů navržených tak, aby vám poskytly řadu vizualizací, které potřebujete k pochopení stavu a výkonu nasazení operací Azure IoT.

Pokud chcete nainstalovat Azure Managed Grafana, proveďte následující kroky:

  1. Pomocí webu Azure Portal vytvořte instanci Azure Managed Grafana.

  2. Nakonfigurujte spravovanou službu Azure Monitor pro Prometheus jako zdroj dat pro Azure Managed Grafana.

  3. Nakonfigurujte řídicí panely podle kroků v části Nasazení řídicích panelů do Grafany.

Instalace kolektoru OpenTelemetry (OTel)

OpenTelemetry Collector je klíčovou komponentou projektu OpenTelemetry, což je opensourcová architektura pozorovatelnosti zaměřená na poskytování sjednoceného trasování, metrik a protokolování pro distribuované systémy. Kolektor je navržený tak, aby přijímal, zpracovával a export dat telemetrie z více zdrojů, jako jsou aplikace a infrastruktura, a odesílal je do back-endu monitorování. Tento kolektor OTel shromažďuje metriky z operací Azure IoT a zpřístupňuje ho dalším nástrojům pozorovatelnosti, jako je spravovaná služba Azure Monitor pro Prometheus, Container Insights a Grafana.

Chcete-li nainstalovat kolektor OTel, proveďte následující kroky:

  1. Naklonujte nebo stáhněte úložiště Operací Azure IoT do místního počítače: azure-iot-operations.git.

    Poznámka:

    Úložiště obsahuje definici nasazení operací Azure IoT a ukázky, které zahrnují ukázkové řídicí panely použité v tomto článku.

  2. V místní kopii úložiště přejděte na následující cestu:

    azure-iot-operations\tools\setup-3p-obs-infra

  3. Vytvořte volaný otel-collector-values.yaml soubor a vložte do něj následující kód, který definuje kolekci OpenTelemetry:

    mode: deployment
    fullnameOverride: aio-otel-collector
    image:
      repository: otel/opentelemetry-collector
      tag: 0.107.0
    config:
      processors:
        memory_limiter:
          limit_percentage: 80
          spike_limit_percentage: 10
          check_interval: '60s'
      receivers:
        jaeger: null
        prometheus: null
        zipkin: null
        otlp:
          protocols:
            grpc:
              endpoint: ':4317'
            http:
              endpoint: ':4318'
      exporters:
        prometheus:
          endpoint: ':8889'
          resource_to_telemetry_conversion:
            enabled: true
      service:
        extensions:
          - health_check
        pipelines:
          metrics:
            receivers:
              - otlp
            exporters:
              - prometheus
          logs: null
          traces: null
        telemetry: null
      extensions:
        memory_ballast:
          size_mib: 0
    resources:
      limits:
        cpu: '100m'
        memory: '512Mi'
    ports:
      metrics:
        enabled: true
        containerPort: 8889
        servicePort: 8889
        protocol: 'TCP'
      jaeger-compact:
        enabled: false
      jaeger-grpc:
        enabled: false
      jaeger-thrift:
        enabled: false
      zipkin:
        enabled: false
    
  4. otel-collector-values.yaml V souboru si poznamenejte následující hodnoty, které použijete v az iot ops init příkazu při nasazování operací Azure IoT v clusteru:

    • fullnameOverride
    • grpc.endpoint
    • check_interval
  5. Soubor uložte a zavřete.

  6. Nasaďte kolektor spuštěním následujících příkazů:

    kubectl get namespace azure-iot-operations || kubectl create namespace azure-iot-operations
    helm repo add open-telemetry https://open-telemetry.github.io/opentelemetry-helm-charts
    
    helm repo update
    helm upgrade --install aio-observability open-telemetry/opentelemetry-collector -f otel-collector-values.yaml --namespace azure-iot-operations