Blog
Domine a plataforma e otimize seus gastos!
Gerenciando imagens de máquinas com Azure Compute Gallery: consistência e automação de VMs

Introdução
Manter consistência na criação de máquinas virtuais (VMs) e clusters do Azure Kubernetes Service (AKS) é um desafio comum em ambientes corporativos. O Azure Compute Gallery (ACG) é a solução recomendada pela Microsoft para padronizar, distribuir e versionar imagens de sistema operacional e aplicações em escala.
Neste artigo, você vai aprender como usar o ACG para padronizar ambientes de máquinas virtuais, como replicar imagens entre regiões e como aplicar práticas de governança com infraestrutura como código.
O que é Azure Compute Gallery?
O Azure Compute Gallery (antigo Shared Image Gallery) é um serviço gerenciado que permite:
- Versionamento e controle de mudanças
- Compartilhamento com múltiplas subscriptions e tenants
- Replicação regional de imagens
- Uso consistente em VMs e VM Scale Sets
Estrutura do ACG

- Image definition: o “nome” da imagem (ex:
ubuntu-dev
) - Image version: versões específicas com data e região
- Target region: para replicação de imagem
Exemplo prático: criando uma imagem e usando no deploy
1. Criar uma imagem personalizada
Use o Azure CLI para capturar uma imagem de uma VM:
az vm deallocate --resource-group rg --name vm-base
az vm generalize --resource-group rg --name vm-base
az image create \
--resource-group rg \
--name image-base \
--source vm-base
2. Criar a Azure Compute Gallery
az sig create --resource-group rg --gallery-name devGallery
3. Criar uma definição de imagem
az sig image-definition create \
--resource-group rg \
--gallery-name devGallery \
--gallery-image-definition ubuntu-dev \
--publisher mycompany \
--offer devlinux \
--sku 20_04-lts \
--os-type Linux
4. Criar uma versão da imagem
az sig image-version create \
--resource-group rg \
--gallery-name devGallery \
--gallery-image-definition ubuntu-dev \
--gallery-image-version 1.0.0 \
--target-regions eastus westeurope \
--managed-image image-base
Usando em uma VM
az vm create \
--resource-group rg \
--name vm-from-gallery \
--image "/subscriptions/.../resourceGroups/rg/providers/Microsoft.Compute/galleries/devGallery/images/ubuntu-dev/versions/1.0.0" \
--admin-username azureuser \
--generate-ssh-keys
Sobre imagens personalizadas em AKS
Atualmente, o Azure Kubernetes Service (AKS) não permite o uso de imagens personalizadas de sistema operacional (BYO image) nos node pools.
Em vez disso, use as abordagens suportadas abaixo para customização:
1. Custom Node Configuration
Permite configurar parâmetros como swap
, kubelet
, max pods
, entre outros.
🔗 Custom node configuration – AKS
2. DaemonSets para bootstrap
Use DaemonSets para instalar agentes, certificados ou configurações automaticamente em todos os nós.
apiVersion: apps/v1
kind: DaemonSet
metadata:
name: install-monitor-agent
spec:
selector:
matchLabels:
name: install-monitor-agent
template:
metadata:
labels:
name: install-monitor-agent
spec:
containers:
- name: setup
image: myregistry/init-agent:latest
volumeMounts:
- mountPath: /host/etc
name: etc-volume
securityContext:
privileged: true
volumes:
- name: etc-volume
hostPath:
path: /etc
Boas práticas com Azure Compute Gallery
Prática | Benefício |
---|---|
Versões bem definidas e nomeadas | Rastreabilidade e rollback fácil |
Replicação geográfica de imagens | Deploy rápido e resiliente |
Integração com pipelines DevOps | Automação de imagens golden |
Imagens validadas e endurecidas | Segurança e conformidade |
Monitoramento e controle
- Use Azure Policy para forçar uso de imagens da galeria
- Use Azure Monitor e Activity Logs para rastrear uso e alterações
Referências oficiais
- Azure Compute Gallery overview
- Create and use shared images
- Custom node configuration in AKS
- Limitations of custom images in AKS
Conclusão
O Azure Compute Gallery é uma ferramenta poderosa para padronizar e escalar ambientes em nuvem com segurança e eficiência.
Usar imagens versionadas, validadas e replicadas reduz erros operacionais, acelera o provisionamento e garante consistência em todo o ciclo de vida da infraestrutura.