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:
Pomocí webu Azure Portal vytvořte instanci Azure Managed Grafana.
Nakonfigurujte spravovanou službu Azure Monitor pro Prometheus jako zdroj dat pro Azure Managed Grafana.
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:
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.
V místní kopii úložiště přejděte na následující cestu:
azure-iot-operations\tools\setup-3p-obs-infra
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
otel-collector-values.yaml
V souboru si poznamenejte následující hodnoty, které použijete vaz iot ops init
příkazu při nasazování operací Azure IoT v clusteru:- fullnameOverride
- grpc.endpoint
- check_interval
Soubor uložte a zavřete.
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