Een aangepast Azure Stack Hub Marketplace-item maken en publiceren
Elk item dat naar Azure Stack Hub Marketplace wordt gepubliceerd, maakt gebruik van de indeling Azure Gallery Package (.azpkg). Met het hulpprogramma Azure Gallery Packager kunt u een aangepast Azure Gallery-pakket maken dat u kunt uploaden naar de Azure Stack Hub Marketplace, die vervolgens kan worden gedownload door gebruikers. Het implementatieproces maakt gebruik van een Azure Resource Manager-sjabloon.
Marktplaatsitems
In de voorbeelden in dit artikel ziet u hoe u één VM Marketplace-aanbieding maakt, van het type Windows of Linux.
Voorwaarden
Ga als volgt te werk voordat u het marketplace-item voor de VM maakt:
- Upload de aangepaste VM-installatiekopie naar de portal van Azure Stack Hub, volgens de instructies in Een VM-installatiekopie toevoegen aan Azure Stack Hub.
- Volg de instructies in dit artikel om de afbeelding te verpakken (maak een .azpkg) en upload het naar de Azure Stack Hub Marketplace.
Een Marketplace-item maken
Ga als volgt te werk om een aangepast Marketplace-item te maken:
Download het hulpprogramma Azure Gallery Packager:
Het hulpprogramma bevat voorbeeldpakketten die zich in de indeling .azpkg bevinden en moeten eerst worden geëxtraheerd. U kunt de bestandsextensies van '.azpkg' wijzigen in '.zip' of een archiverhulpprogramma van uw keuze gebruiken:
Zodra het bestand is uitgepakt, bevat het .zip de Linux- of Windows Azure Resource Manager-sjablonen die beschikbaar zijn. U kunt de vooraf gemaakte Resource Manager-sjablonen opnieuw gebruiken en de respectieve parameters wijzigen met de productdetails van het item dat u in de Azure Stack Hub-portal wilt weergeven. U kunt het .azpkg-bestand ook opnieuw gebruiken en de volgende stappen overslaan om uw eigen galeriepakket aan te passen.
Maak een Azure Resource Manager-sjabloon of gebruik onze voorbeeldsjablonen voor Windows/Linux. Deze voorbeeldsjablonen worden geleverd in het packager-hulpprogramma .zip bestand dat u in stap 1 hebt gedownload. U kunt de sjabloon gebruiken en de tekstvelden wijzigen of u kunt een vooraf geconfigureerde sjabloon downloaden vanuit GitHub. Zie Azure Resource Manager-sjablonenvoor meer informatie over Azure Resource Manager-sjablonen.
Het galeriepakket moet de volgende structuur bevatten:
Vervang de volgende gemarkeerde waarden (deze door getallen) in de Manifest.json-sjabloon door de waarde die u hebt opgegeven bij het uploaden van uw aangepaste afbeelding.
Notitie
Codeer nooit geheimen, zoals productcodes, wachtwoorden of klantgegevens in de Azure Resource Manager-sjabloon. Sjabloon-JSON-bestanden zijn toegankelijk zonder verificatie na publicatie in de galerie. Sla alle geheimen op in Key Vault- en roep ze aan vanuit de sjabloon.
Het is raadzaam om voordat u uw eigen aangepaste sjabloon publiceert, de voorbeeld-as-is te publiceren en ervoor te zorgen dat deze in uw omgeving werkt. Nadat u hebt gecontroleerd of deze stap werkt, verwijdert u het voorbeeld uit de galerie en voert u iteratieve wijzigingen aan totdat u tevreden bent met het resultaat.
De volgende sjabloon is een voorbeeld van het Manifest.json-bestand:
{ "$schema": "https://gallery.azure.com/schemas/2015-10-01/manifest.json#", "name": "Test", (1) "publisher": "<Publisher name>", (2) "version": "<Version number>", (3) "displayName": "ms-resource:displayName", (4) "publisherDisplayName": "ms-resource:publisherDisplayName", (5) "publisherLegalName": "ms-resource:publisherDisplayName", (6) "summary": "ms-resource:summary", "longSummary": "ms-resource:longSummary", "description": "ms-resource:description", "longDescription": "ms-resource:description", "links": [ { "displayName": "ms-resource:documentationLink", "uri": "http://go.microsoft.com/fwlink/?LinkId=532898" } ], "artifacts": [ { "isDefault": true } ], "images": [{ "context": "ibiza", "items": [{ "id": "small", "path": "icons\\Small.png", (7) "type": "icon" }, { "id": "medium", "path": "icons\\Medium.png", "type": "icon" }, { "id": "large", "path": "icons\\Large.png", "type": "icon" }, { "id": "wide", "path": "icons\\Wide.png", "type": "icon" }] }] }
In de volgende lijst worden de voorgaande genummerde waarden in de voorbeeldsjabloon uitgelegd:
- (1) - De naam van de aanbieding.
- (2) - De naam van de uitgever, zonder spatie.
- (3) - De versie van uw sjabloon, zonder spatie.
- (4) - De naam die klanten zien.
- (5) - De naam van de uitgever die klanten zien.
- (6) - De juridische naam van de uitgever.
- (7) - Het pad en de naam voor elk pictogram.
Voor alle velden die verwijzen naar ms-resource-, moet u de juiste waarden in het tekenreeksen/resources.json-bestand wijzigen:
{ "displayName": "<OfferName.PublisherName.Version>", "publisherDisplayName": "<Publisher name>", "summary": "Create a simple VM", "longSummary": "Create a simple VM and use it", "description": "<p>This is just a sample of the type of description you could create for your gallery item!</p><p>This is a second paragraph.</p>", "documentationLink": "Documentation" }
De bestandsstructuur van de implementatiesjablonen wordt als volgt weergegeven:
Vervang de waarden voor de afbeelding in het createuidefinition.json bestand door de waarde die u hebt opgegeven bij het uploaden van uw aangepaste afbeelding.
Test de sjabloon met de Azure Stack Hub-API'som ervoor te zorgen dat de resource kan worden geïmplementeerd.
Als uw sjabloon afhankelijk is van een VM-installatiekopie, volgt u de instructies om een VM-installatiekopie toe te voegen aan Azure Stack Hub.
Sla uw Azure Resource Manager-sjabloon op in de map /Contoso.TodoList/DeploymentTemplates/.
Kies de pictogrammen en tekst voor uw Marketplace-item. Voeg pictogrammen toe aan de map Pictogrammen en voeg tekst toe aan het resources bestand in de map Tekenreeksen. Gebruik de kleine, middelgroot, groteen brede naamconventie voor pictogrammen. Zie de naslaginformatie over de gebruikersinterface van Marketplace-item voor een gedetailleerde beschrijving van deze grootten.
Notitie
Alle vier de pictogrammen (klein, gemiddeld, groot, breed) zijn vereist voor het correct bouwen van het Marketplace-item.
Zie Reference: Marketplace-item manifest.jsonvoor verdere bewerkingen in Manifest.json.
Wanneer u klaar bent met het wijzigen van uw bestanden, converteert u deze naar een .azpkg-bestand. U voert de conversie uit met behulp van het hulpprogramma AzureGallery.exe en het voorbeeldgaleriepakket dat u eerder hebt gedownload. Voer de volgende opdracht uit:
.\AzureStackHubGallery.exe package -m c:\<path>\<gallery package name>\manifest.json -o c:\Temp
Notitie
Het uitvoerpad kan elk pad zijn dat u kiest en hoeft zich niet onder de C:-schijf te bevinden. Het volledige pad naar zowel het manifest.json-bestand als het uitvoerpakket moet echter bestaan. Als het uitvoerpad bijvoorbeeld is
C:\<path>\galleryPackageName.azpkg
, moet de mapC:\<path>
bestaan.
Een Marketplace-item publiceren
Gebruik PowerShell of Azure Storage Explorer om uw Marketplace-item (.azpkg) te uploaden naar Azure Blob Storage. U kunt uploaden naar lokale Azure Stack Hub-opslag of uploaden naar Azure Storage. Dit is een tijdelijke locatie voor het pakket. Zorg ervoor dat de blob openbaar toegankelijk is.
Als u het galeriepakket wilt importeren in Azure Stack Hub, moet u eerst extern verbinding maken met de client-VM om het bestand dat u zojuist hebt gemaakt naar uw Azure Stack Hub te kopiëren.
Een context toevoegen:
$ArmEndpoint = "https://adminmanagement.local.azurestack.external" Add-AzEnvironment -Name "AzureStackAdmin" -ArmEndpoint $ArmEndpoint Connect-AzAccount -EnvironmentName "AzureStackAdmin"
Voer het volgende script uit om de resource in uw galerie te importeren:
Add-AzsGalleryItem -GalleryItemUri ` https://sample.blob.core.windows.net/<temporary blob name>/<offerName.publisherName.version>.azpkg -Verbose
Als er een fout optreedt bij het uitvoeren van Add-AzsGalleryItem, zijn er mogelijk twee versies van de
gallery.admin
-module geïnstalleerd. Verwijder alle versies van de module en installeer de nieuwste versie. Zie Bestaande versies van de Azure Stack Hub PowerShell-modules verwijderenvoor stappen voor het verwijderen van uw PowerShell-modules.Controleer of u een geldig opslagaccount hebt dat beschikbaar is om uw item op te slaan. U kunt de
GalleryItemURI
-waarde ophalen uit de Azure Stack Hub-beheerdersportal. Selecteer opslagaccount -> Blobeigenschappen -> URL, met de extensie .azpkg. Het opslagaccount is alleen bedoeld voor tijdelijk gebruik om naar de marketplace te publiceren.Nadat u het galeriepakket hebt voltooid en het hebt geüpload met behulp van Add-AzsGalleryItem, zou uw aangepaste VM nu moeten worden weergegeven op de Marketplace, evenals in de Een resource maken weergave. Houd er rekening mee dat het aangepaste galeriepakket niet zichtbaar is in Marketplace-beheer.
Zodra het item is gepubliceerd naar de marketplace, kunt u de inhoud uit het opslagaccount verwijderen.
Alle standaardgalerieartefacten en uw aangepaste galerieartefacten zijn nu toegankelijk zonder verificatie onder de volgende URL's:
https://galleryartifacts.adminhosting.[Region].[externalFQDN]/artifact/20161101/[TemplateName]/DeploymentTemplates/Template.json
https://galleryartifacts.hosting.[Region].[externalFQDN]/artifact/20161101/[TemplateName]/DeploymentTemplates/Template.json
U kunt een Marketplace-item verwijderen met behulp van de cmdlet Remove-AzGalleryItem. Bijvoorbeeld:
Remove-AzsGalleryItem -Name <Gallery package name> -Verbose
Notitie
In de Marketplace-gebruikersinterface wordt mogelijk een fout weergegeven nadat u een item hebt verwijderd. Klik op Instellingen in de portal om de fout op te lossen. Selecteer vervolgens Wijzigingen negeren onder portalaanpassing.
Referentie: Marketplace-item manifest.json
Identiteitsgegevens
Naam | Vereist | Type | Beperkingen | Beschrijving |
---|---|---|---|---|
Naam | X | Snaar | [A-Za-z0-9]+ | |
Uitgever | X | Snaar | [A-Za-z0-9]+ | |
Versie | X | Snaar | SemVer v2 |
Metagegevens
Naam | Vereist | Type | Beperkingen | Beschrijving |
---|---|---|---|---|
DisplayName | X | Snaar | Aanbeveling van 80 tekens | De naam van het item wordt mogelijk niet correct weergegeven in de portal als het langer is dan 80 tekens. |
UitgeverWeergavenaam | X | Snaar | Aanbeveling van 30 tekens | De naam van de uitgever wordt mogelijk niet correct weergegeven in de portal als deze langer is dan 30 tekens. |
UitgeverJuridischeNaam | X | Snaar | Maximaal 256 tekens | |
Samenvatting | X | Snaar | 60 tot 100 tekens | |
LongSummary | X | Snaar | 140 tot 256 tekens | Nog niet van toepassing in Azure Stack Hub. |
Beschrijving | X | HTML | 500 tot 5000 tekens |
Beelden
De Marketplace gebruikt de volgende pictogrammen:
Naam | Breedte | Hoogte | Notities |
---|---|---|---|
Wijd | 255 px | 115 px | Altijd vereist |
Groot | 115 px | 115 px | Altijd vereist |
Gemiddeld | 90 px | 90 px | Altijd vereist |
Klein | 40 px | 40 px | Altijd vereist |
Schermopname | 533 px | 324 px | Facultatief |
Categorieën
Elk Marketplace-item moet worden gelabeld met een categorie die aangeeft waar het item wordt weergegeven in de gebruikersinterface van de portal. U kunt een van de bestaande categorieën kiezen in Azure Stack Hub (Compute, Data + Storageenzovoort) of een nieuwe categorie kiezen.
Koppelingen
Elk Marketplace-item kan verschillende koppelingen naar aanvullende inhoud bevatten. De koppelingen worden opgegeven als een lijst met namen en URI's:
Naam | Vereist | Type | Beperkingen | Beschrijving |
---|---|---|---|---|
DisplayName | X | Snaar | Maximaal 64 tekens. | |
Uri | X | URI |
Aanvullende eigenschappen
Naast de voorgaande metagegevens kunnen Marketplace-auteurs aangepaste sleutel-/waardepaargegevens opgeven in de volgende vorm:
Naam | Vereist | Type | Beperkingen | Beschrijving |
---|---|---|---|---|
DisplayName | X | Snaar | Maximaal 25 tekens. | |
Waarde | X | Snaar | Maximaal 30 tekens. |
HTML-opschoning
Voor elk veld dat HTML toestaat, zijn de volgende elementen en kenmerken toegestaan:
h1, h2, h3, h4, h5, p, ol, ul, li, a[target|href], br, strong, em, b, i
Naslaginformatie: gebruikersinterface voor Marketplace-items
Pictogrammen en tekst voor Marketplace-items zoals weergegeven in de Azure Stack Hub-portal zijn als volgt.
Blade aanmaken
Detailscherm van Marketplace-item