Olá!
No post de hoje iremos mostrar como fazer a migração de uma instância para Oracle Cloud usando o modo Paravirtualizado na importação da VM.
O modo Paravirtualizado tem um leve ganho de performance em relação ao modo Emulado e pode ser essencial para alguns cenários de migração.
Para esse cenário iremos usar o Oracle VirtIO Drivers, um instalador simples que irá garantir que a imagem suba normalmente quando selecionado o modo Paravirtualizado.
Vale ressaltar que existe um tamanho máximo de imagem (400GB) que pode ser importada e uma série de Sistemas Operacionais suportados que podem ser validados no link: https://docs.oracle.com/pt-br/iaas/Content/Compute/References/bringyourownimage.htm
Importante 1 ! Sempre faça um teste do cenário em um ambiente de teste para validar e garantir a compatibilidade dos drivers.
Importante 2! Sempre faça backup da origem antes de iniciar o processo para que se caso ocorra algum problema você consiga restaurar sua VM de origem no estado anterior a instalação do driver.
Passo 1: Fazendo o download do Oracle VirtIO Drivers
Acesse o Oracle Software Delivery Club e procure por Oracle Linux, selecione DLP:Oracle Linux 7.7.0.0.0 (Oracle Linux)

Depois navegue até Continue, na parte superior

Na próxima janela selecione x86 64 Bit e clique em Continue

Aceite os termos e clique em Continue

Nessa próxima página iremos fazer o download somente dos drivers VirtIO, marque somente:
V1030938-01.zip, conforme imagem abaixo e clique em Download

Ele irá baixar o Oracle Download Manager, selecione o caminho do download do Arquivo


Após o download ser finalizado, vamos instalar dentro do Windows Server.
Passo 2: Instalando o VirtIO dentro do Windows Server da Origem
Extraia o arquivo e execute o Setup

As proximas etapas são de Next e Install não precisa fazer nenhuma alteração.

No final da instalação a VM pede para reiniciar, reinicie a máquina virtual.

Passo 3: Faça o upload da imagem para o Object Storage
Para essa etapa você pode usar esse ARTIGO
Passo 4: Criando a custom Image
Depois que finalizar o Upload, a imagem ficará dentro do Bucket enviado.

Para criar a imagem navegue até Compute > Custom Images

Clique em Import Image

Faça as seguintes ações:
- 1 – Selecione o compartimento que será criada a imagem
- 2 – Dê um nome
- 3 – Selecione o Sistema Operacional
- 4 – Selecione a versão do Sistema Operacional
- 5 – Marque a opção que você verificou os requisitos de compatibilidade e licenciamento
- 6 – Selecione o Objeto (imagem de origem)
- 7 – Selecione o Bucket
- 8 – Selecione o arquivo VMDK
- 9 – Selecione o tipo de imagem
- 10 – Selecione a forma de importação, no nosso caso Paravirtualizado.
Depois clique em Import Image



A imagem será criada, o tempo de criação vai depender do tamanho do arquivo.
Depois que finalizar, altere as capacidades da Imagem para que o Sistema Operacional consiga carregar normalmente.
Vá até a imagem, clique em Edit image capabilities e depois mude para BIOS


Passo 5: Validando a Custom Image
Após finalizar o processo de importar a imagem, vamos agora criar uma instância usando a nossa Custom Image.
O processo de criação da instância é identico a um normal, a única diferença é que no processo de criação ao invés de selecionarmos as imagens da Oracle, selecionaremos a Custom Image criada.

A instância será criada com as funcionalidades de Paravirtualizado

Abaixo instância acessível após o início.
Tá bom, mas e se eu importar uma imagem sem driver no formato Paravirtualizado. O que acontece?
O que pode ocorrer na maioria das vezes é o Sistema Operacional não conseguir iniciar corretamente e ficar travado no Boot.

DICA BONUS!
Quando você leva uma instância Windows para Oracle Cloud o monitoramento de plataforma não fica disponível e você não consegue coletar algumas métricas de Monitoramento, conforme exemplo abaixo:

Para resolver isso, faça o seguinte:
Depois que o Windows iniciar, abra o Powershell como Administrador e rode o seguinte comando:
cd C:\
Start-BitsTransfer -Source "https://objectstorage.us-phoenix-1.oraclecloud.com/p/_vbM4CkafpK23n8wgcejMNpbJvIBkxkKXIU8j8zkTvjmYvro7-CKbpJ9R9D5jRvr/n/imagegen/b/agents/o/OracleCloudAgentSetup_v1.26.0.msi" -Destination "C:\OracleCloudAgentSetup.msi"
C:\Windows\System32\msiexec.exe /i "C:\OracleCloudAgentSetup.msi" /quiet /L*V "C:\OracleCloudAgentSetup.log"
Isso instalará o Oracle Cloud Agent.
Depois que instalar reinicie o computador e aguarde uns minutos, a coleta irá iniciar normalmente.

Caso queira instalar usando o Cloud Init, execute o comando abaixo:
#ps1_sysnative
cd C:\
Start-BitsTransfer -Source "https://objectstorage.us-phoenix-1.oraclecloud.com/p/_vbM4CkafpK23n8wgcejMNpbJvIBkxkKXIU8j8zkTvjmYvro7-CKbpJ9R9D5jRvr/n/imagegen/b/agents/o/OracleCloudAgentSetup_v1.26.0.msi" -Destination "C:\OracleCloudAgentSetup.msi"
C:\Windows\System32\msiexec.exe /i "C:\OracleCloudAgentSetup.msi" /quiet /L*V "C:\OracleCloudAgentSetup.log"
Nesse doc da Oracle você tem todos os dados necessários sobre o agente para todos os Sistemas Operacionais
https://docs.oracle.com/pt-br/iaas/Content/Compute/Tasks/manage-plugins.htm#install-agent
Uma resposta para “Migrando sua Máquina Virtual em VMDK para Oracle Cloud usando o modo Paravirtualizado”
Exelente tutorial, em nenhum outro lugar dão a dica de instalar os drivers antes. Esta sendo muito útil em nossos projetos.