Criei este artigo para ajudar as pessoas, que assim como eu, por alguma razão estavam necessitando fazer a criação de maquinas virtuais em servidores sem modo gráfico instalado e tiveram muitas dores de cabeça para a criação de máquinas virtuais usando o
VBoxManage.
O VBoxManage possui vários tutoriais na internet e no Viva o
Linux, como é o caso deste tutorial que utilizei para criar a primeira VM no servidor:
Porém mesmo assim, não é algo tão intuitivo nem fácil de se criar, principalmente quando se tem um prazo curto para criá-la, como foi o meu caso.
Depois de criar a máquina e configurá-la de forma correta, enquanto instalava o sistema operacional, fui procurar uma forma mais simples de fazer a configuração de novas VMs e futuras manutenções nas já criadas.
Depois de muitas pesquisas no
Google, achei uma ferramenta que era exatamente o que eu necessitava, um projeto open source (como não poderia deixar de ser :)) que funciona da mesma forma da interface gráfica do VirtualBox (feita em QT), porém totalmente web.
Esta ferramenta é a
boxweb (
code.google.com/p/vboxweb, que tem o apoio da própria Oracle.
Instalação e configuração do VirtualBox e do vboxweb
Depois de uma introdução básica, podemos ir para a parte que boa parte de vocês espera, a instalação.
No meu caso este tutorial foi testado em um
Debian Squeeze, com todas as atualizações feitas e em 2 Ubuntus, o 10.10 e o 11.04, em todos eles a configuração a seguir funcionou perfeitamente, porem isso não quer dizer que em sua máquina funcionará.
Primeiramente, faça a instalação do VirtualBox, eu como sempre recomendo a instalação via os repositórios da própria Oracle, porém se você preferir, pode fazer o download do pacote para a sua distribuição no link:
Ah, uma coisa que ia esquecendo de postar, não esqueça de colocar o seu usuário no grupo do VirtualBox, pois caso isso não seja feito, você não terá como executar máquina virtual alguma. Para fazer isso, rode o seguinte comando no terminal, substituindo USUARIO pelo seu usuário do sistema.
# adduser USUARIO vboxusers
Depois de fazer a instalação do VirtualBox, verifique se a seguinte biblioteca do Python está instalada em seu sistema:
python-simplejson
Em distros baseadas em Debian, ou nela própria, digite no terminal:
# apt-get install python-simplejson
Em distros baseadas em Red Hat (CentOS, Fedora etc) o comando é o seguinte:
# yum install python-simplejson
Após a instalação da biblioteca acima (para quem não a tinha disponível no sistema), podemos passar para a parte que realmente importa no nosso artigo, a instalação do vboxweb.
Para fazer a instalação desta ferramenta, necessitaremos ter instalado em nossa máquina o subversion, que é o sistema de controle de versões utilizado para armazenar o vboxweb no Google Code, para instalá-lo:
Em distros baseadas em Debian:
# apt-get install subversion
Em distros baseadas em Red Hat:
# yum install subversion
Agora faça o download dos arquivos necessários usando o seguinte comando:
svn checkout http://vboxweb.googlecode.com/svn/trunk/ vboxweb-read-only
Ele irá criar uma pasta com o nome "vboxweb-read-only", feito isso, recomendo mandá-lo para outro diretório, como por exemplo
/opt (diretório geralmente usado para instalação de programas que não são instalados pelo próprio sistema). Para fazer isso, é necessário se ter poderes de root, então:
sudo mv vboxweb-read-only /opt/vboxweb
Depois de termos movido o vboxweb para outro diretório, vamos adicionar os usuários que terão acesso a interface web, para isso vamos rodar o script em Python que vem nele, passando como parâmetros o usuário e a senha dele:
# python /opt/vboxweb/VBoxWebSrv.py adduser "USUARIO" "SENHA"
Agora que o vboxweb está instalado e seus usuários configurados, vamos criar um script para podermos chamá-lo mais facilmente a partir do terminal:
# nano /usr/bin/vboxweb
E nele coloque o seguinte conteúdo:
#!/bin/bash
python /opt/vboxweb/VBoxWebSrv.py
Salve o arquivo e dê permissão de execução:
# chmod +x /usr/bin/vboxweb
Após dar permissão de execução, vamos modificar o IP ao qual o serviço irá ser chamado. Para isso edite o arquivo
VBoxWebConfig.py, colocando seu IP na linha
server.socket_host, como no exemplo:
'server.socket_host' : "192.168.0.2",
Agora pronto, quando quiser gerenciar as suas máquinas virtuais, basta chamar o script com o usuário ao qual a VM foi criada e acessar pelo navegador:
http://192.168.0.2:8080
ou no seu caso: http://ip-do-servidor:8080
Espero que este artigo ajude a tantas pessoas, quanto a quantidade de pessoas que já me ajudaram por aqui.