Skip to main content
Todos los proveedores de cloud
  • Amazon Web Services
  • Google Cloud
  • Microsoft Azure
  • Todos los proveedores de cloud
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Exportación de imágenes desde Azure Marketplace

Colaboradores

Una vez que la imagen del disco duro virtual se publica en la nube de Azure, la imagen deja de ser gestionada por NetApp. En su lugar, la imagen publicada se coloca en Azure Marketplace. La alteración de Azure a los 1MB líderes y 512B finales del VHD se produce cuando la imagen se almacena en un lugar y se publica en Azure Marketplace. Para verificar la firma del archivo VHD, la imagen VHD modificada por Azure debe exportarse primero desde Azure Marketplace.

Lo que necesitará

Debe instalar los programas necesarios en su sistema.

Pasos
  1. Asigne la versión de ONTAP a la versión de la imagen de Azure Marketplace utilizando el contenido del archivo version_readme.

    Para cada asignación de versiones enumerada en el archivo version_readme, la versión de ONTAP se representa con «buildname» y la versión de la imagen de Azure Marketplace se representa con «version».

    Por ejemplo, en el siguiente archivo version_readme, la versión de ONTAP «9.15.0P1» está asignada a la versión de la imagen de Azure Marketplace «9150.01000024.05090105». Esta versión de imagen de Azure Marketplace se utiliza más adelante para establecer la imagen URN.

    [
        {
            "buildname": "9.15.0P1",
            "publisher": "netapp",
            "version": "9150.01000024.05090105"
        }
    ]
  2. Identifique el nombre de la región en la que pretende crear máquinas virtuales.

    Este nombre de región se utiliza como valor para la variable “locName” al definir el URN de la imagen de mercado.

    1. Para recibir una lista de regiones disponibles, introduzca la az account list-locations -o table comando.

      En la siguiente tabla, el nombre de la región se denomina campo Nombre.

    $ az account list-locations -o table
    DisplayName               Name                 RegionalDisplayName
    ------------------------  -------------------  -------------------------------------
    East US                   eastus               (US) East US
    East US 2                 eastus2              (US) East US 2
    South Central US          southcentralus       (US) South Central US
    ...
  3. Revise el nombre de SKU para el tipo de puesta en marcha de VM correspondiente en la tabla siguiente.

    El nombre de SKU se utiliza como valor para la variable skuName al establecer el URN de la imagen de mercado.

    Por ejemplo, las puestas en marcha de un solo nodo deben utilizar el nombre SKU «ontap_cloud_byol».

    Tipo de despliegue de máquinas virtuales Nombre de SKU

    Nodo único

    ontap_cloud_byol

    Alta disponibilidad

    ontap_cloud_byol_ha

  4. Una vez que se hayan asignado la versión de ONTAP y la imagen de Azure Marketplace, exporte el archivo VHD desde Azure Marketplace a través de Azure Cloud Shell o la interfaz de línea de comandos de Azure.

Exporte el archivo VHD a través de Azure Cloud Shell en el portal de Azure

  1. Desde Azure Cloud Shell, exporte la imagen del mercado a un vhd (image2, por ejemplo, 9150.01000024.05090105.vhd) y descárguela en su equipo local (por ejemplo, una máquina Linux o un PC con Windows).

    Haga clic para mostrar
    #Azure Cloud Shell on Azure portal to get VHD image from Azure Marketplace
    a) Set the URN and other parameters of the marketplace image. URN is with format "<publisher>:<offer>:<sku>:<version>". Optionally, a user can list NetApp marketplace images to confirm the proper image version.
    PS /home/user1> $urn="netapp:netapp-ontap-cloud:ontap_cloud_byol:9150.01000024.05090105"
    PS /home/user1> $locName="eastus2"
    PS /home/user1> $pubName="netapp"
    PS /home/user1> $offerName="netapp-ontap-cloud"
    PS /home/user1> $skuName="ontap_cloud_byol"
    PS /home/user1> Get-AzVMImage -Location $locName -PublisherName $pubName -Offer $offerName -Sku $skuName |select version
    ...
    141.20231128
    9.141.20240131
    9.150.20240213
    9150.01000024.05090105
    ...
    
    b) Create a new managed disk from the Marketplace image with the matching image version
    PS /home/user1> $diskName = “9150.01000024.05090105-managed-disk"
    PS /home/user1> $diskRG = “fnf1”
    PS /home/user1> az disk create -g $diskRG -n $diskName --image-reference $urn
    PS /home/user1> $sas = az disk grant-access --duration-in-seconds 3600 --access-level Read --name $diskName --resource-group $diskRG
    PS /home/user1> $diskAccessSAS = ($sas | ConvertFrom-Json)[0].accessSas
    
    c) Export a VHD from the managed disk to Azure Storage
    Create a container with proper access level. As an example, a container named 'vm-images' with 'Container' access level is used here.
    Get storage account access key, on Azure portal, 'Storage Accounts'/'examplesaname'/'Access Key'/'key1'/'key'/'show'/<copy>.
    PS /home/user1> $storageAccountName = “examplesaname”
    PS /home/user1> $containerName = “vm-images”
    PS /home/user1> $storageAccountKey = "<replace with the above access key>"
    PS /home/user1> $destBlobName = “9150.01000024.05090105.vhd”
    PS /home/user1> $destContext = New-AzureStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageAccountKey
    PS /home/user1> Start-AzureStorageBlobCopy -AbsoluteUri $diskAccessSAS -DestContainer $containerName -DestContext $destContext -DestBlob $destBlobName
    PS /home/user1> Get-AzureStorageBlobCopyState –Container $containerName –Context $destContext -Blob $destBlobName
    
    d) Download the generated image to your server, e.g., a Linux machine.
    Use "wget <URL of file examplesaname/Containers/vm-images/9150.01000024.05090105.vhd>".
    The URL is organized in a formatted way. For automation tasks, the following example could be used to derive the URL string. Otherwise, Azure CLI 'az' command could be issued to get the URL, which is not covered in this guide. URL Example:
    https://examplesaname.blob.core.windows.net/vm-images/9150.01000024.05090105.vhd
    
    e) Clean up the managed disk
    PS /home/user1> Revoke-AzDiskAccess -ResourceGroupName $diskRG -DiskName $diskName
    PS /home/user1> Remove-AzDisk -ResourceGroupName $diskRG -DiskName $diskName

Exporte el archivo VHD a través de la CLI de Azure desde el equipo Linux local

  1. Exporte la imagen de mercado a un vhd a través de la CLI de Azure desde una máquina Linux local.

    Haga clic para mostrar
    #Azure CLI on local Linux machine to get VHD image from Azure Marketplace
    a) Login Azure CLI and list marketplace images
    % az login --use-device-code
    To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code XXXXXXXXX to authenticate.
    
    % az vm image list --all --publisher netapp --offer netapp-ontap-cloud --sku ontap_cloud_byol
    ...
    {
    "architecture": "x64",
    "offer": "netapp-ontap-cloud",
    "publisher": "netapp",
    "sku": "ontap_cloud_byol",
    "urn": "netapp:netapp-ontap-cloud:ontap_cloud_byol:9150.01000024.05090105",
    "version": "9150.01000024.05090105"
    },
    ...
    
    b) Create a new managed disk from the Marketplace image with the matching image version
    % export urn="netapp:netapp-ontap-cloud:ontap_cloud_byol:9150.01000024.05090105"
    % export diskName="9150.01000024.05090105-managed-disk"
    % export diskRG="new_rg_your_rg"
    % az disk create -g $diskRG -n $diskName --image-reference $urn
    % az disk grant-access --duration-in-seconds 3600 --access-level Read --name $diskName --resource-group $diskRG
    {
      "accessSas": "https://md-xxxxxx.blob.core.windows.net/xxxxxxx/abcd?sv=2018-03-28&sr=b&si=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx&sigxxxxxxxxxxxxxxxxxxxxxxxx"
    }
    
    % export diskAccessSAS="https://md-xxxxxx.blob.core.windows.net/xxxxxxx/abcd?sv=2018-03-28&sr=b&si=xxxxxxxx-xxxx-xx-xx-xx&sigxxxxxxxxxxxxxxxxxxxxxxxx"
    #To automate the process, the SAS needs to be extracted from the standard output. This is not included in this guide.
    
    c) export vhd from managed disk
    Create a container with proper access level. As an example, a container named 'vm-images' with 'Container' access level is used here.
    Get storage account access key, on Azure portal, 'Storage Accounts'/'examplesaname'/'Access Key'/'key1'/'key'/'show'/<copy>. There should be az command that can achieve the same, but this is not included in this guide.
    % export storageAccountName="examplesaname"
    % export containerName="vm-images"
    % export storageAccountKey="xxxxxxxxxx"
    % export destBlobName="9150.01000024.05090105.vhd"
    
    % az storage blob copy start --source-uri $diskAccessSAS --destination-container $containerName --account-name $storageAccountName --account-key $storageAccountKey --destination-blob $destBlobName
    
    {
      "client_request_id": "xxxx-xxxx-xxxx-xxxx-xxxx",
      "copy_id": "xxxx-xxxx-xxxx-xxxx-xxxx",
      "copy_status": "pending",
      "date": "2022-11-02T22:02:38+00:00",
      "etag": "\"0xXXXXXXXXXXXXXXXXX\"",
      "last_modified": "2022-11-02T22:02:39+00:00",
      "request_id": "xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx",
      "version": "2020-06-12",
      "version_id": null
    }
    
    #to check the status of the blob copying
    % az storage blob show --name $destBlobName --container-name $containerName --account-name $storageAccountName
    
    ....
        "copy": {
          "completionTime": null,
          "destinationSnapshot": null,
          "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx",
          "incrementalCopy": null,
          "progress": "10737418752/10737418752",
          "source": "https://md-xxxxxx.blob.core.windows.net/xxxxx/abcd?sv=2018-03-28&sr=b&si=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "status": "success",
          "statusDescription": null
        },
    ....
    
    d) Download the generated image to your server, e.g., a Linux machine.
    Use "wget <URL of file examplesaname/Containers/vm-images/9150.01000024.05090105.vhd>".
    The URL is organized in a formatted way. For automation tasks, the following example could be used to derive the URL string. Otherwise, Azure CLI 'az' command could be issued to get the URL, which is not covered in this guide. URL Example:
    https://examplesaname.blob.core.windows.net/vm-images/9150.01000024.05090105.vhd
    
    e) Clean up the managed disk
    az disk revoke-access --name $diskName --resource-group $diskRG
    az disk delete --name $diskName --resource-group $diskRG --yes