3 de dezembro de 2010

Virtual Box

Já desde os tempos da faculdade que "acho engraçada" a história toda da virtualização.

A ideia é relativamente simples: usar um computador para fingir que tem lá dentro um outro computador inteiro, virtual, onde se podem instalar sistemas operativos completos. Eu uso principalmente para brincadeiras do género ter uma máquina virtual Linux no Windows do meu novo portátil para ir matando saudades ao Linux, ou para experimentar configurações. Quando fiz a cadeira de Engenharia de Sistemas de Objectos Distribuídos, cheguei mesmo a criar uma máquina virtual com o sistema que desenvolvemos.

Durante muito tempo usei o VMWare Player para as minhas necessidades de virtualização. Infelizmente o VMWare Player é isso mesmo, um player. Não é possivel (só com ele) criar uma máquina virtual de raiz. É nesse nicho que a VMWare vende alguns produtos. O VMWare Workstation é uma ferramenta completa para a criação e gestão de máquinas virtuais para o Desktop. Claro que é pago. Portanto havia que arranjar alternativas para criar as máquinas virtuais, alternativas essas que passavam por usar outros programas para gerar os ficheiros que servem de disco ao VMWare (o qemu), e um gerador do ficheiro de configuração do VMWare (que felizmente era um ficheiro de texto com um formato bastante compreensível).

Nos tempos em que comecei a olhar para estas coisas ouvi falar de um "VMWare Workstation" open-source. Como entusiasta destas coisas do open-source fui dar uma olhada ao Virtual Box. Na altura a interface tinha um aspecto horrível e, se bem me lembro, não consegui meter máquinas virtuais a correr decentemente. Pelo que declarei como uma perda de tempo e nunca mais voltei a olhar para ele.

Num dos meus primeiros dias na OutSystems o meu colega do lado sugeriu-me o Virtual Box quando perguntei se dava para instalar o VMWare no meu computador. Aparentemente o Virtual Box entretanto foi comprado à innotek pela Sun, que entretanto foi comprada pela Oracle. E em vez de ser descontinuado foi um projecto que até foi pegado e bastante desenvolvido. Hoje em dia é uma alternativa bastante agradável ao VMWare Workstation para utilizadores de Desktop (pelo menos).

Ao contrário da versão que experimentei, tem uma interface bonitinha, polida, e intuitiva. É bastante fácil criar e meter a correr uma máquina virtual com as configurações por omissão. Também é fácil de editar as configurações das máquinas virtuais, especialmente com a (excelentemente) detalhada informação que a ferramenta nos fornece.

Embora as máquinas virtuais costumem funcionar bastante bem sem qualquer comunicação com o software de virtualização, há coisinhas que se o host (o software de virtualização) tiver alguma comunicação com o guest (o sistema operativo na máquina virtual), se tornam mais simples. Coisas que se notam bastante como uma melhor integração do rato entre a máquina virtual e a máquina real, o host conseguir avisar o guest que o "monitor" (que é uma janela, normalmente) aumentou ou diminuiu. Tanto o VMWare como o Virtual Box fornecem este tipo de extensões (sob o nome de VMWare Tool e Guest Additions, respectivamente) que normalmente tornam a experiência de usar uma máquina virtual bastante mais agradável.

Eu agora uso o Virtual Box para ter uma máquinazinha com Debian. Há que dizer que fiquei bastante surpreendido quando vi o debian-installer a instalar um pacote com as Guest Additions sem eu ter de me preocupar mais com o assunto. Não que tenha medo de as instalar, mas enquanto que no Windows normalmente há um installer com a filosofia "next, next, next", no Linux o normal é este tipo de ferramentas conter módulos para o kernel que têm de ser compilados "on-the-fly". São as desvantagens da extrema heterogeneidade de sistemas Linux. Compilar módulos do kernel não é uma operação que esteja disponível "out-of-the-box" na maioria dos sistemas (e normalmente não está numa instalação base da Debian), portanto nem sempre é linear fazê-lo da maneira mais poupada possível. Lembro-me de imensas vezes que andei a instalar pacotes meio às cegas até acertar com os que eram necessários para a compilação com sucesso, e isso claro que deixou mais pacotes do que os que queria no sistema. Quando o guest está ciente que está debaixo de uma máquina virtual e instala por ele mesmo as Tools de guest, é simplesmente maravilhoso.

Bem, afinal o que é que eu quero dizer com esta conversa toda? Experimentem o Virtual Box. Vale a pena. Cresceu muito nos últimos anos e é uma alternativa bastante viável (e barata) ao VMWare (pelo menos para uso em desktop).

Sem comentários:

Enviar um comentário