Encontre informações da imagem no Azure Marketplace utilizando a CLI do Azure
Atenção
Este artigo faz referência ao CentOS, uma distribuição Linux com status de Fim de Vida (EOL). Por favor, considere o seu uso e planeje de acordo. Para obter mais informações, consulte as diretrizes de Fim da Vida Útil do CentOS.
Aplica-se a: ✔️ Linux VMs ✔️ Windows VMs ✔️ Conjuntos de escala flexível
Este tópico descreve como usar a CLI do Azure para localizar imagens de VM no Azure Marketplace. Use essas informações para especificar uma imagem do Marketplace ao criar uma VM programaticamente com a CLI, modelos do Gerenciador de Recursos ou outras ferramentas.
Você também pode procurar imagens e ofertas disponíveis usando o Azure Marketplace ou o Azure PowerShell.
Terminologia
Uma imagem do Marketplace no Azure tem os seguintes atributos:
- Editor: A organização que criou a imagem. Exemplos: Canonical, RedHat, SUSE.
- Oferta: o nome de um grupo de imagens relacionadas criadas por um editor. Exemplos: 0001-com-ubuntu-server-jammy, RHEL, sles-15-sp3.
- SKU: Uma instância de uma oferta, por exemplo, uma versão principal de uma distribuição. Exemplos: 22_04-lts-gen2, 8-lvm-gen2, gen2.
- Versão: O número da versão de um SKU de imagem.
Estes valores podem ser passados individualmente ou como uma imagem URN, combinando os valores separados pelos dois pontos (:). Por exemplo: Publisher:Offer:Sku:Version. Você pode substituir o número da versão na URN por latest
para usar a versão mais recente da imagem.
Se o editor de imagens fornecer termos de licença e compra extras, você deverá aceitá-los antes de poder usar a imagem. Para obter mais informações, consulte Verificar as informações do plano de compra.
Listar imagens populares
Você pode executar a lista de imagens az vm --all para ver todas as imagens disponíveis para você, mas pode levar vários minutos para produzir a lista inteira. Uma opção mais rápida é o uso az vm image list
, sem a --all
opção, para ver uma lista de imagens de VM populares no Azure Marketplace. Por exemplo, execute o seguinte comando para exibir uma lista em cache de imagens populares em formato de tabela:
az vm image list --output table
A saída inclui a imagem URN. Se você omitir a --all
opção, você pode ver o UrnAlias para cada imagem, se disponível. UrnAlias é uma versão abreviada criada para imagens populares como Ubuntu2204.
Os nomes de alias de imagem do Linux e seus detalhes gerados por este comando são:
Architecture Offer Publisher Sku Urn UrnAlias Version
-------------- ---------------------------- ---------------------- ---------------------------------- ------------------------------------------------------------------------------ ----------------------- ---------
x64 CentOS OpenLogic 8_5-gen2 OpenLogic:CentOS:8_5-gen2:latest CentOS85Gen2 latest
x64 Debian11 Debian 11-backports-gen2 Debian:debian-11:11-backports-gen2:latest Debian-11 latest
x64 flatcar-container-linux-free kinvolk stable-gen2 kinvolk:flatcar-container-linux-free:stable-gen2:latest FlatcarLinuxFreeGen2 latest
x64 opensuse-leap-15-4 SUSE gen2 SUSE:opensuse-leap-15-4:gen2:latest OpenSuseLeap154Gen2 latest
x64 RHEL RedHat 8-lvm-gen2 RedHat:RHEL:8-lvm-gen2:latest RHELRaw8LVMGen2 latest
x64 sles-15-sp3 SUSE gen2 SUSE:sles-15-sp3:gen2:latest SLES latest
x64 0001-com-ubuntu-server-jammy Canonical 22_04-lts-gen2 Canonical:0001-com-ubuntu-server-jammy:22_04-lts-gen2:latest Ubuntu2204 latest
Os nomes de alias de imagem do Windows e seus detalhes gerados por este comando são:
Architecture Offer Publisher Sku Urn Alias Version
-------------- ---------------------------- ---------------------- ---------------------------------- ------------------------------------------------------------------------------ ----------------------- ---------
x64 WindowsServer MicrosoftWindowsServer 2022-datacenter-azure-edition MicrosoftWindowsServer:WindowsServer:2022-datacenter-azure-edition:latest Win2022AzureEdition latest
x64 WindowsServer MicrosoftWindowsServer 2022-datacenter-azure-edition-core MicrosoftWindowsServer:WindowsServer:2022-datacenter-azure-edition-core:latest Win2022AzureEditionCore latest
x64 WindowsServer MicrosoftWindowsServer 2019-Datacenter MicrosoftWindowsServer:WindowsServer:2019-Datacenter:latest Win2019Datacenter latest
x64 WindowsServer MicrosoftWindowsServer 2016-Datacenter MicrosoftWindowsServer:WindowsServer:2016-Datacenter:latest Win2016Datacenter latest
x64 WindowsServer MicrosoftWindowsServer 2012-R2-Datacenter MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:latest Win2012R2Datacenter latest
x64 WindowsServer MicrosoftWindowsServer 2012-Datacenter MicrosoftWindowsServer:WindowsServer:2012-Datacenter:latest Win2012Datacenter latest
Encontrar imagens específicas
Você pode filtrar a lista de imagens por --publisher
ou outro parâmetro para limitar os resultados.
Por exemplo, o seguinte comando exibe todas as ofertas Debian:
az vm image list --offer Debian --all --output table
Você pode limitar seus resultados a uma única arquitetura adicionando o --architecture
parâmetro. Por exemplo, para exibir todas as imagens Arm64 disponíveis da Canonical:
az vm image list --architecture Arm64 --publisher Canonical --all --output table
Veja todas as imagens disponíveis
Outra maneira de encontrar uma imagem em um local é executar os comandos az vm image list-publishers, az vm image list-offers e az vm image list-skus em sequência. Com estes comandos, você determina estes valores:
Liste os editores de imagens para um local. Neste exemplo, estamos olhando para a região Oeste dos EUA .
az vm image list-publishers --location westus --output table
Para um determinado publicador, liste as respetivas ofertas. Neste exemplo, adicionamos RedHat como editor.
az vm image list-offers --location westus --publisher RedHat --output table
Para uma determinada oferta, liste as respetivas SKUs. Neste exemplo, adicionamos RHEL como oferta.
az vm image list-skus --location westus --publisher RedHat --offer RHEL --output table
Nota
A Canonical alterou os nomes das ofertas que usa para as versões mais recentes. Antes do Ubuntu 20.04, o nome da oferta é UbuntuServer. Para o Ubuntu 20.04 o nome da oferta é 0001-com-ubuntu-server-focal
e para o Ubuntu 22.04 é 0001-com-ubuntu-server-jammy
.
Para um determinado editor, oferta e SKU, mostre todas as versões da imagem. Neste exemplo, adicionamos 9_1 como a SKU.
az vm image list \ --location westus \ --publisher RedHat \ --offer RHEL \ --sku 9_1 \ --all --output table
Passe esse valor da coluna URN com o --image
parâmetro quando você cria uma VM com o comando az vm create . Você também pode substituir o número da versão na URN por "mais recente", para usar a versão mais recente da imagem.
Se você implantar uma VM com um modelo do Gerenciador de Recursos, definirá os parâmetros de imagem individualmente nas imageReference
propriedades. Veja a referência de modelo.
Verifique as informações do plano de compra
Algumas imagens de VM no Azure Marketplace têm termos de licença e compra adicionais que você deve aceitar antes de implantá-las programaticamente.
Para implantar uma VM a partir dessa imagem, você precisará aceitar os termos da imagem na primeira vez que usá-la, uma vez por assinatura. Você também precisará especificar parâmetros do plano de compra para implantar uma VM a partir dessa imagem
Para visualizar as informações do plano de compra de uma imagem, execute o comando az vm image show com a URN da imagem. Se a plan
propriedade na saída não null
for , a imagem tem termos que você precisa aceitar antes da implantação programática.
Por exemplo, a imagem Canonical Ubuntu Server 18.04 LTS não tem termos extras, porque as plan
informações são null
:
az vm image show --location westus --urn Canonical:UbuntuServer:18.04-LTS:latest
Saída:
{
"dataDiskImages": [],
"id": "/Subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/Providers/Microsoft.Compute/Locations/westus/Publishers/Canonical/ArtifactTypes/VMImage/Offers/UbuntuServer/Skus/18.04-LTS/Versions/18.04.201901220",
"location": "westus",
"name": "18.04.201901220",
"osDiskImage": {
"operatingSystem": "Linux"
},
"plan": null,
"tags": null
}
A execução de um comando semelhante para a imagem RabbitMQ Certified by Bitnami mostra as seguintes plan
propriedades: name
, product
e publisher
. (Algumas imagens também têm uma promotion code
propriedade.)
az vm image show --location westus --urn bitnami:rabbitmq:rabbitmq:latest
Saída:
{
"dataDiskImages": [],
"id": "/Subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/Providers/Microsoft.Compute/Locations/westus/Publishers/bitnami/ArtifactTypes/VMImage/Offers/rabbitmq/Skus/rabbitmq/Versions/3.7.1901151016",
"location": "westus",
"name": "3.7.1901151016",
"osDiskImage": {
"operatingSystem": "Linux"
},
"plan": {
"name": "rabbitmq",
"product": "rabbitmq",
"publisher": "bitnami"
},
"tags": null
}
Para implantar essa imagem, você precisa aceitar os termos e fornecer os parâmetros do plano de compra ao implantar uma VM usando essa imagem.
Aceitar os termos
Para visualizar e aceitar os termos de licença, use o comando az vm image terms . Ao aceitar os termos, você habilita a implantação programática em sua assinatura. Você só precisa aceitar os termos uma vez por assinatura para a imagem. Por exemplo:
az vm image terms show --urn bitnami:rabbitmq:rabbitmq:latest
A saída inclui um licenseTextLink
para os termos de licença e indica que o valor de accepted
é true
:
{
"accepted": true,
"additionalProperties": {},
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.MarketplaceOrdering/offertypes/bitnami/offers/rabbitmq/plans/rabbitmq",
"licenseTextLink": "https://storelegalterms.blob.core.windows.net/legalterms/3E5ED_legalterms_BITNAMI%253a24RABBITMQ%253a24RABBITMQ%253a24IGRT7HHPIFOBV3IQYJHEN2O2FGUVXXZ3WUYIMEIVF3KCUNJ7GTVXNNM23I567GBMNDWRFOY4WXJPN5PUYXNKB2QLAKCHP4IE5GO3B2I.txt",
"name": "rabbitmq",
"plan": "rabbitmq",
"privacyPolicyLink": "https://bitnami.com/privacy",
"product": "rabbitmq",
"publisher": "bitnami",
"retrieveDatetime": "2019-01-25T20:37:49.937096Z",
"signature": "XXXXXXLAZIK7ZL2YRV5JYQXONPV76NQJW3FKMKDZYCRGXZYVDGX6BVY45JO3BXVMNA2COBOEYG2NO76ONORU7ITTRHGZDYNJNXXXXXX",
"type": "Microsoft.MarketplaceOrdering/offertypes"
}
Para aceitar os termos, digite:
az vm image terms accept --urn bitnami:rabbitmq:rabbitmq:latest
Implantar uma nova VM usando os parâmetros de imagem
Com informações sobre a imagem, você pode implantá-la usando o az vm create
comando.
Para implantar uma imagem que não tem informações de plano, como a imagem mais recente do Ubuntu Server 18.04 da Canonical, passe a URN para --image
:
az group create --name myURNVM --location westus
az vm create \
--resource-group myURNVM \
--name myVM \
--admin-username azureuser \
--generate-ssh-keys \
--image Canonical:UbuntuServer:18.04-LTS:latest
Para uma imagem com parâmetros de plano de compra, como a imagem RabbitMQ Certified by Bitnami, você passa a URN para --image
e também fornece os parâmetros do plano de compra:
az group create --name myPurchasePlanRG --location westus
az vm create \
--resource-group myPurchasePlanRG \
--name myVM \
--admin-username azureuser \
--generate-ssh-keys \
--image bitnami:rabbitmq:rabbitmq:latest \
--plan-name rabbitmq \
--plan-product rabbitmq \
--plan-publisher bitnami
Se receber uma mensagem sobre a aceitação dos termos da imagem, consulte a secção Aceitar os termos. Certifique-se de que a saída de az vm image terms accept
retorna o valor "accepted": true,
mostrando que você aceitou os termos da imagem.
Usando um VHD existente com informações do plano de compra
Se você tiver um VHD existente de uma VM que foi criada usando uma imagem paga do Azure Marketplace, talvez seja necessário fornecer as informações do plano de compra ao criar uma nova VM a partir desse VHD.
Se você ainda tiver a VM original ou outra VM criada usando a mesma imagem do marketplace, poderá obter o nome do plano, o editor e as informações do produto usando az vm get-instance-view. Este exemplo obtém uma VM chamada myVM no grupo de recursos myResourceGroup e exibe as informações do plano de compra.
az vm get-instance-view -g myResourceGroup -n myVM --query plan
Se você não obteve as informações do plano antes que a VM original fosse excluída, você pode registrar uma solicitação de suporte. Eles precisarão do nome da VM, da ID da assinatura e do carimbo de data/hora da operação de exclusão.
Depois de ter as informações do plano, você pode criar a nova VM usando o --attach-os-disk
parâmetro para especificar o VHD.
az vm create \
--resource-group myResourceGroup \
--name myNewVM \
--nics myNic \
--size Standard_DS1_v2 --os-type Linux \
--attach-os-disk myVHD \
--plan-name planName \
--plan-publisher planPublisher \
--plan-product planProduct
Próximos passos
Para criar uma máquina virtual rapidamente usando as informações da imagem, consulte Criar e gerenciar VMs Linux com a CLI do Azure.