Architektura usługi Azure IoT Central
Usługa IoT Central to gotowe środowisko, które umożliwia szybkie ocenianie scenariusza IoT. Jest to rozwiązanie IoT platformy aplikacji jako usługi (aPaaS), a jego podstawowy interfejs to internetowy interfejs użytkownika. Istnieje również interfejs API REST, który umożliwia programową interakcję z aplikacją.
Ten artykuł zawiera omówienie kluczowych elementów architektury rozwiązania usługi IoT Central.
Kluczowe możliwości w aplikacji usługi IoT Central obejmują:
Zarządzanie urządzeniami
Usługa IoT Central umożliwia zarządzanie flotą urządzeń IoT, które wysyłają dane do rozwiązania. Można na przykład:
- Kontrolowanie, które urządzenia mogą łączyć się z aplikacją i jak się uwierzytelniają.
- Użyj szablonów urządzeń, aby zdefiniować typy urządzeń, które mogą łączyć się z aplikacją.
- Zarządzaj urządzeniami, ustawiając właściwości lub wywołując polecenia na połączonych urządzeniach. Na przykład ustaw właściwość temperatury docelowej dla urządzenia termostatu lub wywołaj polecenie, aby wyzwolić urządzenie w celu zaktualizowania jego oprogramowania układowego. Możesz ustawić właściwości i wywołać polecenia w następujących poleceniach:
- Poszczególne urządzenia za pomocą dostosowywalnego internetowego interfejsu użytkownika.
- Wiele urządzeń z zaplanowanymi lub na żądanie zadaniami.
- Zachowaj metadane urządzenia, takie jak adres klienta lub data ostatniej usługi.
Wyświetlanie i analizowanie danych
W aplikacji usługi IoT Central można wyświetlać i analizować dane dla poszczególnych urządzeń lub zagregowanych danych z wielu urządzeń:
- Użyj mapowania , aby przekształcić złożone dane telemetryczne urządzenia w dane ustrukturyzowane wewnątrz usługi IoT Central.
- Szablony urządzeń umożliwiają definiowanie widoków niestandardowych dla poszczególnych urządzeń określonych typów. Na przykład możesz wykreślić temperaturę w czasie dla pojedynczego termostatu lub pokazać lokalizację na żywo ciężarówki dostawcy.
- Użyj wbudowanej analizy , aby wyświetlić zagregowane dane dla wielu urządzeń. Na przykład możesz zobaczyć łączną zajętość w wielu sklepach detalicznych lub zidentyfikować sklepy o najwyższych lub najniższych stawkach zajętości.
- Tworzenie niestandardowych pulpitów nawigacyjnych ułatwia zarządzanie urządzeniami. Możesz na przykład dodawać mapy, kafelki i wykresy, aby wyświetlać dane telemetryczne urządzenia.
Zabezpiecz swoje rozwiązanie
W usłudze IoT Central można skonfigurować zabezpieczenia i zarządzać nimi w następujących obszarach:
- Dostęp użytkownika do aplikacji.
- Dostęp urządzenia do aplikacji.
- Programowy dostęp do aplikacji.
- Uwierzytelnianie do innych usług z aplikacji.
- Dzienniki inspekcji śledzą aktywność w aplikacji.
Aby dowiedzieć się więcej, zobacz Przewodnik po zabezpieczeniach usługi IoT Central.
Urządzenia
Urządzenia zbierają dane z czujników, które mają być wysyłane jako strumień danych telemetrycznych do aplikacji usługi IoT Central. Na przykład jednostka chłodząca wysyła strumień wartości temperatury lub przesyła strumieniowo jego lokalizację ciężarówki dostawcy.
Urządzenie może używać właściwości do raportowania jego stanu, na przykład tego, czy zawór jest otwarty, czy zamknięty. Aplikacja usługi IoT Central może również używać właściwości do ustawiania stanu urządzenia, na przykład ustawiania temperatury docelowej dla termostatu.
Usługa IoT Central może również kontrolować urządzenia, wywołując polecenia na urządzeniu. Na przykład poinstruowanie urządzenia o pobraniu i zainstalowaniu aktualizacji oprogramowania układowego.
Dane telemetryczne, właściwości i polecenia implementowane przez urządzenie są wspólnie nazywane możliwościami urządzenia. Te możliwości definiuje się w modelu, który udostępnia urządzenie i aplikację usługi IoT Central. W usłudze IoT Central ten model jest częścią szablonu urządzenia, który definiuje określony typ urządzenia. Aby dowiedzieć się więcej, zobacz Przypisywanie urządzenia do szablonu urządzenia.
Implementacja urządzenia powinna być zgodna z konwencjami IoT Plug and Play, aby upewnić się, że może komunikować się z usługą IoT Central. Aby uzyskać więcej informacji, zobacz różne zestawy SDK i przykłady języka.
Urządzenia łączą się z usługą IoT Central przy użyciu jednego z obsługiwanych protokołów: MQTT, AMQP lub HTTP.
Bramy
Urządzenia bramy lokalnej są przydatne w kilku scenariuszach, takich jak:
- Urządzenia nie mogą łączyć się bezpośrednio z usługą IoT Central, ponieważ nie mogą łączyć się z Internetem. Na przykład może istnieć kolekcja czujników zajętości z obsługą połączenia Bluetooth, które muszą łączyć się za pośrednictwem urządzenia bramy.
- Ilość danych generowanych przez urządzenia jest wysoka. Aby zmniejszyć koszty, połącz lub zagreguj dane w bramie lokalnej przed wysłaniem ich do aplikacji usługi IoT Central.
- Rozwiązanie wymaga szybkich odpowiedzi na anomalie w danych. Reguły można uruchamiać na urządzeniu bramy identyfikującym anomalie i podjąć akcję lokalnie bez konieczności wysyłania danych do aplikacji usługi IoT Central.
Urządzenia bramy zwykle wymagają większej mocy obliczeniowej niż urządzenie autonomiczne. Jedną z opcji implementacji urządzenia bramy jest użycie usługi Azure IoT Edge i zastosowanie jednego ze standardowych wzorców bramy usługi IoT Edge. Możesz również uruchomić własny niestandardowy kod bramy na odpowiednim urządzeniu.
Eksportowanie danych
Mimo że usługa IoT Central ma wbudowane funkcje analityczne, można eksportować dane do innych usług i aplikacji.
Przekształcenia w definicji eksportu danych usługi IoT Central umożliwiają manipulowanie formatem i strukturą danych urządzenia przed wyeksportowaniem ich do miejsca docelowego.
Przyczyny eksportowania danych obejmują:
Magazyn i analiza
W przypadku długoterminowego przechowywania i kontroli nad zasadami archiwizacji i przechowywania można stale eksportować dane do innych miejsc docelowych magazynu. Korzystanie z oddzielnej usługi magazynu poza usługą IoT Central umożliwia korzystanie z innych narzędzi analitycznych do uzyskiwania szczegółowych informacji z danych w rozwiązaniu.
Automatyzacja biznesowa
Reguły w usłudze IoT Central umożliwiają wyzwalanie akcji zewnętrznych, takich jak wysyłanie wiadomości e-mail lub wyzwalanie zdarzenia w odpowiedzi na warunki w usłudze IoT Central. Możesz na przykład powiadomić inżyniera, jeśli temperatura otoczenia urządzenia osiągnie próg.
Dodatkowe obliczenia
Może być konieczne przekształcenie lub wykonanie obliczeń na danych, zanim będzie można ich używać w usłudze IoT Central lub innej usłudze . Można na przykład dodać lokalne informacje o pogodzie do danych lokalizacji zgłoszonych przez ciężarówkę dostawczą.
Rozszerzanie przy użyciu interfejsu API REST
Tworzenie integracji, które umożliwiają innym aplikacjom i usługom zarządzanie aplikacją. Na przykład programowe zarządzanie urządzeniami w aplikacji lub synchronizowanie informacji o użytkowniku z systemem zewnętrznym.
Skalowalność
Aplikacje usługi IoT Central używają wewnętrznie wielu usług platformy Azure, takich jak IoT Hub i Device Provisioning Service (DPS). Wiele z tych podstawowych usług jest wielodostępnych. Jednak w celu zapewnienia pełnej izolacji danych klientów usługa IoT Central korzysta z centrów IoT Hub z jedną dzierżawą.
Usługa IoT Central automatycznie skaluje swoje centra IoT na podstawie profilów ładowania w aplikacji. Usługa IoT Central może skalować poszczególne centra IoT w górę i skalować w poziomie liczbę centrów IoT w aplikacji. Usługa IoT Central automatycznie skaluje również inne usługi bazowe.
Eksport danych
Aplikacje usługi IoT Central często używają innych usług skonfigurowanych przez użytkowników. Można na przykład skonfigurować aplikację usługi IoT Central w celu ciągłego eksportowania danych do usług, takich jak Azure Event Hubs i Azure Blob Storage.
Jeśli skonfigurowany eksport danych nie może zapisywać w miejscu docelowym, usługa IoT Central próbuje ponownie przesłać dane przez maksymalnie 15 minut, po czym usługa IoT Central oznacza miejsce docelowe jako nieudane. Miejsca docelowe, które zakończyły się niepowodzeniem, są okresowo sprawdzane, aby sprawdzić, czy można je zapisywać.
Możesz wymusić, aby usługa IoT Central ponownie uruchomiła eksporty, które zakończyły się niepowodzeniem, wyłączając i ponownie włączając eksport danych.
Zapoznaj się z najlepszymi rozwiązaniami dotyczącymi wysokiej dostępności i skalowalności dla używanej usługi docelowej eksportu danych:
- Azure Blob Storage: lista kontrolna dotycząca nadmiarowości i wydajności i skalowalności usługi Azure Storage dla usługi Blob Storage
- Azure Event Hubs: dostępność i spójność w usłudze Event Hubs oraz skalowanie za pomocą usługi Event Hubs
- Azure Service Bus: najlepsze rozwiązania dotyczące izolowania aplikacji przed awariami i awariami usługi Service Bus oraz automatyczne aktualizowanie jednostek obsługi komunikatów przestrzeni nazw usługi Azure Service Bus
Wysoka dostępność i odzyskiwanie po awarii
Możliwości usługi HADR zależą od momentu utworzenia aplikacji usługi IoT Central:
Aplikacje utworzone przed kwietniem 2021 r.
Niektóre aplikacje utworzone przed kwietniem 2021 r. używają pojedynczego centrum IoT. W przypadku tych aplikacji usługa IoT Central nie zapewnia funkcji HADR. Jeśli centrum IoT stanie się niedostępne, aplikacja stanie się niedostępna.
az iot central device manual-failover
Użyj polecenia , aby sprawdzić, czy aplikacja nadal używa pojedynczego centrum IoT. To polecenie zwraca błąd, jeśli aplikacja ma pojedyncze centrum IoT.
Aplikacje utworzone po kwietniu 2021 r. i przed kwietniem 2023 r.
W przypadku łączności urządzeń o wysokiej dostępności aplikacja usługi IoT Central zawsze ma co najmniej dwa centra IoT. Liczba centrów może rosnąć lub zmniejszać, ponieważ usługa IoT Central skaluje aplikację w odpowiedzi na zmiany w profilu obciążenia.
Usługa IoT Central używa również stref dostępności do udostępniania różnych usług, które korzystają z wysokiej dostępności.
Zdarzenie, które wymaga odzyskiwania po awarii, może wahać się od podzbioru usług, które stają się niedostępne dla całego regionu. Usługa IoT Central jest zgodna z różnymi procesami odzyskiwania w zależności od charakteru i skali zdarzenia. Jeśli na przykład cały region świadczenia usługi Azure stanie się niedostępny w wyniku katastrofalnego błędu, procedury odzyskiwania po awarii przełączą aplikacje w tryb failover do innego regionu w tej samej lokalizacji geograficznej.
Aplikacje utworzone po kwietniu 2023 r.
Aplikacje usługi IoT Central utworzone po kwietniu 2023 r. początkowo mają pojedyncze centrum IoT. Jeśli centrum IoT stanie się niedostępne, aplikacja stanie się niedostępna. Jednak usługa IoT Central automatycznie skaluje aplikację i dodaje nowe centrum IoT dla każdego 10 000 połączonych urządzeń. Jeśli potrzebujesz wielu centrów IoT dla aplikacji z mniej niż 10 000 urządzeń, prześlij żądanie do działu pomocy technicznej usługi IoT Central.
Użyj polecenia , az iot central device manual-failover
aby sprawdzić, czy aplikacja aktualnie używa pojedynczego centrum IoT. To polecenie zwraca błąd, jeśli aplikacja ma obecnie pojedyncze centrum IoT.