Utilitários de Migração de Imagem do OCI

Você pode migrar imagens on-premises do Oracle Linux para o Oracle Cloud Infrastructure com os utilitários oci-image-migrate.

Observação

Os utilitários oci-image-migrate não fazem parte dos Utilitários do OCI pré-instalados, mas estão disponíveis no repositório addons. Você deve instalar manualmente os utilitários oci-image-migrate em sua imagem on-premises.

Compatibilidade

Você pode usar os utilitários para migrar máquinas virtuais e hosts físicos para o Oracle Cloud Infrastructure. Para migrar, você deve criar uma imagem de disco compatível e salvá-la em um local compartilhado em que um host do Oracle Linux possa acessá-la. Os utilitários de migração funcionam com o formato de imagem de disco (VMDK) padrão do Oracle VM VirtualBox ou o formato de imagem de disco de cópia na gravação do QEMU (QCOW2) que é comumente usado com o Oracle Linux KVM.

Como os Utilitários Alteram a Imagem

Os utilitários verificam se o sistema operacional da máquina virtual é compatível e executam as alterações necessárias para garantir que ele seja executado corretamente como uma instância de computação no Oracle Cloud Infrastructure. Para saber mais sobre as alterações que esses utilitários automatizam, consulte BYOI (Bring Your Own Image).

Migrando uma Imagem com oci-image-migrate

Instale os utilitários oci-image-migrate, converta quaisquer instalações físicas em uma imagem de disco virtual e migre a imagem de disco virtual para o Oracle Cloud Infrastructure.

Instalando os Utilitários de Migração

Instale os utilitários no sistema host antes de migrar.

Oracle Linux 9

  1. Ative o repositório do ol9_addons yum para o Oracle Linux 9:

    sudo dnf config-manager --enable ol9_addons
  2. Atualize o sistema usando o comando dnf update e instale os pacotes necessários:

    sudo dnf update -y
    sudo dnf install -y python36-oci-sdk python36-oci-cli oci-utils-migrate
  3. Caso pretenda migrar uma instalação física, instale o pacote qemu-img:

    sudo dnf install -y qemu-img

Oracle Linux 8

  1. Ative o repositório yum ol8_addons para o Oracle Linux 8:

    sudo dnf config-manager --enable ol8_addons
  2. Atualize o sistema usando o comando dnf update e instale os pacotes necessários:

    sudo dnf update -y
    sudo dnf install -y python36-oci-sdk python36-oci-cli oci-utils-migrate
  3. Caso pretenda migrar uma instalação física, instale o pacote qemu-img:

    sudo dnf install -y qemu-img

Oracle Linux 7 (suporte estendido)

  1. Ative os repositórios ol7_addons e ol7_kvm_utils para o Oracle Linux 7:

    sudo yum-config-manager --enable ol7_addons ol7_kvm_utils
  2. Atualize o sistema usando o comando yum update e instale os pacotes necessários:

    sudo yum update -y
    sudo yum install -y python36-oci-sdk python36-oci-cli oci-utils-migrate
  3. Caso pretenda migrar uma instalação física, instale o pacote qemu-img:

    sudo yum install -y qemu-img

Convertendo uma Instalação Física em uma Imagem de Disco Virtual

Para migrar uma instalação física, crie uma imagem de disco bruto e converta-a em um formato de disco rígido virtual (VMDK ou QCOW2). Em seguida, você pode seguir as instruções em Migrando uma Imagem de Disco Virtual.

Criar a Imagem de Disco Bruto

  1. Antes de desligar a máquina física para criar a imagem, inclua temporariamente todos os drivers de dispositivos no ramdisk inicial (initramfs):

    sudo dracut --force --no-hostonly
  2. Depois de desligar a máquina física, use um sistema de recuperação para criar uma imagem de disco para um local externo:

    sudo dd if=device_or_volume of=path_to_image bs=4M status=progress conv=sync,noerror
  3. Selecione um formato de disco VMDK (compatível com o Oracle VM Virtualbox) ou QCOW2 (compatível com o Oracle Linux KVM) e converta a imagem do disco.

Opção 1: Converter em VMDK (Formato de Disco de Máquina Virtual)

  1. Converta sua imagem de disco bruta para o formato VMDK (Formato de Disco de Máquina Virtual). Esse formato de arquivo é usado para discos rígidos virtuais que são compatíveis com o Oracle VM Virtualbox.

    qemu-img convert -f raw -p -O vmdk raw_disk_image exported_file.vmdk
  2. Como opção, teste seu disco rígido virtual antes de empacotá-lo e importá-lo para o Oracle Cloud Infrastructure.

    Para obter mais informações, consulte a seção Disk Image Files na documentação do Oracle VM VirtualBox. Para obter mais informações sobre o comando qemu-img, consulte a página man qemu-img(1).

  3. Prossiga para Migrando uma Imagem de Disco Virtual para o Oracle Cloud Infrastructure.

Opção 2: Converter em Formato de Cópia na Gravação de QEMU (QCOW2)

  1. Converta a sua imagem de disco bruto em cópia na gravação de QEMU (QCOW2). Esse formato de armazenamento é usado para discos rígidos virtuais compatíveis com o Oracle Linux KVM.

    qemu-img convert -f raw -p -c -O qcow2 raw_disk_image exported_file.qcow2
  2. Como opção, teste seu disco rígido virtual antes de empacotá-lo e importá-lo para o Oracle Cloud Infrastructure.

    Para obter mais informações, consulte o capítulo Working with Storage for KVM Guest no Oracle Linux KVM User's Guide.

  3. Prossiga para Migrando uma Imagem de Disco Virtual para o Oracle Cloud Infrastructure.

Migrando uma Imagem de Disco Virtual para o Oracle Cloud Infrastructure

Use os utilitários oci-image-migrate para migrar uma imagem de disco virtual para uma instância do Oracle Cloud Infrastructure.

Pré-requisitos

Antes de migrar, certifique-se de que você já:

Se você for novo no Oracle Cloud Infrastructure, consulte a seção Conceitos Básicos na documentação do Oracle Cloud Infrastructure.

Usar os Utilitários para Migrar a Imagem

  1. Conclua os pré-requisitos.
  2. Verifique e pré-processe seu disco rígido virtual no formato VMDK ou QCOW2:
    sudo oci-image-migrate -y -i unprocessed_virtual_hard_disk
  3. Faça upload do seu disco rígido virtual pré-processado para um bucket do Oracle Cloud Infrastructure como uma imagem personalizada:
    oci-image-migrate-upload -y -i processed_virtual_hard_disk -b bucket_name -o image_name
  4. Importe o arquivo de imagem do armazenamento de objetos no bucket do Oracle Cloud Infrastructure para o repositório de imagens personalizadas:
    oci-image-migrate-import -y -i image_name -b bucket_name -c compartment_name
  5. Se você migrou de um host físico, gere novamente initramfs em cada nova instância usando a imagem personalizada importada:
    sudo dracut --force

Referência de Utilitários de Migração

Saiba mais detalhes sobre cada utilitário, incluindo uma descrição, opções e exemplos de uso.

oci-image-migrate

Descrição

Prepara uma imagem on-premises para importação para o Oracle Cloud Infrastructure. Execute esse comando como raiz.

O utilitário oci-image-migrate oferece suporte à migração de arquivos de imagem no formato qcow2 e vmdk.

O utilitário faz o seguinte para preparar a imagem para migração:

  • Verifica os pré-requisitos para importar a imagem.
  • Desativa as interfaces de rede, exceto a interface de rede principal, que é configurada como um cliente DHCP.
  • Instala pacotes recomendados, como o pacote cloud-init. A lista de pacotes instalados é exibida no arquivo /etc/oci-utils/oci-migrate-conf.yaml.
  • Tentativas de acessar servidores remotos que hospedam repositórios de software para a imagem que está sendo processada. Os servidores de nomes DNS (Servidor de Nome de Domínio) e as definições de proxy devem ser capazes de acessar os repositórios de software.
  • Define o usuário da nuvem padrão como opc.

Uso

oci-image-migrate [-i unprocessed_virtual_hard_disk | --input-image unprocessed_virtual_hard_disk] [-y | --yes] [-v | --verbose] [-h | --help}

Opções

-i unprocessed_virtual_hard_disk | --input-image unprocessed_virtual_hard_disk
Especifique o caminho completo para o disco rígido virtual não processado. Esta opção é obrigatória.
-y | --yes
Responde "yes" aos prompts.
-v | --verbose
Exibe informações detalhadas durante o processamento da imagem no terminal. Essas informações podem solucionar erros ou monitorar o status. Essas informações de depuração também são gravadas em /var/tmp.
-h | --help
Exibe um resumo das opções da linha de comando.

Exemplo

$ sudo oci-image-migrate /omv/data/images/ol79.vmdk -v
2021-03-30 20:38:38,177 - oci-utils.migrate-tools - DEBUG(migrate_tools:223) - __ Get config data: helpers_list
2021-03-30 20:38:38,205 - oci-utils.migrate-tools - DEBUG(migrate_tools:223) - __ Get config data: lc_all
...

oci-image-migrate-upload

Descrição

Faz upload de um arquivo de imagem on-premises para um bucket de armazenamento de objetos no Oracle Cloud Infrastructure. Esse comando não requer privilégios raiz, desde que você possa acessar o bucket de armazenamento de objetos no Oracle Cloud Infrastructure e tenha privilégios de gravação nos diretórios em que os arquivos de log e resultados são gravados (/var/tmp/).

Uso

oci-image-migrate-upload [-i processed_virtual_hard_disk | --input-image processed_virtual_hard_disk] [-b bucket_name | --bucket-name bucket_name] [-o output_name | --output-name output_name] [-y | --yes] [-v | --verbose] [-h | --help}

Opções

-i processed_virtual_hard_disk | --input-image processed_virtual_hard_disk
Especifique o caminho completo para o disco rígido virtual processado. Esta opção é obrigatória.
-b bucket_name | --bucket-name bucket_name
Especifique o nome do bucket de armazenamento de objetos no Oracle Cloud Infrastructure para armazenar o arquivo de imagem. Esta opção é obrigatória.
-o output_name | --output-name output_name
Especifique o nome do arquivo de imagem a ser usado no armazenamento de objetos. Se não for especificado, o nome do disco rígido virtual processado será usado como o nome da imagem.
-y | --yes
Responde "yes" aos prompts.
-v | --verbose
Exibe informações detalhadas durante o processamento do upload da imagem no terminal. Use essas informações para solucionar erros ou monitorar o status. Essas informações de depuração também são gravadas em /var/tmp.
-h | --help
Exibe um resumo das opções da linha de comando.

Exemplo

$ oci-image-migrate-upload -v -i /omv/data/images/ol79.vmdk -b test_bucket_001 -o ol79_demo.qcow2

  Uploading ol79.vmdk -b test_bucket_001 -o ol79_demo.qcow2 at Thu Mar 25 20:44:16 2021
  Uploading /omv/data/images/ol79.vmdk to object storage test_bucket_001 in the Oracle Cloud Infrastructure as ol79_demo.qcow2
  Object storage test_bucket_001 present.
  Agree to proceed uploading /omv/data/images/ol79.vmdk to test_bucket_001 as ol79_demo.qcow2? (y/N) y


  Uploading /omv/data/images/ol79.vmdk, this may take a while....
  00:03:12 [          uploading ol79_demo.qcow2

oci-image-migrate-import

Descrição

Importa uma imagem do armazenamento de objetos para o repositório de imagens personalizadas no Oracle Cloud Infrastructure. Esse comando não requer privilégios raiz, desde que você possa acessar o bucket de armazenamento de objetos no Oracle Cloud Infrastructure e tenha privilégios de gravação nos diretórios em que os arquivos de log e resultados são gravados (/var/tmp/).

Uso

oci-image-migrate-import[-i image_name | --input-image image_name] [-b bucket_name | --bucket-name bucket_name] [-c compartment_name | --compartment_name compartment_name] [-d display_name | display-name display_name] [-l launch_mode | launch-mode launch_mode] [-y | --yes] [-v | --verbose] [-h | --help}

Opções

-i image_name | --input-image image_name
Especifique o nome da imagem a ser importada como uma imagem personalizada. Esta opção é obrigatória.
-b bucket_name| --bucket-name bucket_name
Especifique o nome do bucket de armazenamento de objetos no Oracle Cloud Infrastructure no qual o arquivo de imagem é armazenado. Esta opção é obrigatória.
-c compartment_name | --compartment-name compartment_name
Especifique o nome do compartimento de destino. Esta opção é obrigatória.
-d display_name | --display-name display_name
Especifique o nome a ser exibido para a imagem personalizada no repositório de imagens personalizadas no Oracle Cloud Infrastructure. Se esse parâmetro não for especificado, o nome da imagem será usado como o nome para exibição.
-l launch_mode | --launch-mode launch_mode
Especifique o modo de inicialização que a imagem personalizada usa quando iniciada. Os valores possíveis são PARAVIRTUALIZED, EMULATED e NATIVE. Se um modo não for especificado, o padrão será PARAVIRTUALIZED.
-v | --verbose
Exibe informações detalhadas durante o processamento de importação de imagens no terminal. Use essas informações para solucionar erros ou monitorar o andamento. Essas informações de depuração também são gravadas em /var/tmp.
-y | --yes
Responde "yes" aos prompts.
-h | --help
Exibe um resumo das opções da linha de comando.

Exemplo

$ oci-image-migrate-import -v -y -i ol79_demo.qcow2 -b test_bucket_001 -c OLimages -d ol79_demo

  Importing ol79_demo.qcow2 from test_bucket_001 into test_bucket_001 as ol79_demo and setting launch mode as PARAVIRTUALIZED
  Object storage namespace: IMAGETEST
  Compartment: OLimages
  Object storage test_bucket_001 present.
  Import ol79_demo.qcow2 to OLimages as ol79_demo y
  00:00:05 [               importing ol79_demo