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"
}
}
]
}