Udostępnij za pośrednictwem


Aprowizuj aktualizację urządzenia platformy Azure dla agenta usługi IoT Hub

Agent modułu Device Update może działać wraz z innymi procesami systemowymi i modułami usługi IoT Edge, które łączą się z usługą IoT Hub w ramach tego samego urządzenia logicznego. W tym artykule opisano sposób aprowizowania agenta usługi Device Update jako tożsamości modułu.

Uwaga

Jeśli używasz agenta aktualizacji urządzeń, upewnij się, że korzystasz z wersji 1.0.0 ogólnej dostępności (GA). Zainstalowane wersje agenta aktualizacji urządzeń i agenta optymalizacji dostarczania można sprawdzić w sekcji właściwości bliźniaczej reprezentacji urządzenia IoT. Aby uzyskać więcej informacji, zobacz Migrowanie urządzeń i grup do najnowszej wersji usługi Device Update.

Tożsamość modułu i tożsamość urządzenia

W ramach każdej tożsamości urządzenia usługi Azure IoT Hub można utworzyć maksymalnie 50 tożsamości modułów. Każda tożsamość modułu niejawnie generuje bliźniacze reprezentację tożsamości modułu. Po stronie urządzenia można użyć zestawów SDK urządzeń usługi IoT Hub, aby utworzyć moduły, które otwierają niezależne połączenie z usługą IoT Hub.

Reprezentacja tożsamości modułu i tożsamości modułu zapewniają podobne możliwości do tożsamości urządzenia i bliźniaczej reprezentacji urządzenia, ale z bardziej szczegółowymi możliwościami. Aby uzyskać więcej informacji, zobacz Omówienie bliźniaczych reprezentacji modułów i korzystanie z nich w usłudze IoT Hub.

Podczas aprowizowania agenta usługi Device Update jako tożsamości modułu cała komunikacja między urządzeniem a usługą Device Update musi odbywać się za pośrednictwem bliźniaczej reprezentacji modułu. Pamiętaj, aby oznaczyć bliźniacze reprezentację modułu urządzenia podczas tworzenia grup urządzeń. W przypadku migracji z agenta na poziomie urządzenia w celu dodania agenta jako tożsamości modułu usuń starszego agenta, który komunikował się za pośrednictwem bliźniaczej reprezentacji urządzenia.

Obsługiwane typy aktualizacji

Usługa Device Update obsługuje następujące urządzenie IoT za pośrednictwem typów aktualizacji powietrza:

Przygotowanie do aktualizacji pakietów

Aby skonfigurować urządzenie IoT lub urządzenie usługi IoT Edge w celu zainstalowania aktualizacji opartych na pakiecie, dodaj packages.microsoft.com je do repozytoriów maszyny, wykonując następujące kroki:

  1. Otwórz okno terminalu na maszynie lub urządzeniu IoT, na którym chcesz zainstalować agenta usługi Device Update.

  2. Zainstaluj konfigurację repozytorium zgodną z systemem operacyjnym urządzenia, na przykład:

    curl https://packages.microsoft.com/config/ubuntu/18.04/multiarch/prod.list > ./microsoft-prod.list
    
  3. Skopiuj wygenerowaną listę do katalogu sources.list.d .

    sudo cp ./microsoft-prod.list /etc/apt/sources.list.d/
    
  4. Zainstaluj klucz publiczny GG firmy Microsoft.

    curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
    
    sudo cp ./microsoft.gpg /etc/apt/trusted.gpg.d/
    

Aprowizuj agenta usługi Device Update

Agenta usługi Device Update można aprowizować jako tożsamość modułu na urządzeniach z włączoną usługą IoT Edge lub urządzeniach IoT edge spoza usługi IoT Edge. Aby sprawdzić, czy na urządzeniu włączono usługę IoT Edge, zobacz Wyświetlanie zarejestrowanych urządzeń i pobieranie informacji o aprowizacji.

Przykładowe obrazy można pobrać do użycia z sekcji Zasoby na stronie Wydania . W Tutorial_RaspberryPi3.zip plik swUpdate jest obrazem podstawowym, który można migać na płytę Raspberry Pi B3+. Plik .gz to aktualizacja, którą można zaimportować za pośrednictwem usługi Device Update. Aby uzyskać więcej informacji, zobacz Azure Device Update for IoT Hub using a Raspberry Pi image (Usługa Azure Device Update dla usługi IoT Hub przy użyciu obrazu urządzenia Raspberry Pi).

Na urządzeniach z włączoną usługą IoT Edge

Postępuj zgodnie z tymi instrukcjami, aby aprowizować agenta usługi Device Update na urządzeniach z włączoną usługą IoT Edge:

  1. Postępuj zgodnie z instrukcjami w temacie Ręczne aprowizowanie pojedynczego urządzenia usługi IoT Edge z systemem Linux.

  2. Zainstaluj agenta aktualizacji obrazu usługi Device Update, uruchamiając następujące polecenie:

    sudo apt-get install deviceupdate-agent
    
  3. Zainstaluj agenta aktualizacji pakietu device Update.

    • W przypadku najnowszych wersji agenta z packages.microsoft.com zaktualizuj listy pakietów na urządzeniu i zainstaluj pakiet agenta usługi Device Update oraz jego zależności przy użyciu:

      sudo apt-get update
      
      sudo apt-get install deviceupdate-agent
      
    • W przypadku wersji agenta programu Release Candidate (rc) pobierz plik .deb z wersji na maszynę, na której chcesz zainstalować agenta aktualizacji urządzeń, a następnie uruchom następujące polecenie:

      sudo apt-get install -y ./"<PATH TO FILE>"/"<.DEB FILE NAME>"
      
    • Jeśli konfigurujesz usługę Microsoft Connected Cache (MCC) dla scenariusza odłączonego urządzenia, zainstaluj wtyczkę APT optymalizacji dostarczania w następujący sposób:

      sudo apt-get install deliveryoptimization-plugin-apt
      

Na urządzeniach z włączoną usługą IoT Edge

Postępuj zgodnie z tymi instrukcjami, aby aprowizować agenta usługi Device Update na urządzeniach IoT z systemem Linux bez zainstalowanej usługi IoT Edge.

  1. Zainstaluj najnowszą wersję usługi IoT Identity Service, postępując zgodnie z instrukcjami w temacie Instalowanie usługi azure IoT Identity Service.

  2. Skonfiguruj usługę tożsamości IoT, postępując zgodnie z instrukcjami w temacie Konfigurowanie usługi azure IoT Identity Service.

  3. Zainstaluj agenta usługi Device Update, uruchamiając następujące polecenie:

    sudo apt-get install deviceupdate-agent
    

Uwaga

Jeśli urządzenie IoT nie może uruchomić usługi IoT Identity Service lub IoT Edge, która zawiera pakiet usługi IoT Identity Service, nadal można zainstalować agenta usługi Device Update i skonfigurować go przy użyciu parametry połączenia.

Konfigurowanie agenta usługi Device Update

Po zainstalowaniu agenta aktualizacji urządzenia zmodyfikuj plik konfiguracji usługi Device Update, uruchamiając następujące polecenie.

sudo nano /etc/adu/du-config.json

W pliku du-config.json ustaw wszystkie wartości, które mają Place value here symbol zastępczy. W przypadku agentów, którzy używają usługi tożsamości IoT do aprowizacji, zmień connectionType wartość na AIS, a następnie ustaw ConnectionData pole na pusty ciąg. Przykład można znaleźć w temacie Przykładowa zawartość pliku "du-config.json".

Używanie parametrów połączenia

Na potrzeby testowania lub na urządzeniach ograniczonych można skonfigurować agenta usługi Device Update bez korzystania z usługi tożsamości IoT. Możesz użyć parametry połączenia, aby aprowizować agenta usługi Device Update z poziomu modułu lub urządzenia.

  1. W witrynie Azure Portal skopiuj parametry połączenia podstawową. Jeśli agent usługi Device Update jest skonfigurowany jako tożsamość modułu, skopiuj parametry połączenia podstawowego modułu. W przeciwnym razie skopiuj parametry połączenia podstawowego urządzenia.

  2. W oknie terminalu na maszynie lub urządzeniu IoT, na którym zainstalowano agenta usługi Device Update, zmodyfikuj plik konfiguracji aktualizacji urządzenia, uruchamiając następujące polecenie:

    • W przypadku agenta systemu Ubuntu: sudo nano /etc/adu/du-config.json.
    • Obraz referencyjny yocto: sudo nano /adu/du-config.json.
  3. W pliku du-config.json ustaw wszystkie wartości, które mają symbol zastępczy, i wprowadź skopiowaną Place value here parametry połączenia podstawową connectionData jako wartość pola. Przykład można znaleźć w temacie Przykładowa zawartość pliku "du-config.json".

Uruchamianie agenta usługi Device Update

Uruchom agenta usługi Device Update i sprawdź, czy działa on pomyślnie na urządzeniu.

  1. W oknie terminalu na maszynie lub urządzeniu IoT, na którym zainstalowano agenta usługi Device Update, uruchom ponownie agenta, uruchamiając następujące polecenie:

    sudo systemctl restart deviceupdate-agent
    
  2. Sprawdź stan agenta, uruchamiając następujące polecenie.

    sudo systemctl status deviceupdate-agent
    

    Powinien zostać wyświetlony stan OK.

  3. Na stronie portalu usługi IoT Hub przejdź do pozycji Urządzenia lub usługa IoT Edge , aby znaleźć skonfigurowane urządzenie i wyświetlić agenta usługi Device Update uruchomionego jako moduł. Na przykład:

    Diagram przedstawiający nazwę modułu Device Update z wyświetlonym stanem Połączono.

Włączanie agenta usługi Device Update za serwerem proxy

Urządzenia z agentem usługi Device Update wysyłają żądania HTTPS do komunikacji z usługą IoT Hub. Jeśli urządzenie połączono z siecią korzystającą z serwera proxy, należy skonfigurować usługę systemową Device Update w celu komunikowania się za pośrednictwem serwera.

Przed skonfigurowaniem aktualizacji urządzenia upewnij się, że masz adres URL serwera proxy. Adres URL serwera proxy jest w formacie protocol://proxy_host:proxy_port.

Przejdź do konfiguracji usługi Device Update, uruchamiając następujące polecenie:

sudo systemctl edit deviceupdate-agent.service

Dodawanie szczegółów serwera proxy do konfiguracji

[Service]
Environment="https_proxy=<Proxy URL>"

Uruchom ponownie agenta, aby zastosować zmiany:

sudo systemctl daemon-reload
sudo systemctl restart deviceupdate-agent
sudo systemctl status deviceupdate-agent

Kompilowanie i uruchamianie agenta usługi Device Update

Możesz również skompilować i zmodyfikować własnego niestandardowego agenta usługi Device Update. Postępuj zgodnie z instrukcjami w temacie How To Build the Device Update Agent to build the Device Update Agent from source (Jak skompilować agenta aktualizacji urządzenia), aby skompilować agenta aktualizacji urządzeń ze źródła.

Po pomyślnym skompilowanie agenta wykonaj czynności opisane w sekcji Uruchamianie aktualizacji urządzenia dla agenta referencyjnego usługi IoT Hub, aby uruchomić agenta. Aby wprowadzić zmiany wymagane do uwzględnienia agenta na obrazie, postępuj zgodnie z instrukcjami Modyfikowanie kodu agenta aktualizacji urządzeń.

Rozwiązywanie problemów

Jeśli wystąpią problemy, zapoznaj się z artykułem Device Update for IoT Hub Troubleshooting Guide (Przewodnik rozwiązywania problemów z usługą Device Update for IoT Hub), aby ułatwić rozwiązywanie problemów i zbieranie niezbędnych informacji w celu udostępnienia firmie Microsoft.