De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Domingos Paraiso
Data de Publicação: 13 de Novembro de 2007
Recentemente fui questionado sobre como instalar vários servidores virtuais que possam ser iniciados automaticamente no boot do servidor da empresa que fica instalado em um rack dentro do CPD.
A alternativa que me ofereceram logo de cara foi o VMWare, mas decidi pesquisar mais para encontrar uma alternativa mais em conta, de preferencia com custo zero no quesito software. Desta forma eu localizei o VirtualBox que é disponibilizado sob os termos da GPL.
O meu cenário é o seguinte, servidor rodando Linux CentOS 4.5 com kernel 2.6.9-55.0.9, instalei o pacote baixado do site do fabricante no endereço http://www.virtualbox.org/download/1.5.2/VirtualBox-1.5.2_25433_rhel4-1.i586.rpm (como o CentOS é uma distribuição baseada nos fontes do Red Hat Enterprise Linux não tive problemas com o pacote RPM, no site existem pacotes para as distribuições mais importantes).
O pacote é instalado normalmente pelo usuário root com o comando:
# rpm -Uvh VirtualBox-1.5.2_25433_rhel4-1.i586.rpm
A documentação da ferramenta explica como fazer todo o processo usando linha de comando mas a forma mais simples é usando a ferramenta gráfica para fazer a parte inicial. No servidor (já no ambiente gráfico e com o usuário que irá rodar a máquina virtual) execute o comando:
# virtualbox
Clique em "New" e siga as instruções do Wizard para criar a máquina virtual, depois faça a instalação do sistema operacional do servidor virtual (sistema host), que no meu caso foram 3 distribuições diferentes de Linux e 1 Windows XP.
Agora estamos prontos para iniciar as máquinas virtuais em modo texto, tenha em mãos os nomes das máquinas virtuais criadas e crie um script para isso conforme o exemplo abaixo:
#!/bin/bash VBoxVRDP -vrdpport 3001 -startvm "Linux CentOS 3" & VBoxVRDP -vrdpport 3002 -startvm "Linux SuSE 10.3" & VBoxVRDP -vrdpport 3003 -startvm "Linux Debian" & VBoxVRDP -vrdpport 3004 -startvm "Windows XP" &
Este script pode ser incluído no rc.local para que seja executado automaticamente ou aperfeiçoado para que fique no diretório /etc/init.d e possa ser iniciado pelo próprio "init" como se fosse um serviço.
No caso deste exemplo são inciadas 4 máquinas virtuais (o comando roda em modo texto, não é preciso estar no ambiente gráfico do Linux) e cada pode ser acessada por uma porta diferente, para acessá-los deve ser usado um cliente para o protocolo RDP, no meu caso eu usei o "rdesktop" do próprio Linux, passando como parâmetros o nome do servidor real e a porta relacionada à máquina virtual que quero acessar, exemplo:
$ rdesktop hostserver:3002
Agora vou trabalhar em um script para iniciar e parar as máquinas virtuais como serviços do sistema operacional host.
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários