Sdílet prostřednictvím


Konfigurační soubor aktualizace zařízení

Agent Azure Device Update for IoT Hub používá informace o konfiguraci ze souboru du-config.json na zařízení. Agent načte soubor a hlásí následující hodnoty službě Device Update:

  • AzureDeviceUpdateCore:4.ClientMetadata:4.deviceProperties["manufacturer"]
  • AzureDeviceUpdateCore:4.ClientMetadata:4.deviceProperties["model"]
  • DeviceInformation.manufacturer
  • DeviceInformation.model
  • additionalProperties
  • connectionData
  • connectionType

Aktualizace nebo vytvoření konfiguračního souboru du-config.json :

  • Když nainstalujete agenta Debianu na zařízení IoT s operačním systémem Linux, upravte soubor /etc/adu/du-config.json tak, aby se hodnoty aktualizovaly.
  • Pro systém sestavení Yocto vytvořte soubor JSON v oddílu adu nebo disku s názvem /adu/du-config.json.

Pole a hodnoty konfiguračního souboru

Název Popis
SchemaVersion Verze schématu, která mapuje aktuální verzi formátu konfiguračního souboru
aduShellTrustedUsers Seznam uživatelů, kteří mohou spustit adu-shell, zprostředkovací program, který provádí různé aktualizační akce jako 'root'. Výchozí obslužné rutiny aktualizace obsahu služby Device Update vyvolávají adu-shell k provádění úloh, které vyžadují oprávnění superuživatele, například apt-get install spuštění privilegovaného skriptu.
iotHubProtocol Protokol používaný k připojení pomocí Azure IoT Hubu. Přijaté hodnoty jsou mqtt nebo mqtt/ws. Výchozí hodnota je 'mqtt'.
compatPropertyNames Vlastnosti používané ke kontrole kompatibility zařízení pro cílení na nasazení aktualizace. Všechny hodnoty musí být malými písmeny.
Výrobce Hodnota hlášená rozhraním AzureDeviceUpdateCore:4.ClientMetadata:4 pro klasifikaci zařízení pro cílení na nasazení aktualizace.
model Hodnota hlášená rozhraním AzureDeviceUpdateCore:4.ClientMetadata:4 pro klasifikaci zařízení pro cílení na nasazení aktualizace.
additionalProperties Volitelné, až pět dalších vlastností hlášených pouze malými písmeny, které se mají použít ke kontrole kompatibility.
agenti Informace o každém agentu služby Device Update, včetně connectionSource typu a dat
name Název agenta aktualizace zařízení
Spustit jako Identita uživatele pro spuštění agenta Device Update v části.
connectionType Typ připojení, který se má použít pro připojení zařízení ke službě IoT Hub. Přijaté hodnoty jsou string nebo AIS. Používá se AIS pro produkční scénáře, které k připojení používají službu IoT Identity Service. Slouží string k připojení pomocí připojovací řetězec pro účely testování.
connectionData Data, která se mají použít pro připojení zařízení ke službě IoT Hub. Pokud connectionType = "AIS", nastavte connectionData na prázdný řetězec: "connectionData": "". Pokud connectionType = "string"zadáte připojovací řetězec zařízení IoT nebo modulu vašeho zařízení IoT.
Výrobce Hodnota hlášená agentem Device Update v rámci DeviceInformation rozhraní.
model Hodnota hlášená agentem Device Update v rámci DeviceInformation rozhraní.
additionalDeviceProperties Volitelné, až pět dalších vlastností zařízení.
extensionsFolder Volitelné, nastaví cestu ke složce rozšíření Device Update. Výchozí cesta je '/var/lib/adu/extensions'.
downloadsFolder Volitelné, nastaví cestu ke složce pro stahování služby Device Update. Výchozí cesta je '/var/lib/adu/downloads'.
dataFolder Volitelné, nastaví cestu ke složce dat služby Device Update. Výchozí cesta je '/var/lib/adu'. Pokud tuto hodnotu aktualizujete v konfiguračním souboru, je nutné ji odpovídajícím způsobem aktualizovat CheckDataDir() v kontrole správy stavu.
aduShellFilePath Volitelné, nastaví cestu pro prostředí Device Update. Výchozí cesta je '/usr/lib/adu'.
downloadTimeoutInMinutes Volitelné, nastaví časový limit stahování aktualizace v minutách. Hodnota 0 znamená výchozí hodnotu 8 hodin.

Příklad souboru "du-config.json"

{
  "schemaVersion": "1.1",
  "aduShellTrustedUsers": [
    "adu",
    "do"
  ],
  "iotHubProtocol": "mqtt",
  "compatPropertyNames":"manufacturer,model,location,environment",
  "manufacturer": "contoso",
  "model": "virtual-vacuum-2",
  "agents": [
    {
      "name": "main",
      "runas": "adu",
      "connectionSource": {
        "connectionType": "string",
        "connectionData": "HostName=<hub_name>.azure-devices.net;DeviceId=<device_id>;SharedAccessKey=<device_key>"
      },
      "manufacturer": "contoso",
      "model": "virtual-vacuum-2",
      "additionalDeviceProperties": {
        "location": "usa",
        "environment": "development"
      }
    }
  ]
}