Technische assets voor IoT Edge-module voorbereiden
In dit artikel worden de vereisten beschreven waaraan technische assets van uw IoT Edge-module (Internet of Things) moeten voldoen voordat ze worden gepubliceerd in Azure Marketplace.
Aan de slag
Een IoT Edge-module is een Docker-compatibele container die wordt uitgevoerd op een IoT Edge-apparaat.
- Zie Azure IoT Edge-modules voor meer informatie over IoT Edge-modules.
- Zie Uw eigen IoT Edge-modules ontwikkelen om aan de slag te gaan met de ontwikkeling van uw IoT Edge-module.
Technische vereisten
Uw IoT Edge-module moet voldoen aan de volgende technische vereisten om te worden gecertificeerd en gepubliceerd in Azure Marketplace.
Platformondersteuning
Uw IoT Edge-module moet een van de volgende platformopties ondersteunen:
Platformen op laag 1 die worden ondersteund door IoT Edge
Uw module moet alle laag 1-platforms ondersteunen die worden ondersteund door IoT Edge (zoals vastgelegd in de ondersteuning van Azure IoT Edge). We raden deze optie aan omdat deze een betere klantervaring biedt. Modules die aan deze criteria voldoen, worden weergegeven. Een module die deze platformoptie gebruikt, moet:
Geef een meest recente tag en een versietag (bijvoorbeeld 1.0.1) op die manifesttags zijn die zijn gebouwd met het GitHub Manifest-hulpprogramma.
Gebruik het tabblad Aanbiedingsvermelding in Partnercentrum om een koppeling toe te voegen onder de sectie Nuttige koppelingen naar de door Azure IoT Edge gecertificeerde apparaatcatalogus.
Een subset van laag 1-platformen die worden ondersteund door IoT Edge
Uw module moet ondersteuning bieden voor een subset (ten minste één) van platformen op laag 1 die worden ondersteund door IoT Edge (zoals vastgelegd in de ondersteuning van Azure IoT Edge). Een module die deze platformoptie gebruikt, moet:
- Geef een meest recente tag en een versietag (bijvoorbeeld 1.0.1) op die manifesttags zijn die zijn gebouwd met het GitHub-manifesthulpprogramma als meer dan één platform wordt ondersteund. Manifesttags zijn alleen optioneel wanneer één platform wordt ondersteund.
- Gebruik het tabblad Aanbiedingsvermelding in Partnercentrum om een koppeling toe te voegen onder de sectie Nuttige koppelingen naar ten minste één IoT Edge-apparaat uit de azure IoT Edge Certified-apparaatcatalogus.
Apparaatdimensies
Dimensies van IoT Edge-modules (zoals CPU, RAM, opslag en GPU) op beoogde IoT Edge-apparaten moeten voldoen aan de volgende vereisten:
De module moet werken met ten minste één IoT Edge-apparaat uit de door Azure IoT Edge gecertificeerde apparaatcatalogus.
De minimale hardwarevereisten moeten worden gedocumenteerd als de laatste alinea in de beschrijving van de aanbieding (onder het tabblad Aanbiedingsvermelding in Partnercentrum). Desgewenst kunt u ook de aanbevolen hardwarevereisten vermelden als deze aanzienlijk verschillen. Voeg bijvoorbeeld de volgende sectie toe aan het einde van de beschrijving van uw aanbieding:
Kopieer deze HTML-tekst of gebruik de bijbehorende rich text-functies in het bewerkingsvenster.
<p><u>Minimum hardware requirements:</u> Linux x64 and arm32 OS, 1GB of RAM, 500 Mb of storage</p>
Configuratie
Uw module moet standaardconfiguratie-instellingen bevatten om de implementatie zo eenvoudig mogelijk te maken op een IoT Edge-apparaat. Deze informatie kan worden opgegeven op de pagina Technische configuratie voor het plan in Partnercentrum. De container kan ook de IoT Edge Module SDK bevatten om communicatie mogelijk te maken met de Edge Hub en IoT Hub.
Standaardconfiguratie
IoT Edge-modules moeten kunnen beginnen met de standaardinstellingen die zijn opgegeven op de pagina Technische configuratie voor het plan in Partnercentrum. De volgende standaardinstellingen zijn beschikbaar:
- Standaardroutes
- Gewenste eigenschappen van standaardmoduledubbel
- Standaardomgevingsvariabelen
- Standaardopties voor het maken van containers
In een scenario waarin een parameter die is vereist voor een standaardwaarde niet logisch is (bijvoorbeeld het IP-adres van de server van een klant), voegt u een parameter toe als de standaardwaarde. Deze waarde is hoofdletters en tussen vierkante haken. In dit voorbeeld hebt u de volgende standaardomgevingsvariabele ingesteld:
ServerIPAddress = <MY_SERVER_IP_ADDRESS>
Configuratiedocumentatie
Alle configuratie-instellingen van een IoT Edge-module moeten duidelijk worden gedocumenteerd. U moet bijvoorbeeld documenteren hoe u de routes, gewenste eigenschappen van dubbels, omgevingsvariabelen, createOptions enzovoort kunt gebruiken. U moet een koppeling naar uw documentatie opgeven of een deel van uw aanbieding of planbeschrijving maken. U kunt deze informatie opgeven op de pagina Aanbiedingsvermelding en Aanbieding plannen in Partnercentrum.
Tags en versiebeheer
Klanten moeten eenvoudig een module kunnen implementeren en automatisch updates kunnen ophalen uit de marketplace (in een ontwikkelaarsscenario). Ze moeten ook een exacte versie kunnen gebruiken en blokkeren die ze hebben getest (in een productiescenario).
IoT Edge-modules moeten voldoen aan de volgende vereisten om aan deze verwachtingen van klanten te voldoen en te worden gepubliceerd in de marketplace
- Neem een manifestnieuwe tag op die verwijst naar de nieuwste versie op alle ondersteunde platforms.
- Maak versietags in de vorm X.Y.Z, waarbij X, Y en Z gehele getallen zijn.
- Neem een versietag op, zoals 1.0.1, die verwijst naar een specifieke versie op alle ondersteunde platforms.
- Werk versietags, zoals 1.0.1, niet bij, omdat ze niet mogen worden gewijzigd.
Notitie
Versiebeheer kan eventueel 'rolling version'-tags bevatten, zoals 2.0 en 1.0. Dit ondersteunt het gelijktijdig onderhouden van meerdere primaire versies.
Telemetrie
Modules die de IoT Module SDK gebruiken, moeten de unieke module-id instellen op PublisherId.OfferId.SkuId voor telemetriedoeleinden. Een unieke id helpt Azure Marketplace bij het identificeren van het aantal module-exemplaren dat wordt uitgevoerd.
Gebruik een van de volgende methoden van de SDK's van de IoT-module om productinfo in te stellen op deze id:
Voor modules die niet gebruikmaken van de IoT Module SDK, zijn er minder nauwkeurige inzichten beschikbaar via partnercentrum, zoals het aantal downloads.
Beveiliging
IoT Edge-modules moeten bevoegde modules voorkomen. Vraag in plaats daarvan zoveel mogelijk om de minst bevoegde toegang tot de host.
Module IoT SDK
Het opnemen van de IoT Module SDK is geen vereiste voor certificering. Het is echter mogelijk dat de IoT Module SDK een betere gebruikerservaring biedt. Bijvoorbeeld voor het ondersteunen van routering of het verzenden van berichten naar de cloud.
De IoT Module SDK is vereist om telemetriegegevens op te halen over het aantal actieve module-exemplaren.
Hercertificatieproces
Partners worden op de hoogte gesteld wanneer er sprake is van een belangrijke wijziging die van invloed is op hun modules, zoals:
- Ondersteuningsmatrix voor besturingssysteem/boog op laag 1 die wordt ondersteund door IoT Edge
- IoT Module SDK
- IoT Edge-runtime
- Richtlijnen voor ioT Edge-modulecertificering
Partners moeten hun aanbiedingen bijwerken en opnieuw certificaat geven door ze opnieuw te publiceren in partnercentrum.
Uw aanbieding wordt ook hersteld als u deze bijwerkt, zoals het toevoegen van nieuwe afbeeldingstags.
Hostmodule in Azure Container Registry
Als u uw IoT Edge-module wilt uploaden naar Azure Marketplace, moet u deze eerst hosten in een Azure Container Registry (ACR). De module moet alle tags bevatten die u wilt publiceren, inclusief de afbeeldingstags waarnaar wordt verwezen door een manifesttag. Zie de zelfstudie Een Azure-containerregister maken en een containerinstallatiekopieën pushen voor meer informatie.