O que é KubeVirt?

Copiar URL

O KubeVirt é um projeto open source que possibilita a execução, implantação e gerenciamento de máquinas virtuais (VMs) utilizando o Kubernetes como plataforma subjacente de orquestração. A execução de máquinas virtuais em containers é conhecida como virtualização nativa de containers. O KubeVirt viabiliza essa virtualização empacotando máquinas virtuais em containers e gerenciando ambas as cargas de trabalho por meio de um console integrado.

Com o KubeVirt, as máquinas virtuais apresentam o mesmo comportamento que teriam em um ambiente de virtualização tradicional. No entanto, elas podem ser executadas na mesma plataforma como microsserviços em containers e aplicações nativas em nuvem. Todas as cargas de trabalho no ambiente, incluindo as VMs, se beneficiam do gerenciamento, ferramentas e infraestrutura do Kubernetes

O KubeVirt, financiado pela Cloud Native Computing Foundation (CNCF), é a base open source do Red Hat® OpenShift® Virtualization – uma funcionalidade do Red Hat OpenShift que oferece suporte à migração e ao gerenciamento de máquinas virtuais tradicionais em uma plataforma de aplicações de nuvem híbrida confiável. 

Conheça a solução de virtualização da Red Hat

O KubeVirt amplia a interface de programação de aplicações (API) do Kubernetes para interagir com máquinas virtuais da mesma forma que outras ferramentas e recursos do Kubernetes. Assim, os containers e as máquinas virtuais podem dividir os mesmos clusters, nós e redes.

A funcionalidade adicional do KubeVirt tem três componentes principais:

  • Definições de recurso personalizado (CRDs): o recurso personalizado é um objeto que amplia a API do Kubernetes e permite a inclusão da sua própria API em um projeto ou cluster. O arquivo de definição de recurso personalizado determina o tipo de objeto e oferece ao servidor de API a habilidade de operar em todo o ciclo de vida. O KubeVirt integra uma CRD à API do Kubernetes para poder operar máquinas virtuais como outros objetos do Kubernetes (como pods).
  • Controladores: o controlador é um conjunto de implantações executadas no cluster que oferece um endpoint de API para gerenciar as novas CRDs do KubeVirt.
  • Agentes: são executados nos nós de trabalho de um cluster para gerenciar as tarefas do nó relacionadas à virtualização.

Também podemos pensar no KubeVirt como um pod executando internamente uma máquina virtual baseada em KVM. No Kubernetes, um pod é um grupo de containers com os mesmos recursos, executados em conjunto. Já uma KVM (máquina virtual baseada em kernel) é uma tecnologia open source que amplia o kernel do Linux® para ele funcione como um hipervisor. Com o KubeVirt, as instâncias de máquina virtuai são executadas da mesma forma que os pods. Dessa forma, o KubeVirt pode gerenciar estados de VM como "desligada", "pausada" e "em execução", além de realizar operações como provisionamento, agendamento e migração de máquinas virtuais. 

Recursos da Red Hat

Criar máquinas virtuais

Usando o subcomando “create vm” na linha de comando virtctl, você cria máquinas virtuais em um ambiente do Kubernetes. Também é possível controlar tipos e preferências de instâncias para gerenciar configurações em várias máquinas virtuais simultaneamente, incluindo a definição de perfis de desempenho e a personalização das características de execução.

Descubra como criar e escalar máquinas virtuais com o Red Hat OpenShift Virtualization

Gerenciar máquinas virtuais

A interface de linha de comando (CLI) virtctl funciona com o kubectl, a ferramenta de linha de comando padrão do Kubernetes. Assim, é possível executar ações específicas de virtualização para gerenciar ações de máquinas virtuais em um cluster do Kubernetes. Com o virtctl, os administradores de máquinas virtuais podem:

  • Desligar, iniciar, reiniciar e pausar máquinas virtuais.
  • Gerenciar imagens de disco.
  • Acessar os consoles serial, gráfico e ssh da máquina virtual.
  • Fazer migrações entre os nós.

A orquestração e o scheduler do Kubernetes oferecem várias camadas de gerenciamento para otimizar a execução das VMs. Se você também executa cargas de trabalho de containers, o KubeVirt ajuda a gerenciar e monitorar containers e VMs por meio de um control plane unificado.

Gerencie máquinas virtuais com o Red Hat OpenShift Virtualization

Migrar máquinas virtuais

O KubeVirt é compatível com vários métodos de migração de máquinas virtuais, como a migração ao vivo. A migração ao vivo é o processo de mover uma máquina virtual e remapear seu armazenamento de um host para outro sem interromper o acesso à VM. Essa é uma boa opção para VMs que exigem uptime constante, pois evita que as operações sejam interrompidas ao fazer a migração entre nós e plataformas.

Descubra mais sobre a migração ao vivo

Faça testes e tenha escalabilidade

Ao executar máquinas virtuais no Kubernetes, você pode testar outras funcionalidades. Por exemplo, o Containerized Data Importer (CDI) é uma tecnologia compatível que permite o gerenciamento de armazenamento em disco às VMs do KubeVirt.

O Kubernetes também foi desenvolvido para escalar. À medida que você testa novas funções, adiciona funcionalidades às cargas de trabalho e moderniza as aplicações legadas, é possível aumentar e reduzir a escala automaticamente, com base no uso da unidade central de processamento (CPU). 

Conheça o KubeVirt.io

Integração nativa em nuvem

Com o KubeVirt, você executa microsserviços e apps nativas em nuvem, além das cargas de trabalho difíceis de colocar em containers. Os componentes da aplicação virtualizada se tornam parte de uma plataforma de desenvolvimento unificada. Nela, os desenvolvedores podem criar, gerenciar, implantar e escalar aplicações, não importando se os componentes estão em containers, virtualizados ou ambos.

Com o KubeVirt, você também pode incorporar várias funcionalidades do Kubernetes a máquinas virtuais, como o controle de acesso baseado em função (RBAC), geração de logs e monitoramento integrados, service mesh e muito mais. 

Modernização

A virtualização possibilita iniciar e interromper rapidamente diferentes ambientes de sistema operacional em um único hardware. Essa abordagem oferece muitos benefícios para os ecossistemas de TI, como flexibilidade, velocidade e estabilidade. No entanto, à medida que as plataformas de virtualização evoluem e ficam mais caras, algumas empresas acabam buscando novas soluções. O KubeVirt é uma opção atraente porque, além de funcionar como hipervisor, ele oferece uma plataforma e um caminho para a modernização

Com o KubeVirt, você cria e executa containers e VMs lado a lado, além de ter uma plataforma unificada para desenvolver novas aplicações e modernizar cargas de trabalho legadas. Ao longo da modernização, você desbloqueará os recursos e a tecnologia necessários para explorar os avanços no desenvolvimento nativo em nuvem, inteligência artificial e machine learning (aprendizado de máquina).

Funcionalidades avançadas e equivalência

O KubeVirt é um projeto de incubação da CNCF. Por isso, ele não só inclui funcionalidades avançadas e nativas do Kubernetes no seu lançamento, como também é sempre aprimorado e expandido pelos colaboradores da comunidade open source.

O KubeVirt também oferece funcionalidades equivalentes às de outras plataformas empresariais de virtualização, como VMware vSphere e HyperV. Assim, você executa as mesmas tarefas que costuma realizar em um ambiente de virtualização tradicional.

Desempenho

O KubeVirt é capaz de atender a requisitos dinâmicos de CPU e alocação de memória, proporcionando menor latência em comparação com soluções de virtualização tradicionais. Ele também otimiza a camada de abstração entre o hardware bare metal e os ambientes de runtime para um uso de recursos mais eficiente e desempenho aprimorado.

O grupo de interesse especial em escalabilidade da comunidade KubeVirt (SIG-scale) identificou que era necessário avaliar o desempenho e a escalabilidade da solução em diferentes versões. Por isso, ele desenvolveu técnicas para monitorar como o KubeVirt é escalado em ambientes de data center. Agora, o KubeVirt compartilha esses dados de desempenho e escalabilidade após o lançamento de cada versão.

Saiba como o KubeVirt melhora o desempenho com benchmarking orientado por CI (integração contínua).

Segurança integrada

O KubeVirt utiliza a segurança nativa do Kubernetes para garantr que as políticas sejam aplicadas com consistência em todos os ambientes, inclusive nas máquinas virtuais. Assim, os usuários podem especificar uma configuração (por exemplo, uma política de rede) a ser aplicada a todos os pods em uma implantação, em vez de definir controles no nível do sistema em cada host de um cluster. Com essa funcionalidade, fica mais fácil gerenciar a segurança das máquinas virtuais com consistência e em escala. 

Ao vincular políticas a sistemas de CI/CD e ao framework do controlador de admissão do Kubernetes, as organizações conseguem aplicar políticas de controle no estágio inicial do ciclo de vida de desenvolvimento do software, prevenindo exposições no runtime. 

 O Red Hat OpenShift Virtualization é uma plataforma de aplicações moderna baseada no KubeVirt e no KVM, que executa máquinas virtuais e containers lado a lado. Ele inclui o kit de ferramentas de migração para máquinas virtuais com tudo que você precisa para você fazer a migração de plataformas de virtualização tradicionais em poucas etapas. Acelere a entrega com o Red Hat Ansible® Automation Platform, seja na migração em escala, nas operações do Dia 2 ou nas correções. Monitore a segurança e o desempenho das VMs usando um único console com o Red Hat Advanced Cluster Management for Kubernetes. Com opções de suporte adicionais e integrações de parceiros de armazenamento, backup, recuperação de desastres e rede, você pode confiar na Red Hat para executar sua infraestrutura virtual com consistência em toda a nuvem híbrida, além de contar com a nossa ajuda quando chegar a hora de se modernizar.

Experimente na prática o Red Hat OpenShift Virtualization.
Hub

Blog da Red Hat

Tudo relacionado à Red Hat: soluções, treinamentos e certificações Red Hat, casos de sucesso de clientes, novidades dos nossos parceiros e notícias sobre projetos das comunidades open source.

Teste as soluções da Red Hat

Você sabia que a Red Hat oferece versões de teste gratuitas de suas soluções? Aproveite e obtenha experiência prática, prepare-se para uma certificação da Red Hat ou avalie na prática se a solução é adequada para ao caso de uso.

Leia mais

Como escolher uma plataforma de virtualização

Aprenda conceitos que podem ajudar você a escolher uma plataforma de virtualização para gerenciar máquinas virtuais (VMs).

O que é migração ao vivo?

A migração ao vivo move uma máquina virtual (VM) de um host para outro sem interromper o acesso à ela.

Por que escolher a Red Hat para estratégias de virtualização?

O Red Hat OpenShift Virtualization oferece uma plataforma moderna para lidar com desafios de virtualização, migrar VMs e implantar cargas de trabalho de VMs.

Virtualização: leitura recomendada

Produto em destaque

  • Red Hat OpenShift Virtualization

    Um recurso do Red Hat® OpenShift® que integra perfeitamente máquinas virtuais em uma moderna plataforma de infraestrutura de nuvem híbrida.

Artigos relacionados