Usando o Virtual Box como Servidor de Máquinas Virtuais
João Medeiros ([email protected])
15 de agosto de 2009
1
Introdução
Esse artigo é baseado na seção 7.4 do Help do VirtualBox, em alguns trechos é praticamente uma
tradução do que está contido lá.
A interface gráfica do virtual oferece uma administração bastante amigável das máquinas virtuais.
Contudo, em algumas situações é interessante que possamos acessar as máquinas virtuais remotamente.
Por exemplo, se estamos planejando rodar um servidor com o propósito de hospedar máquinas virtuais
e permitir que os usuários acessem-as remotamente. Para isso podemos utilizar o suporte VRDP
oferecido pelo VirtualBox, mas nesse caso o servidor deveria ter um ”X” instalado, uma vez que o
VirtualBox depende das bibliotecas Qt e SDL. O VirtualBox vem, ainda, com outra interface que
não produz saı́da visual no servidor, mas apenas envia dados com o protocolo VRDP, chamamos essa
interface de VBoxHeadless.
Neste artigo, vamos descrever como utilizar um servidor de máquinas virtuais com o VBoxHeadless.
2
VBoxHeadless, o servidor VRDP apenas
Para iniciar uma máquina virtual com o VBoxHeadless, temos duas opções
• Você pode usar $ VBoxManage startvm <nome> -type vrdp. A opções extra -type informa ao
VirtualBox para usar o VBoxHeadless como ”front-end” da máquina virtual.
• A maneira recomendada, contudo, é usar diretamente o VBoxHeadless $ VBoxHeadless -startvm <uuid|nome>
Observe que usando VBoxHeadless para iniciar uma máquina virtual, o acesso remoto via VRDP
estará habilitado, independente das configurações da máquina virtual. Se você não quiser habilitar o
acesso VRDP (por exemplo, você que acesso apenas via ssh), pode desativá-lo com o comando
$ VBoxHeadless -startvm <uuid|nome> -vrdp=off
Para utilizar a opção definida nas configurações da máquina virtual, utilize:
$ VBoxHeadless -startvm <uuid|nome> -vrdp=config
3
Criação de uma máquina virtual no servidor
As instruções a seguir dão uma idéia geral de com criar máquinas virtuais em um servidor. Iremos criar
uma máquina virtual, estabelecer uma conexão via protocolo VRDP e instalar um sistema operacional
na máquina virtual (assumimos que iremos instalar o Ubuntu Server)
Iremos necessitar do seguinte:
1 Uma máquina com o Virtual Box instalado; no nosso caso a máquina real de cada estudante.
2 Uma imagem iso no servidor contendo a instalação do sistema operacional.
3 Um cliente RDP, podemos usar o rdesktop para efetuar a conexão.
A seguir seguem os passos necessários para a criação e execução da máquina virtual.
1
1 Na máquina real, crie uma nova máquina virtual:
$ VBoxManage createvm -name "Ubuntu Server" -register
A saı́da do comando dever algo como
joao@jupiter:~$ VBoxManage createvm -name "Ubuntu Server" -register
VirtualBox Command Line Management Interface Version 2.1.4
(C) 2005-2009 Sun Microsystems, Inc.
All rights reserved.
Virtual machine ’Ubuntu Server’ is created and registered.
UUID: efbd9439-4815-4321-ae96-606bff881255
Settings file: ’/disco2/MaquinasVirtuais/virtualbox/maquinas/Ubuntu Server/Ubuntu Server
Observe que foi criada uma UUID para a máquina, no caso ”efbd9439-4815-4321-ae96-606bff881255”.
2 Assegure-se que as configurações da máquina estão definidas apropiadamente. Por exemplo, para
configurar uma máquina com 256MB de memória, boot pelo DVD e tipo da placa de rede 1 como
”Interface do Hospedeiro” digite o comando abaixo.
joao@jupiter:~$ VBoxManage modifyvm "Ubuntu Server" -memory "256BM" \
-acpi on -boot1 dvd -nic1 hostif
3 Crie um disco rı́gido para a máquina virtual (nesse caso um disco com 8GB) e registre-o com o
VirtualBox.
joao@jupiter:~$ VBoxManage createhd -filename "UbuntuServer.vdi" -size 8000 -register
A saı́da deve ser algo como
VirtualBox Command Line Management Interface Version 2.1.4
(C) 2005-2009 Sun Microsystems, Inc.
All rights reserved.
Disk image created. UUID: 6e99e072-9354-428e-b01e-6268817f4258
4 Configure o novo disco como o primeiro disco da máquina virtual criada.
joao@jupiter:~$ VBoxManage modifyvm "Ubuntu Server" -hda "UbuntuServer.vdi"
5 Registre a imagem iso do disco de instalação
joao@jupiter:~$ VBoxManage openmedium \
dvd /home/joao/downloads/ubuntu-8.04.1-server-i386.iso
6 Conecte a imagem iso à máquina virtual
joao@jupiter:~$ VBoxManage modifyvm "Ubuntu Server" \
-dvd /home/joao/downloads/ubuntu-8.04.1-server-i386.iso
7 Inicie a máquina virtual com o comando
joao@jupiter:~$ VBoxHeadless -startvm "Ubuntu Server"
A saı́da deve ser algo como
2
VirtualBox Headless Interface 2.1.4
(C) 2008-2009 Sun Microsystems, Inc.
All rights reserved.
Listening on port 3389
8 Na máquina cliente, inicie o visualizador RDP. Considerando uma máquina Linux, tente o
seguinte comando
joao@jupiter:~$ rdesktop -a 16 -N localhost
A opção -a 16 indica a resolução de cores em 16bits, a opção -N informa que a tecla NumLock
deve estar sincronizada.
Você deve ver agora uma tela com o sistema iniciado
4
Exercı́cios
1 Crie uma uma máquina virtual para a instalação do Ubuntu Server, adicionando as seguintes
caracterı́sticas:
256 MB de RAM
Disco rı́gido de 8GB
Duas placas de redes: 1 como interface do hospedeiro e outra configurada para rede interna
2 Associe a imagem iso do Ubuntu Server com o CDRom da máquina criada.
3 Crie um script para executar a máquina virtual acima com o VBoxHeadless, inclua parâmetros
que permitar iniciar e parar a máquina (start e stop)
4 Execute a máquina através do script criado no item anterior e acesse-a através do cliente rdesktop
para efetuar a instalação do Ubuntu Server.
3
Download

Usando o Virtual Box como Servidor de Máquinas Virtuais