Delen via


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:

  1. Upload de aangepaste VM-installatiekopie naar de portal van Azure Stack Hub, volgens de instructies in Een VM-installatiekopie toevoegen aan Azure Stack Hub.
  2. 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:

  1. Download het hulpprogramma Azure Gallery Packager:

    Galerijverpakker

  2. 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:

    Voorbeeldenpakketten

  3. 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.

  4. 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.

  5. Het galeriepakket moet de volgende structuur bevatten:

    Schermopname van de galeriepakketstructuur

  6. 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.
  7. 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"
    }
    
  8. De bestandsstructuur van de implementatiesjablonen wordt als volgt weergegeven:

    implementatiesjablonen

    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.

  9. Test de sjabloon met de Azure Stack Hub-API'som ervoor te zorgen dat de resource kan worden geïmplementeerd.

  10. Als uw sjabloon afhankelijk is van een VM-installatiekopie, volgt u de instructies om een VM-installatiekopie toe te voegen aan Azure Stack Hub.

  11. Sla uw Azure Resource Manager-sjabloon op in de map /Contoso.TodoList/DeploymentTemplates/.

  12. 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.

  13. Zie Reference: Marketplace-item manifest.jsonvoor verdere bewerkingen in Manifest.json.

  14. 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 map C:\<path> bestaan.

Een Marketplace-item publiceren

  1. 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.

  2. 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.

  3. Een context toevoegen:

    $ArmEndpoint = "https://adminmanagement.local.azurestack.external"
    Add-AzEnvironment -Name "AzureStackAdmin" -ArmEndpoint $ArmEndpoint
    Connect-AzAccount -EnvironmentName "AzureStackAdmin"
    
  4. 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.

  5. 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.

    aangepaste marketplace-item dat is geüpload

  6. 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
  7. 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.

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

Blade- Azure Stack Hub Marketplace-items maken

Detailscherm van Marketplace-item

Azure Stack Hub Marketplace-itemdetails blade

Volgende stappen