As soluções de virtualização em sistemas Linux – KVM e o VirtualBox

pacotes de Virtualização são meios para que os usuários executar vários sistemas operacionais sem “bare-metal” de hardware – basicamente, você pode executar mais de um sistema operacional em um único computador sem dual-boot ou abordagens semelhantes. O software de virtualização emula uma máquina real e” engana ” o sistema operacional convidado a pensar que está sendo executado em um computador real. Além das vantagens mais óbvias, as máquinas virtuais ajudam a criar um ambiente de computação mais verde e fácil de administrar. Olhando para as tendências da indústria de TI, a virtualização viu um grande boom nos últimos anos, porque se encaixa nos conceitos de computação utilitária e/ou software como serviço. A virtualização pode ser útil para você se você for um arquiteto corporativo, desenvolvedor, usuário doméstico ou basicamente tudo mais. Começaremos com uma breve introdução sobre virtualização em geral, então trataremos especificamente o VirtualBox e o KVM, pois eles parecem ser as soluções de virtualização completa de código aberto mais populares. Espera-se que você conheça os sistemas Linux, como instalar uma distribuição Linux e como instalar software nela, embora mostraremos como instalar os dois pacotes de virtualização mencionados em algumas das distribuições Linux populares.

existem dois tipos de virtualização : um que pode executar o sistema convidado como está (como está, não modificado) e outro que solicita um kernel modificado do lado do convidado para ser executado. A primeira categoria é chamada de virtualização completa, porque emula um ambiente de hardware completo , a segunda é chamada de paravirtualização, porque não emula hardware e, portanto, precisa de modificações especiais no nível do convidado, um bom exemplo desse tipo de virtualização sendo Xen. Eles fazem parte de uma categoria maior chamada virtualização de hardware, mas também existem outros tipos de virtualização (software, rede ou armazenamento, entre outros), que não detalharemos aqui. As duas peças de software sobre as quais falaremos se encaixam na categoria de virtualização completa. Outras tecnologias populares de virtualização de hardware incluem QEMU, Bochs, VMware, Parallels, HyperV ou OpenVZ.

SUBSCRIBE NEWSLETTER&RSS
Subscribe to RSS and NEWSLETTER and receive latest Linux news, jobs, career advice and tutorials.

quando a virtualização é útil?

distribuições Linux

o mundo Linux está cheio de ofertas interessantes e tentadoras. Existem mais de 600 (!) Distribuições Linux para escolher, o que torna difícil para uma pessoa que só tem um computador para experimentá-los todos, ou apenas alguns mesmo. LiveCDs nem sempre são úteis, então pode ser necessário instalar para obter a essência disso. Cada versão de distribuição Linux traz recursos novos e interessantes, e você pode sentir a emoção e o impulso de instalá-lo e testá-lo. Digite virtualização. Você baixar o ISO, instalar a distro em um ambiente virtual e você está pronto para ir, tudo em um curto espaço de tempo. Você não gosta, você apaga. Especialmente quando você é um pouco novo no mundo Linux e pode ficar confuso com o grande número de distribuições disponíveis, isso pode ser apenas o que você precisa. Além disso, se você é um desenvolvedor e precisa executar o ramo de desenvolvimento de sua distro (pense Fedora Rawhide ou Debian Sid), mas isso é muito instável para o uso diário, instale em uma VM e comece a desenvolver.

Outros sistemas operacionais

Este se estende a outros sistemas operacionais que você pode precisar : talvez você tenha um propgram que é executado somente no Windows e você não quer instalar o Windows apenas para que um programa. Talvez você queira aprender Solaris, mas não tem o hardware. Desde que você tenha a configuração apropriada do computador que suporta virtualização, agora você pode fazê-lo.

o que você precisará

os processadores modernos têm instruções especiais de CPU para emulação de hardware. Você pode viver sem, mas você realmente não quer, já que o sistema operacional host terá que emular a instrução de virtualização que falta e isso diminuirá significativamente o(s) Seu (s) convidado (s). Presumimos que seu sistema operacional host tenha o Linux instalado e sua CPU tenha os recursos de virtualização necessários. A maneira mais simples de verificar se sua CPU tem o que é preciso, faça

 $ egrep '(vmx|svm)' /proc/cpuinfo 

e se isso retornar vmx (CPUs Intel) ou svm (CPUs AMD), você está pronto para ir. Mas isso, é claro, não é a única solicitação do lado do hardware. Verifique a página da web do sistema que deseja instalar como convidado para verificar se você atende aos requisitos de hardware. Recomendamos pelo menos 20 GB grátis em seu diretório inicial e um mínimo de 2 GB de memória no host, para que você possa alocar uma quantidade média de 768 MB para o convidado para um desempenho ideal. Claro, se você quiser executar várias máquinas virtuais( talvez em paralelo), esses requisitos crescem consideravelmente.

KVM ou VirtualBox?

em primeiro lugar, por que ofereceríamos dois pacotes de virtualização? Por que não um para todas as suas necessidades? Bem, acreditamos no conceito de” ferramenta certa para o trabalho”. O KVM oferece alguns recursos que o VirtualBox não oferece e o contrário. Não existe tal coisa no mundo da TI como uma ferramenta universal, por isso é importante usar algo que atenda às suas necessidades. A ideia básica é : se você deseja instalar uma distribuição Linux binária como convidado, use KVM. É mais rápido e seus drivers estão incluídos na árvore oficial do kernel. Se o seu convidado envolve muita compilação e precisa de alguns recursos mais avançados, e/ou não é um sistema Linux, é melhor ir com VirtualBox.

as razões técnicas são bastante simples : o KVM é melhor integrado ao Linux, é menor e mais rápido e, embora você possa usá-lo com outros convidados além do Linux, achamos a experiência bastante problemática : BSDs tendem a ter E/S lenta e Solaris (OpenIndiana, para ser exato) tende a entrar em pânico imediatamente após a inicialização do ISO de instalação. Como usamos versões atuais do BSD (e compilamos/atualizamos o sistema da fonte com frequência) e também precisamos do Solaris, descobrimos que o VirtualBox é uma opção melhor.

outra vantagem para o Oracle VirtualBox é o fato de que ele suporta suspender, ou seja, você pode salvar o estado da máquina no disco rígido do host e fechar o VirtualBox e quando (re)iniciar, o sistema irá pegar de onde saiu. É por isso que nos referimos à compilação de fontes : se você tem uma máquina barulhenta, não quer sair da noite para o dia, mas sua máquina virtual Gentoo apenas compila uma nova versão do gcc, suspende o estado da máquina, desliga o host e continua amanhã.

o que você aprenderá

mostraremos como instalar o KVM e o VirtualBox e como instalar e configurar um convidado Linux em um host Linux. Exemplos com outros Unices são muito semelhantes, então não vemos necessidade de nos repetir.

instalação

embora a KVM anuncie Solaris, BSD, ReactOS, Windows e outros como convidados suportados, nossas experiências foram menos do que frutíferas. Isso não é uma crítica, já que não nos sentamos, com toda a honestidade, e examinamos demais a questão. Mas isso não é por preguiça: depois de conversar com outras pessoas na rede, descobrimos que não somos os únicos com problemas em relação aos convidados Unix(-like) além do Linux, então nós apenas fomos com o VirtualBox para aqueles. Como sempre, sua milhagem pode variar: também gostaríamos de usar o KVM exclusivamente porque é mais “gratuito”, mas por causa dos problemas acima mencionados, que obviamente podem ser apenas algo específico para nossa configuração, tivemos que usar o VirtualBox. No momento, o KVM é desenvolvido pela Red Hat e é facilmente instalável na maioria das distribuições Linux. Como fizemos antes, descreveremos apenas os procedimentos de instalação relativos às principais distribuições Linux.

Fedora

como a Red Hat, patrocinadora do Fedora, agora está desenvolvendo KVM, o Fedora oferece uma infinidade de ferramentas para virtualização. A documentação oficial, embora seja para o Fedora 13, é aplicável a versões posteriores. Você pode simplesmente instalar o KVM com

 # yum install kvm 

para ir para a linha de comando, ou você pode instalar algumas ferramentas gráficas para ajudar você a gerenciar seu virtual instalações :

 # yum install virt-manager libvirt libvirt-python python-virtinst 

Você não vai precisar executar mais comandos, já que o processo de instalação no Fedora irá marcar o módulo kvm para o carregamento automático. Se você não quiser reiniciar, use modprobe para carregar o módulo no local.

Debian

Debian wiki vem para o resgate ainda mais, e se alguém segue as instruções, ter-se-á KVM instalado e pronto para ir em nenhum momento. É tudo sobre

 # apt-get install qemu-kvm libvirt-bin 

para instalar, configurar e ter o módulo do kernel kvm-(amd|intel) carregado na inicialização.

Slackware

Slackbuild para KVM que você pode usar de acordo com este guia. Se você tiver um kernel modificado ou apenas quiser se certificar de que seu kernel tenha KVM habilitado, digite

 $ cat /boot/config |grep -i kvm 

e também verifique /etc/rc.d / rc.módulos para ver se o módulo kvm está configurado para ser carregado na inicialização.

Arch

o wiki Arch Linux é um bom guia para tudo relacionado ao KVM. Como o Arch, como o Slackware, é uma distribuição DYI, talvez seja necessário executar algumas etapas extras para começar a usar o KVM. A instalação é tão simples quanto

 # pacman -S qemu-kvm 

as mesmas etapas devem ser tomadas aqui como em uma máquina Slackware : adicione seu usuário, verifique se sua CPU suporta virtualização e se o KVM está habilitado em seu kernel.

VirtualBox

Fedora

o site VirtualBox oferece um arquivo repo a ser adicionado em / etc / yum.repositorio.D / e, em seguida, execute um

 # yum update

para informar o yum sobre seu novo repo e indexá-lo. Em seguida, execute um

 # yum install VirtualBox-4.0 dkms gcc
 # /etc/init.d/vboxdrv setup 
 # usermod -G vboxusers -a username 

e você deve ser definido.

Debian

não queremos tomar partido aqui, mas parece que a documentação do Debian é melhor e mais completa. Para instalar, basta digitar

 # apt-get install linux-headers-$version virtualbox-ose 

que instalará todos os pacotes necessários, compilar o módulo do kernel para você e configurá-lo para carregar na inicialização.

Slackware

SlackBuilds.org tem uma entrada VirtualBox (a edição de código aberto, que é a única sobre a qual falaremos aqui). Para um HOWTO sobre o uso slackbuilds, vá aqui. Informações adicionais podem ser encontradas no linuxquestions.org, informações que você pode achar úteis, especialmente se você estiver em uma máquina Slackware 13.37 de 64 bits. Lembre-se de ler o README do slackbuild e deve estar tudo bem.

Arch

a documentação do Arch é útil e completa, a par do Debian, então você não deve ter problemas para encontrar as informações de que precisa. Tudo o que você precisa fazer em termos de instalação é

 # pacman -S virtualbox qt 

e você está definido. Você precisará do Qt para a GUI, se precisar apenas do CLI, não o instale.O resto das etapas de configuração são semelhantes às do Fedora, então use a documentação para poder começar.

SUBSCRIBE NEWSLETTER&RSS
Subscribe to RSS and NEWSLETTER and receive latest Linux news, jobs, career advice and tutorials.

uso

como você deve ter notado, somos contra copiar cegamente de uma página de manual e tentar substituir o referido manual. Vamos delinear opções gerais e usuais e sinalizadores de linha de comando (Sim, recomendamos o uso de CLI ao trabalhar com KVM e GUI ao trabalhar com VirtualBox), mas você ler a página do manual é essencial, especialmente ao lidar com um software um tanto complexo como este.

Armazenamento

recomendamos que você crie um diretório separado onde você armazenará as imagens de disco virtual e outro diretório separado que manterá os arquivos ISO usados para instalação. No final, só você sabe melhor como organizar seus arquivos, mas essa configuração, pensamos, facilitará sua vida. Por exemplo, digamos que queremos instalar o Fedora. Notamos ao usar KVM uma largura de banda um pouco menor do que a disponível em nosso ISP, um problema que o VirtualBox não parece ter. Então, nós instalamos a partir de DVD :

 $ cd ~ && mkdir iso && cd iso/ 
 $ wget -c ftp://ftp.heanet.ie/mirrors/fedora/linux/releases/15/Fedora/\x86_64/iso/Fedora-15-x86_64-DVD.iso 

claro, se você preferir curl, kget ou outro gerenciador de download, use-o. O mesmo se aplica ao espelho: use um próximo a você para um download mais rápido. Agora para configurar nosso ambiente de disco(s) virtual (s) :

 $ cd ~ && mkdir kvmhdd && cd kvmhdd 
 $ kvm-img create fedora15.img 15G 

antes de ir mais longe, recomendamos que você execute kvm-img sem argumentos para ver suas principais opções e formatos de disco. O que a segunda linha acima faz: cria um arquivo de disco virtual (formato img) chamado fedora15 e tem 15 gigabytes de tamanho.

instalação

agora estamos prontos para iniciar a instalação do Fedora 15 em nosso disco recém-criado:

 $ kvm -m 768 -boot d -cdrom ~/iso/Fedora-15-x86_64-DVD.iso -hda fedora15.img & 

o que acabamos de fazer : -m representa o tamanho em megabytes de memória alocada, arranque diz kvm o dispositivo de arranque principal (acho que o Windows letras de unidade), -cdrom é óbvio, -hda é o primeiro disco rígido (você pode usar mais de um disco, se você tem o espaço, com -hdb é o segundo disco e assim por diante), e usamos o ” e ” comercial no final da linha de comando para recuperar o controle do terminal. Ctrl + Alt dará / assumir o controle de/para a máquina virtual em termos de captura do mouse.

Usando a máquina virtual

 $ kvm -m 768 -boot c -hda fedora15.img & 

Sugestão: criar um arquivo no kvmhdd (ou o nome que escolheu para o diretório de trabalho), denominado fedora15.sh que irá conter a linha acima, torná-lo executável e, quando você precisar, basta executá-lo :

 $ cd ~/kvmhdd && echo "kvm -m 768 -boot c -hda fedora15.img &" > fedora15.sh && \
chmod +x fedora15.sh && ./fedora15.sh

isso é sobre ele. Se você precisar de mais opções, consulte a página manual do kvm, pois está bem escrita e o ajudará com certeza.

VirtualBox

Criação de uma máquina virtual

VirtualBox GUI leva o assistente de abordagem a fim de ajudá-lo a criar uma nova máquina virtual e podemos ver a interface muito inteligente pedaço de software. Pressione Ctrl + N para criar uma nova VM e digite o nome que deseja dar (use algo sugestivo, como “Fedora15x86_64”. Com base nessa nomenclatura, o VirtualBox determinará automaticamente que tipo de sistema você deseja configurar e se ajustar automaticamente.

em seguida, escolha a quantidade de memória que você deseja Fedora, e o VirtualBox tenta sugerir um valor dependendo do sistema operacional e arquitetura. Recomendamos que você não diminua muito, pois sua VM pode congelar devido a problemas de falta de memória (a propósito, o Anaconda se recusará a iniciar a instalação no modo gráfico com menos de 768 MB). Em seguida, crie o disco rígido e insira seu tamanho (a recomendação relacionada às sugestões também se aplica aqui), alocando-o dinamicamente (não é um grande problema se você não fizer isso, apenas que achamos esse método um pouco mais rápido em termos de E/S) e você está definido. Na janela principal do VirtualBox, você verá sua nova máquina virtual listada e, à direita, suas configurações. Mude – os como achar melhor e tenha cuidado para inicializar a partir do DVD. Além disso, se você tiver vários núcleos e quiser usá-los, a seção Sistema é o lugar para ir.

Execução de uma máquina virtual

Após a instalação, interromper a VM e alterar a ordem de inicialização para que você possa inicializar a partir do disco rígido e, em seguida, comece clicando com o botão direito na entrada da esquerda e, claro, o “Start”. Se tudo estiver bem, agora você inicializará o Fedora 15 em um ambiente VirtualBox. Dissemos anteriormente que o sistema operacional convidado no KVM e no VBOX não precisa de alterações. Enquanto estávamos certos, a experiência do convidado pode ser melhorada no VirtualBox com coisas como visualização em tela cheia ou pastas compartilhadas instalando as adições de convidados do VirtualBox. Este é, basicamente, um módulo de kernel e alguns drivers Xorg para o convidado, que você pode instalar no seu novo Fedora seguindo os seguintes passos :

 # yum update kernel && yum install kernel-devel kernel-headers dkms gcc gcc-c++ 

Reinicie a VM depois de instalar, em seguida, ir para menu de Dispositivos, selecione “Install Guest Additions”, que irá montar o Convidado existente Adições de imagem ISO no convidado (em /media), e, como root, basta fazer

 # cd /media/VBOXADD$version && sh ./VBoxLinuxAdditions.run 

Depois, reinicie novamente e você terá recursos avançados do VirtualBox à sua disposição.

conclusão

quando se trata de escolher soluções de virtualização, como é com editores, ambientes de desktop ou mesmo sistemas operacionais, todos têm uma opinião pessoal baseada na experiência, na leitura e no que seus amigos usam. Esta é a nossa experiência, e nós convidamos você a experimentar e ajustar até encontrar o melhor caminho a seguir. Existem, é claro, outros pacotes de software de virtualização, mas o espaço limitado não nos deixaria escrever sobre todos eles. Essas são as soluções mais adequadas para um usuário doméstico (código aberto, ou seja), mas isso não significa que eles também não sejam usados no nível corporativo. Esperamos que isso o ajude a começar.

Deixe uma resposta

O seu endereço de email não será publicado.