EOL (Imagem do Oracle Linux KVM)

O KVM fornece um conjunto de módulos que permite que você use o kernel do Oracle Linux como hipervisor para executar máquinas virtuais. Por padrão, o KVM é incorporado ao Unbreakable Enterprise Kernel (UEK).

Importante

Esta imagem é o fim da vida útil (EOL).

O Suporte Premier do Oracle Linux 7 terminou em 31 de dezembro de 2024 e a imagem do Oracle Linux KVM do Oracle Cloud Marketplace não é mais suportada.

Se você já estiver usando a imagem do Oracle Linux KVM do Oracle Cloud Marketplace com sua instância de computação, não haverá alterações na sua instância.

A imagem do Oracle KVM inclui:

  • O ambiente base e ferramentas para configurar uma instância Oracle Cloud como host KVM para implantação e gerenciamento de máquinas virtuais
  • Utilitários para gerenciar as configurações de host, convidados, armazenamento e rede necessárias para o ambiente
Importante

Atualmente, a imagem da Oracle não se destina ao uso com outras soluções de gerenciamento virtual, como o Oracle Linux Virtualization Manager.

Se você não estiver familiarizado com o Oracle Cloud Infrastructure, verifique a seção Conceitos Básicos na documentação do Oracle Cloud Infrastructure. Você também deve estar familiarizado com o gerenciamento de convidados de máquina virtual usando libvirt, especialmente virsh e virt-install.

Para obter mais informações sobre o uso do KVM com o Oracle Linux, consulte:

Informações da Release

Conheça os recursos e atualizações mais recentes feitos na imagem do KVM.

A Oracle atualiza a imagem do KVM regularmente com as últimas atualizações e relatórios de erros de segurança. A Oracle só atualiza este documento quando novos recursos são adicionados ou recursos existentes são modificados.

Observação

Release2.0

A Release 2.0 introduz as seguintes atualizações:

  • O sistema operacional base é atualizado para o Oracle Linux 7 Update 9 e Unbreakable Enterprise Kernel Release 6 (UEKR6).
  • O pacote oci-utils é atualizado para v0.11.6-9.
  • O Oracle Cloud Marketplace agora oferece duas versões da imagem do Oracle Linux KVM:
    • Imagem do Oracle Linux KVM (Linux Autônomo): Essa imagem está configurada para executar o Oracle Autonomous Linux usando os repositórios padrão do Oracle Linux. O Oracle Autonomous Linux fornece recursos autônomos, como aplicação automática de patch no Ksplice com indisponibilidade zero e detecção de exploração conhecida, para ajudar a manter a instância altamente segura e confiável. A versão do Autonomous Linux da imagem está listada no Oracle Cloud Marketplace como imagem do Oracle Linux KVM (Autonomous Linux).

      Para obter mais informações sobre o Oracle Autonomous Linux, consulte Conceitos Básicos: Implantando e Configurando o Oracle Autonomous Linux no Oracle Cloud Infrastructure e Oracle Autonomous Linux para Oracle Cloud Infrastructure (Biblioteca de Aprendizado do Oracle Linux).

    • Imagem do Oracle Linux KVM: A versão da imagem do Oracle Linux está listada no Oracle Cloud Marketplace como imagem do Oracle Linux KVM. Importante

      As releases futuras da imagem do Oracle Linux KVM para o Oracle Cloud Infrastructure serão configuradas como Autonomous Linux usando os repositórios padrão do Oracle Linux.

Release 1.6

  • O sistema operacional base é atualizado para o Oracle Linux 7 Update 8.
  • Os pacotes oci-utils são atualizados para v0.11.3-6.
  • Os utilitários do OCI foram aprimorados para fornecer suporte a várias VNICs. Para obter mais informações, consulte Usando os Utilitários OCI-KVM.
  • A implementação Python3 dos utilitários do OCI inclui os aprimoramentos de segurança do Instance Metadata Service v2.
  • O pacote python36-oci-sdk instalado na imagem para fornecer funcionalidade adicional para utilitários do OCI.
  • O canal Utilitários do Oracle Linux 7 KVM está ativado para fornecer atualizações para os pacotes qemu-kvm e libvirt.

Release 1.5

  • O sistema operacional base é atualizado para o Oracle Linux 7 Update 7.
  • O suporte para formas de computação foi aprimorado para oferecer suporte a:
    • Forma de AMD bare metal (BM) do Oracle Cloud Infrastructure.
    • Virtualização aninhada para formas de máquina virtual (VM) baseadas em Intel do Oracle Cloud Infrastructure.

    Para obter mais informações, consulte Criando uma Máquina Virtual.

  • Os novos utilitários OCI-KVM para o Oracle Cloud Infrastructure estão incluídos nesta release:
    • oci-kvm create-network

      Cria uma rede virtual VNIC para um convidado KVM. Cria uma rede libvirt com ponte sobre uma VNIC, permitindo que uma única VNIC seja compartilhada entre vários convidados.

    • oci-kvm delete-network

      Exclui uma rede virtual VNIC para um convidado KVM.

    • oci-kvm create-storage-pool

      Cria, monta e configura um sistema de arquivos em um dispositivo de armazenamento em blocos ou armazenamento alocado no Oracle Cloud File Storage Service no Oracle Cloud Infrastructure. Permite o uso de um único disco em blocos para hospedar vários discos convidados.

Release1.4

  • O sistema operacional base é baseado no Oracle Linux 7 Update 5.
  • O pacote oci-utils foi atualizado para a versão 0.6.
  • O pacote oci-utils foi aprimorado para fornecer os seguintes recursos:
    • Criação de VNIC usando o comando oci-network-config --create-vnic.
    • Criação de dispositivo de bloco usando o comando oci-iscsi-config --create-volume.
  • As interfaces de rede da Função Virtual agora são totalmente configuradas usando a rede LSB nativa do Oracle Linux systemd (arquivos de configuração de rede ifcfg).

Criando uma Instância e Estabelecendo Conexão com Ela

Consulte Criando uma Instância e Acessando uma Instância.

Observação

  • Você pode criar instâncias do Oracle KVM usando qualquer uma das formas de computação. No entanto, máquinas virtuais baseadas em processador AMD não suportam virtualização aninhada. Para obter mais informações, consulte Formas de Computação.
  • Não é possível anexar um convidado KVM à VLAN 0 em formas com uma NIC física ativa 1. Entretanto, você pode anexar convidados KVM às outras VLANs em qualquer NIC física.

Alocando Armazenamento em Blocos e VNICs

Antes de criar uma máquina virtual em sua instância KVM, aloque armazenamento em blocos e VNICs.

Cada convidado requer um dispositivo de armazenamento em blocos e uma VNIC dedicados do Oracle Cloud Infrastructure.

Criando e Anexando Armazenamento em Blocos

Usando a Console

Use a Console do Oracle Cloud Infrastructure para criar e anexar armazenamento em blocos.

Para obter mais informações, consulte Criando um Volume.

  1. Abra o menu de navegação e clique em Armazenamento. Em Armazenamento em Blocos, clique em Volumes em Blocos.
  2. Selecione Criar Volume em Blocos.
  3. Digite um nome para seu novo volume em blocos e clique em Criar Volume em Blocos.
  4. Abra o menu de navegação e clique em Compute. Em Compute, clique em Instâncias.
  5. Na lista Instâncias, selecione sua instância KVM.
  6. Em Detalhes da Instância, em Recursos, clique em Volumes em Blocos Anexados.
  7. Na seção Volumes em Blocos Anexados, clique em Anexar Volume em Blocos.
  8. Na lista de volumes em blocos, selecione o volume em blocos criado e clique em Anexar.

    O volume em blocos é criado, anexado e é exibido em Volumes em Blocos Anexados na página Detalhes da Instância.

Usando a CLI

Como alternativa, você pode usar o comando oci-iscsi-config para criar e anexar um volume em blocos.

Para obter mais informações, consulte a página de manual oci-iscsi-config.

  1. Estabeleça conexão com sua instância KVM usando SSH, por exemplo:
    ssh –i PRIVATE_KEY_PATH opc@PUBLIC_IP_ADDRESS
  2. Crie e anexe o volume:
    sudo oci-iscsi-config create --attach-volume --volume-name VOLUME_NAME --size SIZE

    Por exemplo, para criar e anexar volume_001 com o tamanho 128 GB:

    # oci-iscsi-config create --attach-volume --volume-name volume_001 --size 128
    Creating a new 128 GB volume pool_volume_001
    Volume [pool_volume_001] created
    Attaching the volume to this instance
    Attaching iSCSI device.
    Volume [pool_volume_001] is attached.

    Para verificar a configuração:

    # oci-iscsi-config show --details
    Currently attached iSCSI devices:
                 Target             | Volume name |          Volume OCID           | Persistent portal  |  Current portal  | Session State | Attached device | Size |
    -----------------------------------------------------------------------------------------------------------------------------------------------------------------
    iqn.2015-12.com.oracleiaas:id...| volume_001  |ocid1.volume.oc1.uk-london-1....|  169.254.2.2:3260  | 169.254.2.2:3260 |   LOGGED_IN   |       sdb       | 128G |
    
    Observação

    Se o comando falhar com: Volume creation has failed: Failed to create volume

    Certifique-se de ter configurado as Chaves de API. Consulte Gerando uma Chave de Assinatura de API ou execute oci setup config na instância.

  3. Opcionalmente, crie um pool de armazenamento:
    sudo oci-kvm create-pool --disk DEVICE_PATH --name POOL_NAME

    Por exemplo, para criar um pool de armazenamento com o nome vm_pool_001 e associar o dispositivo de volume em blocos sdb:

    # oci-kvm create-pool --disk /dev/sdb --name vm_pool_001
    Pool vm_pool_001 successfully created.
    Para verificar a configuração:
    # oci-kvm list-pool
    VM pool Information:
         Name    |        UUID       | Autostart | Active | Persistent | Volumes |  State  |  Capacity  |   Allocation   | Available  |
    -----------------------------------------------------------------------------------------------------------------------------------
     vm_pool_001 | [exampleuniqueID] |    yes    |  yes   |    yes     |    0    | running | 127.94 GiB |      32.25 MiB | 127.90 GiB |
    Observação

    Se o comando oci-kvm list-pool não estiver disponível, execute yum update oci-utils-kvm para atualizar o pacote para 0.12.6 ou posterior.

Criando e Anexando VNICs

Observação

Você pode criar e anexar várias VNICs a uma instância. Repita as etapas a seguir conforme necessário para alocar várias VNICs para sua instância.

Usando a Console

Use a Console do Oracle Cloud Infrastructure para criar e anexar VNICs.

Para obter mais informações, consulte Placas de Interface de Rede Virtual.

  1. Abra o menu de navegação e clique em Compute. Em Compute, clique em Instâncias.
  2. Na lista Instâncias, selecione sua instância KVM.
  3. Em Detalhes da Instância, em Recursos, clique em VNICs Anexadas.
  4. Na seção VNICs Anexadas, clique em Criar VNIC.
  5. Digite um nome para a VNIC e selecione uma rede virtual na nuvem na lista.
  6. Selecione uma sub-rede e clique em Salvar Alterações.

    A VNIC é criada e anexada e é exibida em VNICs Anexadas na página Detalhes da Instância.

  7. Para concluir a configuração, talvez você precise se conectar com a instância e executar o script encontrado aqui: Linux: Configurando o Sistema Operacional para VNICs Secundárias.

Usando a CLI

Como alternativa, você pode usar o comando oci-network-config para criar e anexar VNICs.

Para obter mais informações, consulte a página de manual oci-network-config.

  1. Estabeleça conexão com sua instância KVM usando SSH, por exemplo:
    ssh –i PRIVATE_KEY_PATH opc@PUBLIC_IP_ADDRESS
  2. Crie e anexe a VNIC:
    sudo oci-network-config attach-vnic --name VNIC_NAME

    Por exemplo, crie e anexe uma VNIC chamada vnic_kvm_001:

    # oci-network-config attach-vnic --name vnic_kvm_001
    Creating VNIC: 10.0.7.45

    Para verificar a configuração:

    # oci-network-config show --details
    Network configuration:
    State |    Link    |Status| IP address |     VNIC     |       MAC       |     Hostname     |            Subnet           |  Router IP |Namespace |Index|VLAN tag|    VLAN   |
    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
      -   |    ens3    |  UP  |  10.0.7.81 |  kvm_demo    |00:00:00:00:00:01|     kvm-demo     |10.0.7.0/25 (All-Regional-...|  10.0.7.1  |    -     |  2  |  3280  |     -     |
      -   |    ens5    |  UP  |  10.0.7.45 | vnic_kvm_001 |00:00:00:00:00:02| kvm-demo-vnic... |10.0.7.0/25 (All-Regional-...|  10.0.7.1  |    -     |  5  |  3316  |     -     |
      -   | virbr0-nic | DOWN |       -    |      -       |00:00:00:00:00:03|        -         |              -              |     -      |    -     |  4  |   -    |     -     |
    Operating System level network configuration:
    CONFIG      ADDR    SUBNET     BITS VIRTROUTER    NS     IND      IFACE     VLTAG     VLAN    STATE        MAC                          VNIC ID                                         
    -----------------------------------------------------------------------------------------------------------------------------------------------------------------
      -     10.0.7.81   10.0.7.0    25   10.0.7.1      -      2        ens3      3280      -        UP  00:00:00:00:00:01 ocid1.vnic.oc1.uk-london-1.[exampleuniqueID] 
      -     10.0.7.45   10.0.7.0    25   10.0.7.1      -      5        ens5      3316      -        UP  00:00:00:00:00:02 ocid1.vnic.oc1.uk-london-1.[exampleuniqueID] 
      -        -           -        -       -          -      4     virbr0-nic    -        -       DOWN 00:00:00:00:00:03
    Observação

    Se o comando falhar com: Cannot create the VNIC: Failed to create VNIC: Failed to attach new VNIC:...

    Certifique-se de ter configurado as Chaves de API. Consulte Gerando uma Chave de Assinatura de API ou execute oci setup config na instância.

Como Trabalhar com Máquinas Virtuais

Use os utilitários oci-kvm para criar e remover máquinas virtuais na sua instância do KVM.

Criando uma Máquina Virtual

Use o comando oci-kvm create para criar uma máquina virtual.

  1. Antes de criar uma máquina virtual, certifique-se de ter armazenamento em blocos e VNICs alocados.
  2. Estabeleça conexão com sua instância KVM usando SSH, por exemplo:
    ssh –i PRIVATE_KEY_PATH opc@PUBLIC_IP_ADDRESS

    Para obter mais informações, consulte Acessando uma Instância.

  3. Selecione um dispositivo de armazenamento em blocos para sua máquina virtual:
    1. Execute sudo oci-iscsi-config show --details para mostrar detalhes de todo o armazenamento anexado à sua instância.
    2. Escolha um dispositivo e observe o nome do Dispositivo anexado (como sdb).

      Ao executar o comando de criação, você usará esse nome ao especificar --disk. Adicione /dev ao caminho, por exemplo, /dev/sdb.

  4. Escolha uma VNIC específica para sua máquina virtual:
    1. Execute sudo oci-network-config show --details
    2. Escolha uma VNIC apropriada e anote o nome do Link (como ens5).

      Ao executar o comando de criação, você usará esse nome ao especificar a opção --net.

      Observação

      • Vários convidados não podem usar a mesma VNIC ou dispositivo de armazenamento em blocos.
      • Você pode designar várias VNICs a um único convidado.
      • Você pode anexar várias redes virtuais a um convidado.
  5. Use o comando oci-kvm create com qualquer uma das opções disponíveis para criar a máquina virtual. Para obter mais informações, consulte oci-kvm create.

    Por exemplo:

    oci-kvm create [-D | --domain VM_NAME] [-d | --diskDEVICE_PATH] 
                [-p | --pool POOL_NAME] [-s | --disk-size DISK_SIZE] 
                [-n | --net VNIC] [-v |--virtual-network VIRTUAL_NETWORK_NAME] 
                [-V | --virt OPT_ARGS]
    Observação

    A colocação do arquivo .iso em /home/opc pode causar problemas de permissões. Certifique-se de que o arquivo .iso esteja em um local acessível (como /tmp).

Exemplo de como usar o armazenamento em blocos

Este exemplo cria um convidado usando um dispositivo de armazenamento em blocos específico e uma console serial para saída da console. Você também pode usar outras opções, como VNC, para saída da console. Se uma opção gráfica for usada, configure adequadamente a lista de segurança do Oracle Cloud Infrastructure da sub-rede à qual essa imagem está anexada.

oci-kvm create -D MY_VM_NAME -d /dev/sdb -V --vcpus 4 --memory 8192 --boot cdrom,hd \
--location /tmp/OracleLinux.iso --nographics --console pty,target_type=serial \
--console pty,target_type=virtio --noautoconsole --os-variant=rhel7 --extra-args "console=ttyS0,115200n8"

Exemplo de como usar um pool de armazenamento e uma VNIC

O exemplo cria um convidado usando um pool de armazenamento e uma console serial para saída da console.

sudo oci-kvm create --domain kvm_vm_001 --pool vm_pool_001 --disk-size 24 --net ens5 \
--virt --vcpus 2 --memory 8192 --boot cdrom,hd --location /isos/OracleLinux.iso --nographics \
--console pty,target_type=serial --console pty,target_type=virtio --noautoconsole \
--os-variant=rhel8.0 --extra-args="console=ttyS0,115200n8"

Exemplo de execução de uma instalação kickstart

Este exemplo cria um convidado usando um arquivo kickstart /root/kvm_vm_002_ks.cfg e uma console serial para saída da console.

oci-kvm create --domain kvm_vm_002 --pool vm_pool_001 --disk-size=24 --net ens5 \
--virt --vcpus 2 --memory 8192 --boot cdrom,hd --location /isos/OracleLinux.iso --nographics \
--console pty,target_type=serial --console pty,target_type=virtio --noautoconsole --os-variant=ol7.9 \
--initrd-inject /root/kvm_vm_002_ks.cfg --extra-args="ks=file:kvm_vm_002_ks.cfg console=ttyS0,115200n8"

Exemplo de como usar um pool de armazenamento e redes virtuais

Esse exemplo cria um convidado usando um pool de armazenamento, uma rede virtual e uma console serial para saída da console.

oci-kvm create -D MY_VM -p MY_POOL -s 35 -v MYNET0 -V --vcpus 4 --memory 8192 \
--boot cdrom,hd --location /mnt/OracleLinux.iso --nographics --console pty,target_type=serial \
--console pty,target_type=virtio --noautoconsole --os-variant=rhel7 --extra-args "console=ttyS0,115200n8"

Exemplo de como usar um pool de armazenamento e várias VNICs

Esse exemplo cria um convidado configurado para usar um pool de armazenamento, várias VNICs (duas VNICs nesse exemplo usando a opção -n) e uma console serial para saída da console.

oci-kvm create -D MY_VM -p MY_POOL  -s 35 -n 10.0.0.97 -n 10.0.1.2 -V --vcpus 4 \
--memory 8192 --boot cdrom,hd  --location /tmp/OracleLinux.iso --nographics \
--console pty,target_type=serial --console pty,target_type=virtio --noautoconsole \
--os-variant=rhel7 --extra-args "console=ttyS0,115200n8"

Exemplo de como usar um pool de armazenamento e várias redes virtuais

Este exemplo cria um convidado usando um pool de armazenamento, várias redes libvirt e uma console serial para saída da console.

oci-kvm create -D MY_VM -p MY_POOL -s 35 -v MYNET0 -v MYNET1 -V --vcpus 4 \
--memory 8192 --boot cdrom,hd --location /tmp/OracleLinux.iso --nographics \
--console pty,target_type=serial --console pty,target_type=virtio  --noautoconsole \
--os-variant=rhel7 --extra-args "console=ttyS0,115200n8"

Removendo uma Máquina Virtual

Use o comando oci-kvm destroy para remover e desconfigurar todos os recursos do sistema designados à máquina virtual convidada e disponibilizá-los para reutilização.

  1. Estabeleça conexão com sua instância KVM usando SSH, por exemplo:
    ssh –i PRIVATE_KEY_PATH opc@PUBLIC_IP_ADDRESS

    Para obter mais informações, consulte Acessando uma Instância.

  2. Para poder remover uma máquina virtual, você deve interrompê-la:

    oci-kvm destroy -s VM_NAME
  3. Depois que a máquina virtual for interrompida, você poderá destruí-la permanentemente:

    oci-kvm destroy -D VM_NAME
    Por exemplo, para destruir kvm_vm_001:
    $ oci-kvm destroy -D kvm_vm_001
    Domain kvm_vm_001 has been undefined
    

O comando oci-kvm destroy cancela a definição da máquina virtual em libvirt e limpa todos os recursos do host que foram criados para ela. Os recursos do Oracle Cloud Infrastructure que foram alocados para a máquina virtual se tornam disponíveis para reutilização por novas máquinas virtuais.