Udostępnij za pośrednictwem


Automatyczne zarządzanie urządzeniami i modułami IoT przy użyciu witryny Azure Portal

Automatyczne zarządzanie urządzeniami w usłudze Azure IoT Hub automatyzuje wiele powtarzających się i złożonych zadań zarządzania dużymi flotami urządzeń. Dzięki automatycznemu zarządzaniu urządzeniami można określić zestaw urządzeń na podstawie ich właściwości, zdefiniować żądaną konfigurację, a następnie zezwolić usłudze IoT Hub na aktualizowanie urządzeń w momencie ich wejścia w zakres. Ta aktualizacja jest wykonywana przy użyciu automatycznej konfiguracji urządzenia lub automatycznej konfiguracji modułu, która pozwala podsumować uzupełnianie i zgodność, obsługiwać scalanie i konflikty oraz wdrażać konfiguracje w podejściu etapowym.

Uwaga

Funkcje opisane w tym artykule są dostępne tylko w warstwie Standardowa usługi IoT Hub. Aby uzyskać więcej informacji na temat warstw podstawowej i standardowej/bezpłatnej usługi IoT Hub, zobacz Wybieranie odpowiedniej warstwy usługi IoT Hub dla rozwiązania.

Automatyczne zarządzanie urządzeniami działa przez zaktualizowanie zestawu bliźniaczych reprezentacji urządzeń lub bliźniaczych reprezentacji modułów z żądanymi właściwościami i raportowanie podsumowania opartego na zgłoszonych właściwościach bliźniaczych reprezentacji. Wprowadzono nową klasę i dokument JSON o nazwie Konfiguracja , która ma trzy części:

  • Warunek docelowy definiuje zakres bliźniaczych reprezentacji urządzeń lub bliźniaczych reprezentacji modułu do zaktualizowania. Warunek docelowy jest określony jako zapytanie dotyczące tagów bliźniaczych i/lub zgłoszonych właściwości.

  • Zawartość docelowa definiuje żądane właściwości do dodania lub zaktualizowania w docelowych bliźniaczych reprezentacjach urządzeń lub bliźniaczych reprezentacjach modułów. Zawartość zawiera ścieżkę do sekcji żądanych właściwości, które mają zostać zmienione.

  • Metryki definiują liczbę podsumowań różnych stanów konfiguracji, takich jak Powodzenie, W toku i Błąd. Metryki niestandardowe są określane jako zapytania dotyczące zgłaszanych właściwości bliźniaczych reprezentacji. Metryki systemowe to domyślne metryki, które mierzą stan aktualizacji bliźniaczej reprezentacji, takie jak liczba docelowych reprezentacji bliźniaczych i liczba pomyślnie zaktualizowanych reprezentacji bliźniaczych.

Konfiguracje automatyczne są uruchamiane po raz pierwszy po utworzeniu konfiguracji, a następnie w pięciu minutach. Zapytania metryk są uruchamiane za każdym razem, gdy jest uruchamiana automatyczna konfiguracja. W centrach IoT w warstwie Standardowa jest obsługiwanych maksymalnie 100 automatycznych konfiguracji; dziesięć w centrach IoT w warstwie Bezpłatna. Obowiązują również limity ograniczania przepustowości. Aby dowiedzieć się więcej, zobacz Limity przydziału i ograniczanie przepustowości.

Implementowanie bliźniaczych reprezentacji

Automatyczne konfiguracje urządzeń wymagają używania bliźniaczych reprezentacji urządzeń do synchronizowania stanu między chmurą a urządzeniami. Aby uzyskać więcej informacji, zobacz Opis bliźniaczej reprezentacji urządzenia w usłudze IoT Hub oraz sposoby jej używania.

Automatyczne konfiguracje modułów wymagają używania bliźniaczych reprezentacji modułów do synchronizowania stanu między chmurą a modułami. Aby uzyskać więcej informacji, zobacz Omówienie bliźniaczych reprezentacji modułów i korzystanie z nich w usłudze IoT Hub.

Używanie tagów do określania docelowych reprezentacji bliźniaczych

Przed utworzeniem konfiguracji należy określić, które urządzenia lub moduły mają mieć wpływ. Usługa Azure IoT Hub identyfikuje urządzenia przy użyciu tagów w bliźniaczej reprezentacji urządzenia i identyfikuje moduły używające tagów w bliźniaczej reprezentacji modułu. Każde urządzenie lub moduły mogą mieć wiele tagów i można je zdefiniować w dowolny sposób, który ma sens dla rozwiązania. Jeśli na przykład zarządzasz urządzeniami w różnych lokalizacjach, dodaj następujące tagi do bliźniaczej reprezentacji urządzenia:

"tags": {
	"location": {
		"state": "Washington",
		"city": "Tacoma"
    }
},

Tworzenie konfiguracji

Możesz utworzyć maksymalnie 100 automatycznych konfiguracji w centrach IoT w warstwie Standardowa; dziesięć w centrach IoT w warstwie Bezpłatna. Aby dowiedzieć się więcej, zobacz Limity przydziału i ograniczanie przepustowości.

  1. W witrynie Azure Portal przejdź do centrum IoT Hub.

  2. Wybierz pozycję Konfiguracje i wdrożenia w okienku nawigacji po lewej stronie.

  3. Wybierz pozycję Dodaj i wybierz pozycję Konfiguracja bliźniaczej reprezentacji urządzenia lub Konfiguracja bliźniaczej reprezentacji modułu z listy rozwijanej.

    Screenshot showing how to add a configuration.

Istnieje pięć kroków tworzenia konfiguracji. W poniższych sekcjach opisano poszczególne sekcje.

Nazwa i etykieta

  1. Nadaj konfiguracji unikatową nazwę, która ma długość maksymalnie 128 znaków. Małe litery i następujące znaki specjalne są dozwolone: -+%_*!'. Spacje są niedozwolone.

  2. Dodaj etykiety, aby ułatwić śledzenie konfiguracji. Etykiety to Nazwa, Pary Wartości , które opisują konfigurację. Na przykład: HostPlatform, Linux lub Version, 3.0.1.

  3. Wybierz przycisk Dalej , aby przejść do następnego kroku.

Ustawienia reprezentacji bliźniaczej

W tej sekcji zdefiniowano zawartość, która ma zostać ustawiona we właściwościach żądanej reprezentacji urządzenia lub bliźniaczej reprezentacji modułu. Istnieją dwa dane wejściowe dla każdego zestawu ustawień. Pierwsza to ścieżka bliźniaczej reprezentacji, która jest ścieżką do sekcji JSON w żądanych właściwościach bliźniaczej reprezentacji, które zostaną ustawione. Drugi to zawartość JSON, która ma zostać wstawiona w tej sekcji.

Można na przykład ustawić ścieżkę bliźniaczej reprezentacji na properties.desired.chiller-water , a następnie podać następującą zawartość JSON:

{
  "temperature": 66,
  "pressure": 28
}

Screenshot of setting the device or module twin property and json content.

Można również ustawić poszczególne ustawienia, określając całą ścieżkę bliźniaczej reprezentacji i podając wartość bez nawiasów kwadratowych. Na przykład ze ścieżką properties.desired.chiller-water.temperaturebliźniaczej reprezentacji ustaw zawartość na 66. Następnie utwórz nowe ustawienie bliźniaczej reprezentacji dla właściwości ciśnienia.

Jeśli co najmniej dwie konfiguracje dotyczą tej samej ścieżki bliźniaczej, zostanie zastosowana zawartość z konfiguracji o najwyższym priorytcie (priorytet jest definiowany w kroku 4).

Jeśli chcesz usunąć istniejącą właściwość, określ wartość właściwości na null.

Możesz dodać dodatkowe ustawienia, wybierając pozycję Dodaj ustawienie bliźniaczej reprezentacji urządzenia lub Dodaj ustawienie bliźniaczej reprezentacji modułu.

Docelowe urządzenia lub moduły

Użyj właściwości tags z bliźniaczych reprezentacji, aby określić określone urządzenia lub moduły, które powinny otrzymać tę konfigurację. Można również określić właściwości zgłaszane przez bliźniacze reprezentacje bliźniacze.

Automatyczne konfiguracje urządzeń mogą dotyczyć tylko tagów bliźniaczych reprezentacji urządzeń, a automatyczne konfiguracje modułów mogą dotyczyć tylko tagów bliźniaczych reprezentacji modułów.

Ponieważ wiele konfiguracji może być przeznaczonych dla tego samego urządzenia lub modułu, każda konfiguracja wymaga numeru priorytetu. Jeśli kiedykolwiek wystąpi konflikt, konfiguracja z najwyższym priorytetem wygrywa.

  1. Wprowadź dodatnią liczbę całkowitą dla priorytetu konfiguracji. Najwyższa wartość liczbowa jest uważana za najwyższy priorytet. Jeśli dwie konfiguracje mają taki sam numer priorytetu, który został utworzony ostatnio wygrywa.

  2. Wprowadź warunek docelowy, aby określić, które urządzenia lub moduły będą objęte tą konfiguracją. Warunek jest oparty na tagach bliźniaczych lub zgłoszonych właściwościach bliźniaczych reprezentacji i powinien być zgodny z formatem wyrażenia.

    W przypadku automatycznej konfiguracji urządzenia można określić tylko tag lub zgłoszoną właściwość docelową. Na przykład: tags.environment='test' lub properties.reported.chillerProperties.model='4000x'. Można określić, aby wskazać * , że mają być przeznaczone dla wszystkich urządzeń.

    W przypadku automatycznej konfiguracji modułu użyj zapytania, aby określić tagi lub zgłoszone właściwości z modułów zarejestrowanych w centrum IoT. Na przykład: from devices.modules where tags.environment='test' lub from devices.modules where properties.reported.chillerProperties.model='4000x'. Symbol wieloznaczny nie może być używany do określania wartości docelowej wszystkich modułów.

Mierniki

Metryki zawierają liczby podsumowań różnych stanów, które urządzenie lub moduł może zgłaszać z powrotem po zastosowaniu zawartości konfiguracji. Można na przykład utworzyć metrykę dla oczekujących zmian ustawień, metrykę błędów i metrykę dla udanych zmian ustawień.

Każda konfiguracja może mieć maksymalnie pięć metryk niestandardowych.

  1. Wprowadź nazwę metryki.

  2. Wprowadź zapytanie dotyczące kryteriów metryk. Zapytanie jest oparte na zgłoszonych właściwościach bliźniaczej reprezentacji urządzenia. Metryka reprezentuje liczbę wierszy zwracanych przez zapytanie.

    Przykład:

    SELECT deviceId FROM devices 
      WHERE properties.reported.chillerWaterSettings.status='pending'
    

    Możesz uwzględnić klauzulę, która została zastosowana, na przykład:

    /* Include the double brackets. */
    SELECT deviceId FROM devices 
      WHERE configurations.[[yourconfigname]].status='Applied'
    

    Jeśli tworzysz metrykę do raportowania skonfigurowanych modułów, wybierz pozycję moduleId .devices.modules Przykład:

    SELECT deviceId, moduleId FROM devices.modules
      WHERE properties.reported.lastDesiredStatus.code = 200
    

Przejrzyj konfigurację

Przejrzyj informacje o konfiguracji, a następnie wybierz pozycję Prześlij.

Monitorowanie konfiguracji

Aby wyświetlić szczegóły konfiguracji i monitorować uruchomione urządzenia, wykonaj następujące kroki:

  1. W witrynie Azure Portal przejdź do centrum IoT Hub.

  2. Wybierz pozycję Konfiguracje w obszarze Zarządzanie urządzeniami.

  3. Sprawdź listę konfiguracji. Dla każdej konfiguracji można wyświetlić następujące szczegóły:

    • ID — nazwa konfiguracji.

    • Warunek docelowy — zapytanie używane do definiowania docelowych urządzeń lub modułów.

    • Priorytet — numer priorytetu przypisany do konfiguracji.

    • Czas tworzenia — sygnatura czasowa od momentu utworzenia konfiguracji. Ten znacznik czasu służy do przerywania więzi, gdy dwie konfiguracje mają ten sam priorytet.

    • Metryki systemowe — metryki obliczane przez usługę IoT Hub i nie mogą być dostosowane przez deweloperów. Cel określa liczbę bliźniaczych reprezentacji urządzeń, które są zgodne z warunkiem docelowym. Stosuje określoną liczbę bliźniaczych reprezentacji urządzeń, które zostały zmodyfikowane przez konfigurację, co może obejmować częściowe modyfikacje w przypadku, gdy oddzielna, wyższa konfiguracja również wprowadzi zmiany.

    • Metryki niestandardowe — metryki określone przez dewelopera jako zapytania dotyczące zgłoszonych właściwości bliźniaczej reprezentacji. Na konfigurację można zdefiniować maksymalnie pięć metryk niestandardowych.

  4. Wybierz konfigurację, którą chcesz monitorować.

  5. Sprawdź szczegóły konfiguracji. Za pomocą kart można wyświetlić szczegółowe informacje o urządzeniach, które odebrały konfigurację.

    • Urządzenia docelowe lub moduły docelowe — urządzenia lub moduły zgodne z warunkiem docelowym.

    • Metryki — lista metryk systemowych i metryk niestandardowych. Możesz wyświetlić listę urządzeń lub modułów, które są liczone dla każdej metryki, wybierając metrykę z listy rozwijanej, a następnie wybierając pozycję Wyświetl urządzenia lub Wyświetl moduły.

    • Etykiety — pary klucz-wartość używane do opisywania konfiguracji. Etykiety nie mają wpływu na funkcjonalność.

    • Ustawienia bliźniaczej reprezentacji urządzenia lub bliźniaczej reprezentacji modułu Ustawienia — ustawienia bliźniaczej reprezentacji ustawione przez konfigurację, jeśli istnieją.

Modyfikowanie konfiguracji

Podczas modyfikowania konfiguracji zmiany są natychmiast replikowane do wszystkich docelowych urządzeń lub modułów.

Jeśli zaktualizujesz warunek docelowy, wystąpią następujące aktualizacje:

  • Jeśli bliźniaka nie spełnia starego warunku docelowego, ale spełnia nowy warunek docelowy, a ta konfiguracja jest najwyższym priorytetem dla tej reprezentacji bliźniaczej, zostanie zastosowana ta konfiguracja.

  • Jeśli obecnie uruchomiona ta konfiguracja bliźniaczej reprezentacji nie spełnia już warunku docelowego, ustawienia z konfiguracji zostaną usunięte, a bliźniacy zostaną zmodyfikowane przez kolejną konfigurację o najwyższym priorytecie.

  • Jeśli obecnie uruchomiona ta konfiguracja bliźniaczej reprezentacji nie spełnia już warunku docelowego i nie spełnia warunków docelowych innych konfiguracji, ustawienia z konfiguracji zostaną usunięte i żadne inne zmiany nie zostaną wprowadzone w bliźniaczej reprezentacji.

Aby zmodyfikować konfigurację, wykonaj następujące kroki:

  1. W witrynie Azure Portal przejdź do centrum IoT Hub.

  2. Wybierz pozycję Konfiguracje i wdrożenia w obszarze Zarządzanie urządzeniami.

  3. Wybierz konfigurację, którą chcesz zmodyfikować.

  4. Aktualizacje można wprowadzić w następujących polach:

    • Priorytet
    • Mierniki
    • Warunek docelowy
    • Etykiety
  5. Wybierz pozycję Zapisz.

  6. Wykonaj kroki opisane w temacie Monitorowanie konfiguracji , aby obejrzeć wprowadzanie zmian.

Usuwanie konfiguracji

Po usunięciu konfiguracji wszystkie bliźniacze reprezentacje urządzeń będą miały kolejną konfigurację o najwyższym priorytcie. Jeśli bliźniacze reprezentacje urządzenia nie spełniają warunku docelowego żadnej innej konfiguracji, nie zostaną zastosowane żadne inne ustawienia.

  1. W witrynie Azure Portal przejdź do centrum IoT Hub.

  2. Wybierz pozycję Konfiguracje i wdrożenia w obszarze Zarządzanie urządzeniami.

  3. Użyj pola wyboru, aby wybrać konfigurację, którą chcesz usunąć.

  4. Wybierz Usuń.

  5. Zostanie wyświetlony monit z prośbą o potwierdzenie.

Następne kroki

W tym artykule przedstawiono sposób konfigurowania i monitorowania urządzeń IoT na dużą skalę.

Aby dowiedzieć się, jak zbiorczo zarządzać tożsamościami urządzeń usługi IoT Hub, zobacz Importowanie i eksportowanie tożsamości urządzeń usługi IoT Hub zbiorczo