Udostępnij za pośrednictwem


Rozwiązywanie problemów z usługą IoT Edge na urządzeniu z procesorem GPU Usługi Azure Stack Edge Pro

DOTYCZY: Tak dla jednostki SKU procesora GPU ProAzure Stack Edge Pro — GPUTak dla jednostki SKU Pro 2Azure Stack Edge Pro 2Tak dla jednostki SKU Pro RAzure Stack Edge Pro R Azure Stack Edge Mini RTak dla jednostki SKU Mini R

W tym artykule opisano sposób rozwiązywania problemów z błędami związanymi z obliczeniami na urządzeniu GPU usługi Azure Stack Edge Pro przez przejrzenie odpowiedzi środowiska uruchomieniowego agenta usługi IoT Edge i błędów dla usługi IoT Edge zainstalowanej na urządzeniu.

Przeglądanie odpowiedzi środowiska uruchomieniowego usługi IoT Edge

Użyj odpowiedzi środowiska uruchomieniowego agenta usługi IoT Edge, aby rozwiązać problemy z błędami związanymi z obliczeniami. Oto lista możliwych odpowiedzi:

  • 200 — OK
  • 400 — Konfiguracja wdrożenia jest źle sformułowana lub nieprawidłowa.
  • 417 — urządzenie nie ma zestawu konfiguracji wdrożenia.
  • 412 — wersja schematu w konfiguracji wdrożenia jest nieprawidłowa.
  • 406 — urządzenie usługi IoT Edge jest w trybie offline lub nie wysyła raportów o stanie.
  • 500 — wystąpił błąd w środowisku uruchomieniowym usługi IoT Edge.

Aby uzyskać więcej informacji, zobacz Agent usługi IoT Edge.

Rozwiązywanie problemów z błędami usługi IoT Edge

Następujące błędy są związane z usługą IoT Edge na urządzeniu z procesorem GPU Usługi Azure Stack Edge Pro.

Moduły obliczeniowe mają nieznany stan i nie można ich używać

Opis błędu

Wszystkie moduły na urządzeniu pokazują nieznany stan i nie można ich używać. Nieznany stan będzie się powtarzać po ponownym uruchomieniu.

Sugerowane rozwiązanie

Usuń usługę IoT Edge, a następnie ponownie wdróż moduły. Aby uzyskać więcej informacji, zobacz Usuwanie usługi IoT Edge.

Moduły są wyświetlane jako uruchomione, ale nie działają

Opis błędu

Stan środowiska uruchomieniowego modułu jest wyświetlany jako uruchomiony, ale nie widzisz oczekiwanych wyników.

Ten warunek może być spowodowany przez konfigurację trasy modułu, która nie działa lub edgehub może nie być routingu komunikatów zgodnie z oczekiwaniami. Możesz sprawdzić dzienniki edgehub . Jeśli widzisz błędy, takie jak niepowodzenie połączenia z usługą IoT Hub, najczęstszym powodem są problemy z łącznością. Problemy z łącznością mogą wystąpić, ponieważ port AMPQ używany przez usługę IoT Hub jako domyślny port komunikacji jest zablokowany lub serwer proxy sieci Web blokuje te komunikaty.

Sugerowane rozwiązanie

Wykonaj następujące czynności:

  1. Aby rozwiązać ten problem, przejdź do zasobu usługi IoT Hub dla urządzenia, a następnie wybierz urządzenie Edge.
  2. Przejdź do pozycji Ustawianie ustawień środowiska uruchomieniowego modułów>.
  3. Dodaj zmienną Upstream protocol środowiskową i przypisz jej wartość AMQPWS. Komunikaty skonfigurowane w tym przypadku są wysyłane za pośrednictwem obiektów WebSocket za pośrednictwem portu 443.

Moduły są wyświetlane jako uruchomione, ale nie mają przypisanego adresu IP

Opis błędu

Stan środowiska uruchomieniowego modułu jest wyświetlany jako uruchomiony, ale konteneryzowana aplikacja nie ma przypisanego adresu IP.

Ten warunek występuje, ponieważ zakres adresów IP podanych dla adresów IP usługi zewnętrznej Kubernetes nie jest wystarczający. Rozszerz ten zakres, aby upewnić się, że każdy wdrożony kontener lub maszyna wirtualna jest uwzględniona.

Sugerowane rozwiązanie

W lokalnym internetowym interfejsie użytkownika urządzenia wykonaj następujące czynności:

  1. Przejdź do strony Obliczenia . Wybierz port, dla którego włączono sieć obliczeniową.
  2. Wprowadź statyczny, ciągły zakres adresów IP dla adresów IP usługi zewnętrznej Kubernetes. Potrzebujesz jednego adresu IP dla edgehub usługi. Ponadto potrzebujesz jednego adresu IP dla każdego modułu usługi IoT Edge i dla każdej wdrożonej maszyny wirtualnej.
  3. Wybierz Zastosuj. Zmieniony zakres adresów IP powinien obowiązywać natychmiast.

Aby uzyskać więcej informacji, zobacz Zmienianie adresów IP usługi zewnętrznej dla kontenerów.

Konfigurowanie statycznych adresów IP dla modułów usługi IoT Edge

Opis problemu

Platforma Kubernetes przypisuje dynamiczne adresy IP do każdego modułu IoT Edge na urządzeniu Azure Stack Edge Pro z procesorem GPU. Aby skonfigurować statyczne adresy IP dla modułów, należy użyć metody.

Sugerowane rozwiązanie

Stałe adresy IP dla modułów usługi IoT Edge można określić za pośrednictwem sekcji K8s-experimental, jak opisano poniżej:

{
  "k8s-experimental": {
    "serviceOptions" : {
      "loadBalancerIP" : "100.23.201.78",
      "type" : "LoadBalancer"
    }
  }
}

Uwidaczniaj usługę Kubernetes jako usługę IP klastra na potrzeby komunikacji wewnętrznej

Opis problemu

Domyślnie typ usługi IoT jest modułem równoważenia obciążenia, a usługa jest przypisana zewnętrznie dostępnymi adresami IP. Jeśli aplikacja wymaga zasobników Kubernetes w klastrze Kubernetes w celu uzyskania dostępu do innych zasobników w klastrze, może być konieczne skonfigurowanie usługi jako usługi ip klastra zamiast usługi równoważenia obciążenia. Aby uzyskać więcej informacji, zobacz Sieć Kubernetes na urządzeniu z procesorem GPU Usługi Azure Stack Edge Pro.

Sugerowane rozwiązanie

Opcje tworzenia można użyć w sekcji K8s-experimental. Poniższa opcja usługi powinna działać z powiązaniami portów.

{
"k8s-experimental": {
  "serviceOptions" : {
    "type" : "ClusterIP"
    }
  }
}

Nie można utworzyć lub zaktualizować roli IoT

Opis problemu

Podczas konfigurowania urządzenia IoT podczas instalacji może zostać wyświetlony następujący błąd:

(Kod stanu HTTP: 400) Nie można utworzyć ani zaktualizować roli IoT w polu <YourDeviceName>. Wystąpił błąd z kodem błędu {NO_PARAM}. Aby uzyskać więcej informacji, zapoznaj się ze szczegółami kodu błędu (https://aka.ms/dbe-error-codes). Jeśli błąd będzie się powtarzać, skontaktuj się z pomoc techniczna firmy Microsoft.

Sugerowane rozwiązanie

Jeśli zapora centrum danych ogranicza lub filtruje ruch na podstawie źródłowych adresów IP lub ADRESów MAC, upewnij się, że adresy IP obliczeniowe (adresy IP węzłów Kubernetes) i adresy MAC znajdują się na liście dozwolonych. Adresy MAC można określić, uruchamiając Set-HcsMacAddressPool polecenie cmdlet w interfejsie programu PowerShell urządzenia.

Następne kroki