Creare un'immagine di macchina virtuale personalizzata disponibile nello Stack di AzureMake a custom virtual machine image available in Azure Stack

Si applica a: Azure Stack integrate di sistemi Azure Stack Development KitApplies to: Azure Stack integrated systems and Azure Stack Development Kit

Nello Stack di Azure, gli operatori possono rendere le immagini di macchina virtuale personalizzata disponibile agli utenti.In Azure Stack, operators can make custom virtual machine images available to their users. Queste immagini possono fare riferimento i modelli di gestione risorse di Azure oppure è possibile aggiungerli all'interfaccia utente Azure Marketplace come un elemento del Marketplace.These images can be referenced by Azure Resource Manager templates, or you can add them to the Azure Marketplace UI as a Marketplace item.

Aggiungere un'immagine di macchina virtuale al Marketplace tramite PowerShellAdd a VM image to Marketplace by using PowerShell

Eseguire i seguenti prerequisiti, tramite il kit di sviluppo o da un basati su Windows client esterno, se si è connessi tramite VPN:Run the following prerequisites, either from the development kit or from a Windows-based external client, if you are connected through VPN:

  1. Installare PowerShell per Azure Stack.Install PowerShell for Azure Stack.

  2. Scaricare il gli strumenti necessari per lavorare con Azure Stack.Download the tools required to work with Azure Stack.

  3. Preparare un'immagine di disco rigido virtuale del sistema operativo Windows o Linux nel formato VHD (non usare il formato VHDX).Prepare a Windows or Linux operating system virtual hard disk image in VHD format (don't use VHDX format).

Per aggiungere l'immagine a Azure Marketplace dello Stack, completare i passaggi seguenti:To add the image to the Azure Stack Marketplace, complete the following steps:

  1. Importare i moduli Connect e ComputeAdmin:Import the Connect and ComputeAdmin modules:

    Set-ExecutionPolicy RemoteSigned
    
    # Import the Connect and ComputeAdmin modules.
    Import-Module .\Connect\AzureStack.Connect.psm1
    Import-Module .\ComputeAdmin\AzureStack.ComputeAdmin.psm1
    
  2. Accedere all'ambiente dello Stack di Azure.Sign in to your Azure Stack environment. Eseguire uno degli script di seguito, a seconda se è stato distribuito l'ambiente dello Stack di Azure tramite Azure Active Directory (Azure AD) o Active Directory Federation Services (ADFS).Run one of the following scripts, depending on whether you deployed your Azure Stack environment by using Azure Active Directory (Azure AD) or Active Directory Federation Services (AD FS). (Sostituire Azure AD tenantName, GraphAudience endpoint, e ArmEndpoint valori in base alla configurazione dell'ambiente.)(Replace the Azure AD tenantName, GraphAudience endpoint, and ArmEndpoint values to reflect your environment configuration.)

    • Azure Active Directory.Azure Active Directory. Usare il cmdlet seguente:Use the following cmdlet:

      # For Azure Stack Development Kit, this value is set to https://adminmanagement.local.azurestack.external. To get this value for Azure Stack integrated systems, contact your service provider.
      $ArmEndpoint = "<Resource Manager endpoint for your environment>"
      
      # For Azure Stack Development Kit, this value is set to https://graph.windows.net/. To get this value for Azure Stack integrated systems, contact your service provider.
      $GraphAudience = "<GraphAuidence endpoint for your environment>"
      
      # Create the Azure Stack operator's Azure Resource Manager environment by using the following cmdlet:
      Add-AzureRMEnvironment `
        -Name "AzureStackAdmin" `
        -ArmEndpoint $ArmEndpoint
      
      Set-AzureRmEnvironment `
        -Name "AzureStackAdmin" `
        -GraphAudience $GraphAudience
      
      $TenantID = Get-AzsDirectoryTenantId `
        -AADTenantName "<myDirectoryTenantName>.onmicrosoft.com" `
        -EnvironmentName AzureStackAdmin
      
      Login-AzureRmAccount `
        -EnvironmentName "AzureStackAdmin" `
        -TenantId $TenantID 
      
    • Active Directory Federation Services.Active Directory Federation Services. Usare il cmdlet seguente:Use the following cmdlet:

      # For Azure Stack Development Kit, this value is set to https://adminmanagement.local.azurestack.external. To get this value for Azure Stack integrated systems, contact your service provider.
      $ArmEndpoint = "<Resource Manager endpoint for your environment>"
      
      # For Azure Stack Development Kit, this value is set to https://graph.local.azurestack.external/. To get this value for Azure Stack integrated systems, contact your service provider.
      $GraphAudience = "<GraphAuidence endpoint for your environment>"
      
      # Create the Azure Stack operator's Azure Resource Manager environment by using the following cmdlet:
      Add-AzureRMEnvironment `
        -Name "AzureStackAdmin" `
        -ArmEndpoint $ArmEndpoint
      
      Set-AzureRmEnvironment `
        -Name "AzureStackAdmin" `
        -GraphAudience $GraphAudience `
        -EnableAdfsAuthentication:$true
      
      $TenantID = Get-AzsDirectoryTenantId `
        -ADFS `
        -EnvironmentName AzureStackAdmin 
      
      Login-AzureRmAccount `
        -EnvironmentName "AzureStackAdmin" `
        -TenantId $TenantID 
      
  3. Aggiungere l'immagine di macchina virtuale tramite la chiamata di Add-AzsVMImage cmdlet.Add the VM image by invoking the Add-AzsVMImage cmdlet. Nel Add-AzsVMImage cmdlet, specificare osType come Windows o Linux.In the Add-AzsVMImage cmdlet, specify osType as Windows or Linux. Includere il server di pubblicazione, offerta, SKU e versione dell'immagine di macchina virtuale.Include the publisher, offer, SKU, and version for the VM image. Per informazioni sui parametri consentiti, vedere parametri.For information about allowed parameters, see Parameters. I parametri vengono utilizzati dai modelli di gestione risorse di Azure per fare riferimento all'immagine di macchina virtuale.The parameters are used by Azure Resource Manager templates to reference the VM image. L'esempio seguente richiama lo script:The following example invokes the script:

    Add-AzsVMImage `
     -publisher "Canonical" `
     -offer "UbuntuServer" `
     -sku "14.04.3-LTS" `
     -version "1.0.0" `
     -osType Linux `
     -osDiskLocalPath 'C:\Users\AzureStackAdmin\Desktop\UbuntuServer.vhd' `
    

Il comando esegue le operazioni seguenti:The command does the following:

  • Esegue l'autenticazione per l'ambiente dello Stack di Azure.Authenticates to the Azure Stack environment.
  • Carica il disco rigido virtuale locale in un account di archiviazione temporanea appena creata.Uploads the local VHD to a newly created temporary storage account.
  • Aggiunge l'immagine di macchina virtuale per il repository di immagini di macchina virtuale.Adds the VM image to the VM image repository.
  • Crea un elemento del Marketplace.Creates a Marketplace item.

Per verificare che il comando eseguito correttamente, nel portale, andare al Marketplace.To verify that the command ran successfully, in the portal, go to the Marketplace. Verificare che sia disponibile nell'immagine di macchina virtuale di macchine virtuali categoria.Verify that the VM image is available in the Virtual Machines category.

Immagine di macchina virtuale aggiunto correttamente

Rimuove un'immagine di macchina virtuale mediante PowerShellRemove a VM image by using PowerShell

Quando non è più necessario l'immagine di macchina virtuale che è stato caricato, è possibile eliminare il Marketplace tramite il cmdlet seguente:When you no longer need the virtual machine image that you uploaded, you can delete it from the Marketplace by using the following cmdlet:

Remove-AzsVMImage `
  -publisher "Canonical" `
  -offer "UbuntuServer" `
  -sku "14.04.3-LTS" `
  -version "1.0.0" `

ParametriParameters

ParametroParameter DescrizioneDescription
server di pubblicazionepublisher Il server di pubblicazione segmento corrispondente al nome dell'immagine di macchina virtuale da parte degli utenti durante la distribuzione dell'immagine.The publisher name segment of the VM image that users use when they deploy the image. Un esempio è Microsoft.An example is Microsoft. Non includere uno spazio o altri caratteri speciali in questo campo.Do not include a space or other special characters in this field.
offertaoffer L'offerta segmento corrispondente al nome dell'immagine di macchina virtuale da parte degli utenti quando si distribuisce l'immagine di macchina virtuale.The offer name segment of the VM image that users use when they deploy the VM image. Un esempio è WindowsServer.An example is WindowsServer. Non includere uno spazio o altri caratteri speciali in questo campo.Do not include a space or other special characters in this field.
skusku Segmento del nome SKU dell'immagine di macchina virtuale da parte degli utenti quando si distribuisce l'immagine di macchina virtuale.The SKU name segment of the VM Image that users use when they deploy the VM image. Un esempio è Datacenter2016.An example is Datacenter2016. Non includere uno spazio o altri caratteri speciali in questo campo.Do not include a space or other special characters in this field.
versionversion Versione dell'immagine di macchina virtuale da parte degli utenti quando si distribuisce l'immagine di macchina virtuale.The version of the VM Image that users use when they deploy the VM image. Questa versione è nel formato #.#.#.This version is in the format #.#.#. Un esempio è 1.0.0.An example is 1.0.0. Non includere uno spazio o altri caratteri speciali in questo campo.Do not include a space or other special characters in this field.
osTypeosType OsType dell'immagine deve essere Windows o Linux.The osType of the image must be either Windows or Linux.
osDiskLocalPathosDiskLocalPath Il percorso locale per il disco del sistema operativo VHD che si sta caricando come immagine di macchina virtuale allo Stack di Azure.The local path to the OS disk VHD that you are uploading as a VM image to Azure Stack.
dataDiskLocalPathsdataDiskLocalPaths Matrice facoltativa dei percorsi locali per i dischi dati che possono essere caricati come parte dell'immagine di macchina virtuale.An optional array of the local paths for data disks that can be uploaded as part of the VM image.
CreateGalleryItemCreateGalleryItem Flag booleano che determina se creare un elemento nel Marketplace.A Boolean flag that determines whether to create an item in Marketplace. Per impostazione predefinita, viene impostata su true.By default, it is set to true.
titolotitle Il nome visualizzato dell'elemento del Marketplace.The display name of Marketplace item. Per impostazione predefinita, viene impostata sul Publisher-Offer-Sku valore dell'immagine di macchina virtuale.By default, it is set to the Publisher-Offer-Sku value of the VM image.
descriptiondescription La descrizione dell'elemento del Marketplace.The description of the Marketplace item.
locationlocation Il percorso in cui pubblicare l'immagine di macchina virtuale.The location where the VM image should be published. Per impostazione predefinita, questo valore è impostato su locale.By default, this value is set to local.
osDiskBlobURIosDiskBlobURI (Facoltativo) Questo script accetta anche un URI di archiviazione Blob per osDisk.(Optional) This script also accepts a Blob storage URI for osDisk.
dataDiskBlobURIsdataDiskBlobURIs (Facoltativo) Questo script accetta inoltre una matrice di URI di archiviazione Blob per l'aggiunta di dischi dati dell'immagine.(Optional) This script also accepts an array of Blob storage URIs for adding data disks to the image.

Aggiungere un'immagine di macchina virtuale tramite il portaleAdd a VM image through the portal

Nota

Con questo metodo, è necessario creare l'elemento del Marketplace separatamente.With this method, you must create the Marketplace item separately.

Le immagini devono essere in grado di fare riferimento a un URI di archiviazione Blob.Images must be able to be referenced by a Blob storage URI. Preparare un'immagine del sistema operativo Windows o Linux nel formato VHD (non VHDX) e quindi caricare l'immagine a un account di archiviazione in Azure o Azure Stack.Prepare a Windows or Linux operating system image in VHD format (not VHDX), and then upload the image to a storage account in Azure or Azure Stack. Se l'immagine è già stata caricata nell'archiviazione Blob in Azure o Azure Stack, è possibile ignorare il passaggio 1.If your image is already uploaded to the Blob storage in Azure or Azure Stack, you can skip step 1.

  1. Caricare un'immagine di macchina virtuale Windows Azure per le distribuzioni di gestione risorse oppure, per un'immagine Linux, seguire le istruzioni descritte in macchine virtuali Linux di distribuire in Azure Stack.Upload a Windows VM image to Azure for Resource Manager deployments or, for a Linux image, follow the instructions described in Deploy Linux virtual machines on Azure Stack. Prima di caricare l'immagine, è importante prendere in considerazione i fattori seguenti:Before you upload the image, it's important to consider the following factors:

    • È più efficiente per caricare un'immagine nell'archiviazione Blob di Azure dello Stack di archiviazione Blob di Azure perché richiede meno tempo per effettuare il push dell'immagine nel repository immagini di Azure Stack.It's more efficient to upload an image to Azure Stack Blob storage than to Azure Blob storage because it takes less time to push the image to the Azure Stack image repository.

    • Quando si carica il immagine di macchina virtuale Windows, assicurarsi di sostituire il account di accesso da Azure passaggio con il configurare l'ambiente di PowerShell dell'operatore Azure Stack passaggio.When you upload the Windows VM image, make sure to substitute the Login to Azure step with the Configure the Azure Stack operator's PowerShell environment step.

    • Prendere nota di archiviazione Blob di URI in cui caricare l'immagine.Make a note of the Blob storage URI where you upload the image. L'URI di archiviazione Blob ha il seguente formato: <storageAccount>/<blobContainer>/<targetVHDName> con estensione vhd.The Blob storage URI has the following format: <storageAccount>/<blobContainer>/<targetVHDName>.vhd.

    • Per rendere il blob è accessibile in modo anonimo, passare al contenitore di blob account di archiviazione in cui è stato caricato l'immagine di macchina virtuale, disco rigido virtuale.To make the blob anonymously accessible, go to the storage account blob container where the VM image VHD was uploaded. Selezionare Blob, quindi selezionare criteri di accesso.Select Blob, and then select Access Policy. Facoltativamente, è possibile invece generare una firma di accesso condiviso per il contenitore e includerlo come parte dell'URI del blob.Optionally, you can instead generate a shared access signature for the container, and include it as part of the blob URI.

    Passare al BLOB di account di archiviazione

    Impostare l'accesso su public blob

  2. Accedi allo Stack di Azure come operatore.Sign in to Azure Stack as operator. Nel menu, selezionare più servizi > i provider di risorse.In the menu, select More services > Resource Providers. Selezionare quindi calcolo > immagini di macchina virtuale > Aggiungi.Then, select Compute > VM images > Add.

  3. In aggiungere un'immagine di macchina virtuale, immettere il server di pubblicazione, l'offerta, SKU e versione dell'immagine della macchina virtuale.Under Add a VM Image, enter the publisher, offer, SKU, and version of the virtual machine image. Questi segmenti dei nomi di fare riferimento all'immagine di macchina virtuale in modelli di gestione risorse.These name segments refer to the VM image in Resource Manager templates. Assicurarsi di selezionare il osType valore correttamente.Make sure to select the osType value correctly. Per URI Blob del disco del sistema operativo, immettere l'URI del Blob in cui l'immagine è stata caricata.For OS Disk Blob URI, enter the Blob URI where the image was uploaded. Selezionare quindi crea per iniziare a creare l'immagine di macchina virtuale.Then, select Create to begin creating the VM Image.

    Iniziare a creare l'immagine

    Quando l'immagine viene creata correttamente, lo stato di immagine di macchina virtuale viene modificato in Succeeded.When the image is successfully created, the VM image status changes to Succeeded.

  4. Per rendere l'immagine di macchina virtuale più facilmente disponibile per l'utilizzo di utente nell'interfaccia utente, è buona norma creare un elemento del Marketplace.To make the virtual machine image more readily available for user consumption in the UI, it's a good idea to create a Marketplace item.

Passaggi successiviNext steps

Effettuare il provisioning di una macchina virtualeProvision a virtual machine