Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Azure VMs (máquinas virtuais) dão suporte a duas interfaces de controlador de armazenamento: SCSI (Small Computer System Interface) e NVM Express (NVMe). O SCSI é um padrão herdado que fornece conectividade física e transferência de dados entre computadores e dispositivos periféricos. O NVMe fornece conectividade semelhante, mas é uma interface mais rápida e eficiente para transferência de dados entre servidores e sistemas de armazenamento.
Este artigo mostra como converter uma VM Azure de um controlador de disco SCSI em NVMe usando Azure Boost e o script de Conversão de NVMe Azure. O mesmo script e procedimento se aplicam a:
- VMs linux e Windows.
- VMs com ou sem discos de dados e um disco temporário.
Azure continua a dar suporte à interface SCSI nas ofertas de VM que fornecem armazenamento SCSI. No entanto, nem todas as novas séries de VM incluem SCSI como uma opção daqui para frente.
O que está mudando para sua VM?
Alterar a interface do host de SCSI para NVMe não altera o armazenamento remoto (disco do sistema operacional ou discos de dados). Ele altera a maneira como o sistema operacional usa os discos.
| Disk | SCSI VM | VM NVMe (v5 com disco temporário) | VM NVMe (v6) |
|---|---|---|---|
| Disco do sistema operacional | /dev/sda | /dev/nvme0n1 | /dev/nvme0n1 |
| Disco temporário | /dev/sdb | /dev/sda | /dev/nvme1n1 |
| Primeiro disco de dados | /dev/sdc | /dev/nvme0n2 | /dev/nvme0n2 |
Converter sua VM Azure do SCSI em NVMe usando Azure Boost pode ajudá-lo a aproveitar ao máximo essas melhorias de desempenho e manter uma vantagem competitiva no cenário de computação em nuvem.
Migrar uma VM do SCSI para o NVMe
Para migrar do SCSI para o NVMe, siga estas etapas de alto nível:
- Verifique se sua série de VMs dá suporte ao NVMe.
- Verifique os pré-requisitos do sistema operacional.
- Converta sua VM em NVMe.
- Verifique a conversão.
1. Verifique se sua série de máquinas virtuais dá suporte ao NVMe
A tabela de disponibilidade do Azure Boost lista os tamanhos de VM que dão suporte a discos anexados NVMe.
2. Verifique os pré-requisitos
Antes de começar, verifique se você tem os seguintes pré-requisitos:
- Uma assinatura Azure e uma máquina virtual que você precisa converter de SCSI para NVMe ou de NVMe para SCSI
- PowerShell e o módulo Az instalado e configurado
- Permissões apropriadas para executar scripts em recursos de Azure
3. Uso
Para executar o script, abra o PowerShell como administrador e siga estas etapas:
- Instale o PowerShell ou execute o script no Azure Cloud Shell.
Dica
Instale o PowerShell usando a documentação do PowerShell.
- Permitir arquivos de script do PowerShell sem sinal.
Set-ExecutionPolicy -ExecutionPolicy Unrestricted
- Conecte-se à sua conta Azure usando
Connect-AzAccount.
Connect-AzAccount
- Verifique se você está conectado à sua assinatura. Para alterar a assinatura, use
Set-AzContext.
Select-AzSubscription -Subscription xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
- Baixe o script.
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/Azure/SAP-on-Azure-Scripts-and-Utilities/refs/heads/main/Azure-NVMe-Utils/Azure-NVMe-Conversion.ps1" -OutFile ".\Azure-NVMe-Conversion.ps1"
- Execute o script de conversão.
.\Azure-NVMe-Conversion.ps1
Note
Se você estiver convertendo entre tamanhos de VM com suporte de disco de recurso (temporário) diferente, sua assinatura Azure deverá ser registrada para o VMTempDiskResizePreview recurso. Se o recurso não estiver registrado, o script sairá com um erro. Registre o recurso usando o comando a seguir, aguarde 10 minutos para que a aprovação automática entre em vigor e execute novamente o script.
Register-AzProviderFeature -FeatureName VMTempDiskResizePreview -ProviderNamespace Microsoft.Compute
Exemplo
.\Azure-NVMe-Conversion.ps1 -ResourceGroupName <your-RG> -VMName <your-VMname> -NewControllerType <NVMe/SCSI> -VMSize <new-VM-SKU> -StartVM
O script tem os seguintes parâmetros.
| Parâmetro | Descrição | Obrigatório |
|---|---|---|
-ResourceGroupName |
O nome do grupo de recursos para sua VM. | Yes |
-VMName |
O nome da sua VM no Azure. | Yes |
-NewControllerType |
O tipo de controlador de armazenamento para o qual converter a VM (NVMe ou SCSI). | Yes |
-VMSize |
O Azure SKU de VM para o qual converter a VM. | Yes |
-StartVM |
Inicie a VM após a conversão. | Não |
-FixOperatingSystemSettings |
Corrija automaticamente as configurações do sistema operacional usando Azure Executar Comandos. | Não |
-WriteLogfile |
Crie um arquivo de log. | Não |
-IgnoreSKUCheck |
Ignore a verificação da SKU da VM. | Não |
-IgnoreWindowsVersionCheck |
Ignore a verificação de versão do Windows. | Não |
-IgnoreAzureModuleCheck |
Não execute a verificação de módulos Azure instalados. | Não |
-IgnoreOSCheck |
Não verifique se o sistema operacional está pronto. A expectativa é que o sistema operacional esteja pronto. | Não |
-SleepSeconds |
O tempo para Azure para resolver as alterações antes de iniciar a VM. | Não |
O script executa as seguintes etapas:
- Valida as versões do módulo Az, a existência da VM, o tipo de sistema operacional, a geração, o tipo de controlador atual e a funcionalidade NVMe da SKU de VM de destino.
- Com
-FixOperatingSystemSettings, valida e configura o sistema operacional convidado para NVMe usando Azure Executar Comando:- No Linux, verifica se o driver NVMe está em
initrd/initramfs, definenvme_core.io_timeout=240e verifica/etc/fstabse há nomes de dispositivo preteridos. - No Windows, configura o
stornvmedriver para iniciar na inicialização (sc.exe config stornvme start=boot).
- No Linux, verifica se o driver NVMe está em
- Interrompe e desaloca a VM.
- Atualizações
supportedCapabilities.diskControllerTypesnoSCSI, NVMedisco do sistema operacional. - Redimensiona a VM para o SKU de destino e define o tipo de controlador de disco como NVMe.
- Inicia a VM (com
-StartVM).
4. Verificar a conversão
Confirmar usando o PowerShell
Depois que a VM for reiniciada, confirme se o tipo de controlador de disco foi alterado com êxito.
$vm = Get-AzVM -ResourceGroupName "<resource-group-name>" -VMName "<vm-name>"
$vm.StorageProfile.DiskControllerType
Verificar o resultado dentro do convidado
Verifique os dispositivos usando o nvme comando. Se o nvme comando estiver ausente, instale o nvme-cli pacote.
nvme list
A saída mostra o disco do sistema operacional e os discos de dados.
Dica
Você sempre pode reverter para SCSI. O script fornece um comando no final de uma execução bem-sucedida para reverter para sua configuração original. Salve esse comando antes de fechar a sessão.
Se você precisar reverter, execute novamente o script com -NewControllerType SCSI e a SKU original da VM:
.\Azure-NVMe-Conversion.ps1 -ResourceGroupName <your-RG> -VMName <your-VMname> -NewControllerType SCSI -VMSize <original-SKU> -StartVM