Virtualização

O que é KVM?

A máquina virtual baseada em kernel (KVM) é uma tecnologia de virtualização open source baseada no Linux®. Especificamente, com a KVM, você pode transformar o Linux em um hipervisor, permitindo que uma máquina host execute vários ambientes virtuais isolados, chamados máquinas guest ou máquinas virtuais.

A KVM é parte do Linux. Se você tem o Linux 2.6.20 ou uma versão mais recente, a KVM está incluída. A KVM foi anunciada pela primeira vez em 2006 e, um ano depois, inserida à versão de kernel do Linux da linha principal. Como a KVM é parte do código do Linux atual, ela aproveita imediatamente todos os recursos, correções e avanços novos do Linux sem engenharia adicional.


Como a KVM funciona?

A KVM converte o Linux em um hipervisor tipo-1 (bare-metal). Para executar VMs, todos os hipervisores precisam de alguns componentes em nível de sistema operacional, como gerenciador de memória, agendador de processos, stack de entrada/saída (E/S), drivers de dispositivo, gerenciador de segurança, um stack de rede e muito mais. A KVM tem todos esses componentes por fazer parte do kernel do Linux. Toda máquina virtual é implementada como um processo regular do Linux que é programado pelo agendador do Linux padrão. Ele conta com hardware virtual dedicado, como placa de rede, adaptador de placa gráfica, CPU(s), memória e discos.


Implementação da KVM

Em resumo, para implementar a KVM, é preciso executar uma versão do Linux que tenha sido lançada após 2007, e ela precisa ser instalada no hardware X86 que ofereça suporte a recursos de virtualização. Se ambos os critérios forem atendidos, basta carregar dois módulos existentes (um de kernel host e um específico do processador), um emulador e qualquer driver que o ajude a executar sistemas adicionais.


Como migrar para uma infraestrutura virtual baseada em KVM

A criação de uma infraestrutura virtual em uma plataforma fornecida por contrato limita o acesso ao código-fonte. Isso significa que seus desenvolvimentos de TI provavelmente serão soluções alternativas, em vez de inovações. E o próximo contrato pode impedir que você invista em clouds, containers e automação. Ao migrar para uma plataforma de virtualização baseada em KVM, é possível inspecionar, modificar e aprimorar o código-fonte do hipervisor. E não é necessário um contrato de licença corporativo, já que não há código-fonte para proteger. Ele é seu.


Recursos da KVM

A KVM é parte do Linux. O Linux é parte da KVM. Sendo assim, a KVM tem tudo que está presente no Linux. Mas há recursos específicos que fazem da KVM o hipervisor preferido das empresas.

A KVM usa uma combinação de Security-Enhanced Linux (SELinux) e Secure Virtualization (sVirt) para garantir maior segurança e o isolamento de máquinas virtuais. O SELinux estabelece limites de segurança nas máquinas virtuais. O sVirt estende os recursos do SELinux, permitindo que a segurança do controle de acesso obrigatório (MAC) seja aplicada a máquinas virtuais guest e impedindo erros de identificação manual.

A KVM pode usar qualquer armazenamento compatível com Linux, incluindo alguns discos locais e armazenamento de dados em rede (NAS). A E/S de multicaminho pode ser usada para melhorar o armazenamento e oferecer redundância. A KVM também oferece suporte a sistemas de arquivos compartilhados. Portanto, as imagens de máquina virtual podem ser compartilhadas por vários hosts. As imagens de disco oferecem suporte a provisionamento leve, alocando o armazenamento sob demanda, em vez de fazê-lo antecipadamente.

A KVM usa uma ampla variedade de plataformas de hardware certificadas com suporte do Linux. Como os fornecedores de hardware contribuem regularmente para o desenvolvimento do kernel, os recursos de hardware mais recentes costumam ser adotados com rapidez no kernel do Linux.

A KVM herda os recursos de gerenciamento de memória do Linux, incluindo acesso de memória não uniforme e fusão alinhada de kernel. A memória de uma máquina virtual pode ser trocada, contar com o suporte de grandes volumes para melhorar o desempenho e compartilhada ou suportada por um arquivo de disco.

A KVM oferece suporte a migração ao vivo, que é a habilidade de migrar uma máquina virtual em execução entre hosts físicos, sem interrupção de serviço. A máquina virtual permanece ligada, as conexões de rede continuam ativas e as aplicações continuam em execução enquanto a máquina virtual é realocada. A KVM também salva o estado atual de uma máquina virtual, de modo que ela possa ser armazenada e reiniciada posteriormente.

A KVM herda o desempenho do Linux, escalando para atender à carga da demanda caso o número de máquinas guest e solicitações aumente. A KVM permite virtualizar as cargas de trabalho de aplicações mais exigentes e é a base para muitas configurações de virtualização corporativas, como datacenters e clouds privadas (por meio do OpenStack®).

No modelo da KVM, uma máquina virtual é um processo do Linux, agendado e gerenciado pelo kernel. O agendador do Linux permite o controle de alta granularidade dos recursos alocados para um processo do Linux e garante a qualidade do serviço para um processo em particular. Na KVM, isso inclui um Completely Fair Scheduler, grupos de controle, namespaces de rede e extensões em tempo real.

O kernel do Linux apresenta extensões em tempo real. Elas permitem que aplicações baseadas em máquinas virtuais sejam executadas a uma latência mais baixa, com priorização melhor (em comparação com bare-metal). O kernel também divide processos que exigem processos de computação demorados em componentes menores, que depois são agendados e tratados de acordo.


Gerenciamento da KVM

É possível gerenciar manualmente uma série de máquinas virtuais vinculadas a uma única estação de trabalho sem uma ferramenta de gerenciamento. Grandes empresas usam o software de gerenciamento de virtualização que interage com os ambientes virtuais e o hardware físico subjacente para simplificar a administração de recursos, aprimorar análises de dados e otimizar as operações. A Red Hat criou o Red Hat Virtualization justamente com esse propósito.


KVM e Red Hat

Acreditamos tanto na KVM, que ela é o único hipervisor de todas as nossas soluções de virtualização. Além disso, sempre aperfeiçoamos o código do kernel com contribuições da comunidade da KVM. Mas como a KVM faz parte do Linux, ela já está incluída no Red Hat Enterprise Linux. Então, por que você precisaria do Red Hat Virtualization?

A Red Hat tem duas versões de KVM. A KVM que é fornecida com o Red Hat Enterprise Linux tem todas as funcionalidades de hipervisor com recursos básicos de gerenciamento, permitindo que os clientes executem até quatro máquinas virtuais isoladas em um único host. O Red Hat Virtualization contém uma versão avançada de KVM, que possibilita o gerenciamento corporativo de máquinas guest ilimitadas. Ele é ideal para uso na virtualização de datacenter, estações de trabalho técnicas, clouds privadas e no desenvolvimento ou na produção.

Do you have a legacy app that requires an older operating system? Perhaps you’d like pilot a new app in a low-risk environment? You can configure Red Hat Enterprise Linux as a basic hypervisor for running up to 4 isolated VM on a single host.

This is all you need. Really. Install it on anything—from bare-metal hardware to open source or proprietary systems—and start deploying virtual machines by the dozens or hundreds with an advanced hypervisor that can handle it and a management platform that makes it easy.

Você pode fazer muito mais com a virtualização

A marca nominativa e o logotipo OpenStack, em conjunto ou separados, são marcas comerciais ou registradas da OpenStack Foundation nos Estados Unidos e em outros países, usadas com a permissão da OpenStack Foundation. A Red Hat, Inc. não é afiliada, endossada ou patrocinada pela OpenStack Foundation ou pela comunidade OpenStack.