Encontre informações de imagem do Azure Marketplace usando a CLI do Azure
Cuidado
Este artigo faz referência ao CentOS, uma distribuição Linux que está em status de fim do serviço (EOL). Considere seu uso e planeje adequadamente. Para obter mais informações, veja as Diretrizes sobre fim da vida útil do CentOS.
Aplica-se a: ✔️ VMs Linux ✔️ VMs Windows ✔️ Conjuntos de dimensionamento flexíveis
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 quando você criar uma VM programaticamente com a CLI, os modelos do Gerenciador de Recursos ou outras ferramentas.
Você também pode procurar imagens e ofertas disponíveis usando o Azure Marketplace ou a CLI do Azure.
Terminologia
Uma imagem do Marketplace no Azure tem os seguintes atributos:
- Publicador: a organização que criou a imagem. Exemplos: Canonical, RedHat, SUSE.
- Oferta: Nome de um grupo de imagens relacionadas criadas por um publicador. Exemplos: 0001-com-ubuntu-server-jammy, RHEL, sles-15-sp3.
- SKU: uma instância de uma oferta, como uma versão principal de uma distribuição. Exemplos: 22_04-lts-gen2, 8-lvm-gen2, gen2.
- Versão: o número de versão de uma imagem de SKU.
Esses valores podem ser passados individualmente ou como uma URNde imagem, combinando os valores separados por dois-pontos (:). Por exemplo: Publicador:Oferta:SKU:Versão. Você pode substituir o número de versão na URN por latest
para usar a versão mais recente da imagem.
Se o distribuidor de imagens fornecer licenças adicionais e termos de compra, você deverá aceitar esses termos antes de usar a imagem. Para obter mais informações, consulte Verificar as informações do plano de compra.
Listar imagens populares
Você pode executar o az vm image list --all para ver todas as imagens disponíveis, mas pode levar vários minutos para produzir a lista inteira. Uma opção rápida é o uso de az vm image list
, sem a opção --all
para ver uma lista de imagens de VM populares no Azure Marketplace. Por exemplo, execute o comando a seguir para exibir uma lista armazenada em cache de imagens populares em formato de tabela:
az vm image list --output table
O resultado inclui a URN da imagem. Se você omitir a opção --all
, poderá ver o UrnAlias de cada imagem, se disponível. O UrnAlias é uma versão abreviada criada para imagens populares, como o 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
Localizar 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 do 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 do Arm64 disponíveis na Canonical:
az vm image list --architecture Arm64 --publisher Canonical --all --output table
Veja todas as imagens disponíveis
Outra maneira de localizar 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 esses comandos, você determina estes valores:
Liste os editores de imagem para um local. Neste exemplo, estamos observando a região Oeste dos EUA.
az vm image list-publishers --location westus --output table
Para um determinado editor, liste suas ofertas. Neste exemplo, você adiciona RedHat como o publicador.
az vm image list-offers --location westus --publisher RedHat --output table
Para uma determinada oferta, liste seus SKUs. Neste exemplo, você adiciona RHEL como a oferta.
az vm image list-skus --location westus --publisher RedHat --offer RHEL --output table
Observação
A Canonical alterou os nomes de Oferta usados para as versões mais recentes. Antes do Ubuntu 20.04, o nome da Oferta é UbuntuServer. O nome da Oferta é 0001-com-ubuntu-server-focal
para o Ubuntu 20.04 e 0001-com-ubuntu-server-jammy
para o Ubuntu 22.04.
Para um determinado editor, oferta e SKU, mostre todas as versões da imagem. Neste exemplo, você adiciona 9_1 como o 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 parâmetro --image
quando criar uma VM com o comando az vm create. Você também pode substituir o número da versão na URN por "latest" para usar a versão mais recente da imagem.
Se você implantar uma VM com um modelo do Gerenciador de Recursos, defina os parâmetros de imagem individualmente nas propriedades imageReference
. Consulte a referência de modelo.
Verifique as informações do plano de compra
Algumas imagens de VM no Azure Marketplace têm licenças e termos de compra adicionais que você deve aceitar antes de implantá-las programaticamente.
Para implantar uma VM de uma imagem assim, você precisará aceitar os termos da imagem na primeira vez que usá-la, uma vez por assinatura. Você também precisará especificar os parâmetros do plano de compra para implantar uma VM dessa imagem
Para exibir as informações do plano de compra de uma imagem, execute o comando az vm image show com a URN da imagem. Se a propriedade plan
na saída não for null
, isso significa que 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 possui termos adicionais, porque a informação plan
é 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
}
Executar um comando semelhante para a imagem de RabbitMQ Certified by Bitnami mostra as seguintes plan
propriedades: name
, product
e publisher
. (Algumas imagens também têm uma propriedade promotion code
.)
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 exibir e aceitar os termos da licença, use o comando az vm image terms. Quando aceita os termos, você habilita a implantação programática na 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 da 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 comando az vm create
.
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 o RabbitMQ Certified por imagem 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 você receber uma mensagem sobre como aceitar os termos da imagem, reveja a seção Aceitar os Termos. Verifique se a saída de az vm image accept-terms
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 que foi criado usando uma imagem 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 na mesma imagem, você pode obter o nome do plano, o distribuidor 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, em seguida, exibe as informações do plano de compra.
az vm get-instance-view -g myResourceGroup -n myVM --query plan
Se você não tiver as informações de plano antes da exclusão da VM original, você pode registrar uma solicitação de suporte. Eles precisarão do nome da VM, do ID da assinatura e do carimbo de data/hora da operação de exclusão.
Depois de obter as informações do plano, você pode criar a nova VM usando o parâmetro --attach-os-disk
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óximas etapas
Para criar uma máquina virtual rapidamente usando as informações de imagem, consulte Criar e gerenciar VMs do Linux usando a CLI do Azure.