Wdrażanie modułów usługi IoT Edge na dużą skalę przy użyciu witryny Azure Portal
Dotyczy: IoT Edge 1.5 IoT Edge 1.4
Ważne
Obsługiwane są wersje usługi IoT Edge 1.5 LTS i IoT Edge 1.4 LTS. Usługa IoT Edge 1.4 LTS kończy się 12 listopada 2024 r. Jeśli korzystasz z wcześniejszej wersji, zobacz aktualizację Azure IoT Edge.
Utwórz automatyczne wdrożenie usługi IoT Edge w witrynie Azure Portal, aby zarządzać trwającymi wdrożeniami dla wielu urządzeń jednocześnie. Wdrożenia automatyczne dla usługi IoT Edge są częścią funkcji zarządzania urządzeniami w usłudze IoT Hub. Wdrożenia to dynamiczne procesy, które umożliwiają wdrażanie wielu modułów na wielu urządzeniach, śledzenie stanu i kondycji modułów oraz wprowadzanie zmian w razie potrzeby.
Aby uzyskać więcej informacji, zobacz Omówienie automatycznych wdrożeń usługi IoT Edge dla pojedynczych urządzeń lub na dużą skalę.
Identyfikowanie urządzeń przy użyciu tagów
Przed utworzeniem wdrożenia musisz mieć możliwość określenia, które urządzenia mają mieć wpływ. Usługa Azure IoT Edge identyfikuje urządzenia przy użyciu tagów w bliźniaczej reprezentacji urządzenia. Każde urządzenie może mieć wiele tagów zdefiniowanych w dowolny sposób, co ma sens dla danego rozwiązania.
Jeśli na przykład zarządzasz kampusem inteligentnych budynków, możesz dodać lokalizację, typ pokoju i tagi środowiska do urządzenia:
"tags":{
"location":{
"building": "20",
"floor": "2"
},
"roomtype": "conference",
"environment": "prod"
}
Aby uzyskać więcej informacji na temat bliźniaczych reprezentacji urządzeń i tagów, zobacz Omówienie bliźniaczych reprezentacji urządzeń i korzystanie z nich w usłudze IoT Hub.
Tworzenie wdrożenia
Usługa IoT Edge udostępnia dwa różne typy wdrożeń automatycznych, których można użyć do dostosowania scenariusza. Możesz utworzyć standardowe wdrożenie, w tym moduły środowiska uruchomieniowego systemu i wszystkie dodatkowe moduły i trasy. Każde urządzenie może stosować tylko jedno wdrożenie. Możesz też utworzyć wdrożenie warstwowe, które obejmuje tylko niestandardowe moduły i trasy, a nie środowisko uruchomieniowe systemu. Wiele wdrożeń warstwowych można łączyć na urządzeniu, w oparciu o standardowe wdrożenie. Aby uzyskać więcej informacji na temat współdziałania dwóch typów wdrożeń automatycznych, zobacz Omówienie wdrożeń automatycznych usługi IoT Edge dla pojedynczych urządzeń lub na dużą skalę.
Kroki tworzenia wdrożenia i wdrożenia warstwowego są podobne. Wszelkie różnice są wywoływane w poniższych krokach.
- W witrynie Azure Portal przejdź do centrum IoT Hub.
- W menu w okienku po lewej stronie wybierz pozycję Konfiguracje i wdrożenia w obszarze Zarządzanie urządzeniami.
- Na górnym pasku wybierz pozycję Dodaj>wdrożenie lub Dodaj wdrożenie warstwowe.
Istnieje pięć kroków tworzenia wdrożenia. W poniższych sekcjach opisano poszczególne sekcje.
Uwaga
Kroki opisane w tym artykule odzwierciedlają najnowszą wersję schematu agenta i centrum usługi IoT Edge.
Jeśli wdrażasz na urządzeniu w wersji 1.0.9 lub starszej, edytuj ustawienia środowiska uruchomieniowego w kroku Moduły kreatora, aby użyć schematu w wersji 1.0.
Krok 1. Nazwa i etykieta
- Nadaj wdrożeniu unikatową nazwę, która ma maksymalnie 128 małych liter. Unikaj spacji i następujących nieprawidłowych znaków:
& ^ [ ] { } \ | " < > /
. - Możesz dodawać etykiety jako pary klucz-wartość, aby ułatwić śledzenie wdrożeń. Na przykład HostPlatform i Linux lub Wersja i 3.0.1.
- Wybierz pozycję Dalej: Moduły , aby przejść do kroku drugiego.
Krok 2. Moduły
Do wdrożenia można dodać maksymalnie 50 modułów. Jeśli tworzysz wdrożenie bez modułów, usuwa wszystkie bieżące moduły z urządzeń docelowych.
We wdrożeniach można zarządzać ustawieniami agenta usługi IoT Edge i modułów centrum usługi IoT Edge. Wybierz pozycję Ustawienia środowiska uruchomieniowego, aby skonfigurować dwa moduły środowiska uruchomieniowego. W przypadku wdrożenia warstwowego moduły środowiska uruchomieniowego nie są uwzględniane, więc nie można ich skonfigurować.
Aby dodać kod niestandardowy jako moduł lub ręcznie dodać moduł usługi platformy Azure, wykonaj następujące kroki:
W sekcji Ustawienia rejestru kontenerów na stronie podaj poświadczenia umożliwiające dostęp do jakichkolwiek prywatnych rejestrów kontenerów zawierających obrazy modułów.
W sekcji Moduły usługi IoT Edge na stronie wybierz pozycję Dodaj.
Wybierz jeden z typów modułów z menu rozwijanego:
- Moduł usługi IoT Edge — podaj nazwę modułu i identyfikator URI obrazu kontenera. Na przykład identyfikator URI obrazu dla przykładowego modułu SimulatedTemperatureSensor to
mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:1.0
. Aby uzyskać listę obrazów modułów usługi Microsoft IoT Edge, zobacz Rejestr Artefaktów Microsoft. - Moduł usługi Azure Stream Analytics — moduły generowane na podstawie obciążenia usługi Azure Stream Analytics.
- Moduł usługi IoT Edge — podaj nazwę modułu i identyfikator URI obrazu kontenera. Na przykład identyfikator URI obrazu dla przykładowego modułu SimulatedTemperatureSensor to
W razie potrzeby powtórz kroki 2 i 3, aby dodać dodatkowe moduły do wdrożenia.
Po dodaniu modułu do wdrożenia możesz wybrać jego nazwę, aby otworzyć stronę Aktualizowanie modułu usługi IoT Edge. Na tej stronie możesz edytować ustawienia modułu, zmienne środowiskowe, opcje tworzenia, kolejność uruchamiania i bliźniacze reprezentacje modułu. Jeśli moduł został dodany z witryny Marketplace, może już zawierać niektóre z tych parametrów. Aby uzyskać więcej informacji na temat dostępnych ustawień modułu, zobacz Konfiguracja modułu i zarządzanie nim.
Jeśli tworzysz wdrożenie warstwowe, możesz skonfigurować moduł, który istnieje w innych wdrożeniach przeznaczonych dla tych samych urządzeń. Aby zaktualizować bliźniacze reprezentacje modułu bez zastępowania innych wersji, otwórz kartę Ustawienia bliźniaczej reprezentacji modułu. Utwórz nową właściwość bliźniaczej reprezentacji modułu o unikatowej nazwie podsekcji w żądanych właściwościach bliźniaczej reprezentacji modułu, na przykład properties.desired.settings
. Jeśli zdefiniujesz właściwości tylko w properties.desired
polu, zastępuje żądane właściwości modułu zdefiniowanego we wszystkich wdrożeniach o niższym priorytcie.
Aby uzyskać więcej informacji na temat konfiguracji bliźniaczej reprezentacji modułu we wdrożeniach warstwowych, zobacz Wdrażanie warstwowe.
Po skonfigurowaniu wszystkich modułów dla wdrożenia wybierz pozycję Dalej: Trasy , aby przejść do kroku trzeciego.
Krok 3. Trasy
Na karcie Trasy zdefiniujesz sposób przekazywania komunikatów między modułami a usługą IoT Hub. Komunikaty są tworzone przy użyciu par nazwa/wartość.
Na przykład trasa z trasą nazw i wartością FROM /messages/* INTO $upstream będzie przyjmować wszystkie komunikaty wyjściowe przez wszystkie moduły i wysyłać je do centrum IoT.
Parametry Priorytet i Czas wygaśnięcia to parametry opcjonalne, które można uwzględnić w definicji trasy. Parametr priorytetu umożliwia wybranie tras, które powinny mieć przetworzone komunikaty jako pierwsze lub które trasy powinny być przetwarzane ostatnio. Priorytet jest określany przez ustawienie liczby 0–9, gdzie 0 jest priorytetem. Czas wygaśnięcia parametru umożliwia zadeklarowanie, jak długo komunikaty w tej trasie powinny być przechowywane, dopóki nie zostaną przetworzone lub usunięte z kolejki.
Aby uzyskać więcej informacji na temat tworzenia tras, zobacz Deklarowanie tras.
Wybierz pozycję Dalej: Urządzenia docelowe.
Krok 4. Docelowe urządzenia
Użyj właściwości tags z urządzeń, aby określić konkretne urządzenia, które powinny otrzymać to wdrożenie.
Ponieważ wiele wdrożeń może być przeznaczonych dla tego samego urządzenia, należy nadać każdemu wdrożeniu numer priorytetu. Jeśli kiedykolwiek wystąpi konflikt, wdrożenie z najwyższym priorytetem (większe wartości wskazują wyższy priorytet) wygrywa. Jeśli dwa wdrożenia mają ten sam numer priorytetu, ten, który został utworzony ostatnio wygrywa.
Jeśli wiele wdrożeń jest przeznaczonych dla tego samego urządzenia, zostanie zastosowany tylko jeden z wyższym priorytetem. Jeśli wiele wdrożeń warstwowych jest przeznaczonych dla tego samego urządzenia, zostaną one zastosowane. Jeśli jednak jakiekolwiek właściwości są zduplikowane, na przykład jeśli istnieją dwie trasy o tej samej nazwie, to jeden z wdrożenia warstwowego wyższego priorytetu zastępuje resztę.
Każde wdrożenie warstwowe przeznaczone dla urządzenia musi mieć wyższy priorytet niż wdrożenie podstawowe w celu zastosowania.
- Wprowadź dodatnią liczbę całkowitą dla priorytetu wdrożenia.
- Wprowadź warunek docelowy, aby określić, które urządzenia są objęte tym wdrożeniem. Warunek jest oparty na tagach bliźniaczych reprezentacji urządzenia lub zgłoszonych właściwościach bliźniaczej reprezentacji urządzenia i powinien być zgodny z formatem wyrażenia. Na przykład:
tags.environment='test'
lubproperties.reported.devicemodel='4000x'
.
Wybierz pozycję Dalej: Metryki.
Krok 5. Metryki
Metryki zawierają liczby podsumowań różnych stanów, które urządzenie może zgłaszać z powrotem w wyniku zastosowania zawartości konfiguracji.
Wprowadź nazwę metryki.
Wprowadź zapytanie dotyczące kryteriów metryk. Zapytanie jest oparte na zgłoszonych właściwościach bliźniaczej reprezentacji modułu usługi IoT Edge. Metryka reprezentuje liczbę wierszy zwracanych przez zapytanie.
Na przykład:
SELECT deviceId FROM devices WHERE properties.reported.lastDesiredStatus.code = 200
Wybierz pozycję Dalej: Przejrzyj i utwórz , aby przejść do ostatniego kroku.
Krok 6. Przeglądanie i tworzenie
Przejrzyj informacje o wdrożeniu, a następnie wybierz pozycję Utwórz.
Aby monitorować wdrożenie, zobacz Monitorowanie wdrożeń usługi IoT Edge.
Uwaga
Po utworzeniu nowego wdrożenia usługi IoT Edge może upłynąć do 5 minut, aby usługa IoT Hub przetworzyła nową konfigurację i propagowała nowe żądane właściwości do urządzeń docelowych.
Modyfikowanie wdrożenia
Podczas modyfikowania wdrożenia zmiany są natychmiast replikowane do wszystkich urządzeń docelowych. Możesz zmodyfikować następujące ustawienia i funkcje dla istniejącego wdrożenia:
- Warunki docelowe
- Metryki niestandardowe
- Etykiety
- Tagi
- Żądane właściwości
Modyfikowanie warunków docelowych, metryk niestandardowych i etykiet
W centrum IoT wybierz pozycję Konfiguracje i wdrożenia z menu okienka po lewej stronie.
Wybierz wdrożenie, które chcesz skonfigurować.
Wybierz kartę Urządzenia docelowe. Zmień warunek docelowy na docelowe urządzenia. Można również dostosować priorytet.
Jeśli zaktualizujesz warunek docelowy, wystąpią następujące aktualizacje:
- Jeśli urządzenie nie spełnia starego warunku docelowego, ale spełnia nowy warunek docelowy, a to wdrożenie jest najwyższym priorytetem dla tego urządzenia, to wdrożenie jest stosowane do urządzenia.
- Jeśli urządzenie, na którym jest obecnie uruchomione to wdrożenie, nie spełnia już warunku docelowego, odinstaluje to wdrożenie i zajmie następne wdrożenie o najwyższym priorytcie.
- Jeśli urządzenie aktualnie uruchomione w tym wdrożeniu nie spełnia już warunku docelowego i nie spełnia warunku docelowego innych wdrożeń, na urządzeniu nie nastąpi żadna zmiana. Urządzenie kontynuuje uruchamianie bieżących modułów w bieżącym stanie, ale nie jest już zarządzane w ramach tego wdrożenia. Gdy spełnia ona warunek docelowy każdego innego wdrożenia, odinstalowuje to wdrożenie i przejmuje nowe.
Wybierz kartę Metryki i wybierz przycisk Edytuj metryki . Dodaj lub zmodyfikuj metryki niestandardowe przy użyciu przykładowej składni jako przewodnika. Wybierz pozycję Zapisz.
Wybierz kartę Etykiety i wprowadź żądane zmiany, a następnie wybierz pozycję Zapisz.
Usuwanie wdrożenia
Po usunięciu wdrożenia wszystkie wdrożone urządzenia przyjmują kolejne wdrożenie o najwyższym priorytcie. Jeśli urządzenia nie spełniają warunku docelowego innego wdrożenia, moduły nie zostaną usunięte po usunięciu wdrożenia.
- Zaloguj się do witryny Azure Portal i przejdź do usługi IoT Hub.
- Wybierz pozycję Konfiguracje i wdrożenia.
- Użyj pola wyboru, aby wybrać wdrożenie, które chcesz usunąć.
- Wybierz Usuń.
- Monit informuje o tym, że ta akcja spowoduje usunięcie tego wdrożenia i przywrócenie poprzedniego stanu dla wszystkich urządzeń. Wdrożenie o niższym priorytcie zostanie zastosowane. Jeśli żadne inne wdrożenie nie jest celem, żadne moduły nie zostaną usunięte. Jeśli chcesz usunąć wszystkie moduły z urządzenia, utwórz wdrożenie z modułami zerowymi i wdróż je na tych samych urządzeniach. Wybierz przycisk Tak, aby kontynuować.
Następne kroki
Dowiedz się więcej o wdrażaniu modułów na urządzeniach usługi IoT Edge.