VMware Server, parte 3

VMware Server, parte 3
Clique aqui para ler a segunda parte

Já que a máquina virtual é na verdade apenas uma pasta com arquivos, você pode perfeitamente tirar cópias e transportá-las para outras máquinas. Se você precisa de 10 máquinas virtuais com servidores Debian, por exemplo, você não precisa fazer a instalação 10 vezes; pode instalar uma vez, tirar 10 cópias e depois apenas modificar as configurações de rede e acertar as peculiaridades de cada servidor.

Para tirar cópias locais de uma máquina virtual, basta copiar a pasta de instalação. Você poderia, por exemplo, usar o comando:

$ cp -a Debian-Etch/ Debian-Etch2

… gerando uma pasta de nome diferente para cada cópia.

Para abrir as VMs copiadas no vmware-server-console, clique em “File > Open” e indique o arquivo .vmx dentro de cada pasta copiada:

17e2e270

Ao inicializar as máquinas virtuais copiadas pela primeira vez, o VMware exibe um aviso sobre o número de identificação. Cada VM possui um número de identificação e, por motivos óbvios, não é recomendável utilizar várias VMs com a mesma identificação. Para evitar isso, use a opção “Always Create”, que faz com que o VMware passe a atribuir novos números de identificação conforme as cópias forem sendo inicializadas:

m136cc040

Naturalmente, é possível também copiar as máquinas virtuais para outras máquinas. Neste caso, a melhor opção é compactar a pasta. Como os arquivos da VM são salvos no disco virtual sem compactação, você pode reduzir o tamanho da pasta em duas vezes ou mais ao compactá-la.

Compactar a pasta antes de transferí-la também evita problemas relacionados à mudanças nas permissões dos arquivos. Para comprimir a pasta no Linux, use o comando “tar -zcvf”, seguido pelo arquivo .tar.gz que será gerado e a pasta que será compactada, como em:

$ tar -zcvf Debian-Etch.tar.gz Debian-Etch/

Depois de transferir o arquivo para a outra máquina, descompacte-o usando o “tar -zxvf”, como em:

$ tar -zxvf Debian-Etch.tar.gz

Ao invés de fazer toda a instalação do sistema na VM remotamente, tendo que lidar com a lentidão de atualização da tela, você pode criar a VM e fazer a instalação e configuração na sua máquina e transferir a VM para o servidor quando estiver tudo pronto. Fazendo uma instalação enxuta do Debian ou uma instalação do Ubuntu em modo servidor e compactando a pasta antes de transferir, o upload ficará com pouco mais de 200 MB.

Como disse a pouco, você pode utilizar o SSH, NX, VNC e outras opções de acesso remoto para administrar as máquinas virtuais remotamente, deixando o vmware-server-console apenas para emergências. A vantagem dele é permitir que você acompanhe todo o processo de boot do sistema, identificando e corrigindo problemas em casos onde o sistema passa a travar no boot ou não sobe a rede, por exemplo.

Configuração da rede

Ao instalar o VMware Server em um servidor da sua rede interna, a configuração dos endereços de rede para as máquinas virtuais precisa apenas seguir o padrão normal da sua rede, como se você estivesse adicionando novos micros ou servidores. A principal dúvida reside em como configurar os endereços das máquinas virtuais ao utilizar um servidor dedicado, hospedado externamente.

Na grande maioria dos casos, ao locar um servidor dedicado você recebe uma faixa de 8 endereços, onde 5 deles são utilizáveis, já que o primeiro e o último endereços ficam reservados aos pacotes de broadcast e ao endereço da rede e um deles fica sendo o endereço do gateway. Na maioria dos casos, as empresas de hospedagem utilizam faixas de endereços de classe A ou B, divididas em uma grande quantidade de redes menores, utilizando máscaras de tamanho variável, baseadas no sistema CIDR. A máscara mais comum é a “255.255.255.248” (/29), que permite criar as redes de 8 endereços que comentei.

Seu servidor pode, por exemplo, utilizar o endereço 72.232.194.138, sendo que:

72.232.194.136: Endereço da rede
72.232.194.137: Gateway
72.232.194.138 a 72.232.194.141: Endereços utilizáveis
72.232.194.142: Endereço de broadcast

Nesta situação, você ainda teria vagos os endereços de 72.232.194.138 a 72.232.194.141. Os endereços ociosos podem ser usados para colocar no ar servidores virtuais, que podem desempenhar funções secundárias, serem usados como honeypots, ou até mesmo serem sublocados. Basta usar a imaginação. 🙂

Você poderia colocar no ar 4 máquinas virtuais diferentes, cada uma utilizando um dos endereços disponíveis. Você notará que cada uma realmente responderá e se comportará como um servidor completo. Como disse anteriormente, é como se fosse criado um “hub” virtual”, onde todas as máquinas virtuais são ligadas.

Cada VM seria então configurada para utilizar um dos endereços vagos dentro da faixa. Se você não tem um segundo servidor dedicado para assumir a função de servidor DNS secundário, pode delegar essa função a uma das VMs, evitando assim precisar sacrificar um dos endereços IP para o alias da placa de rede no servidor principal. Aqui temos um exemplo de configuração de rede para uma VM dentro de uma faixa de 8 endereços:

m7ce244d7

Aproveite para adicionar as máquinas virtuais à configuração do DNS. Aqui temos um exemplo de configuração onde três VMs foram incluídas como subdomínios de um domínio já configurado:

@ IN SOA servidor.gdhn.com.br. hostmaster.gdhn.com.br. (
2008061645 3H 15M 1W 1D )
NS servidor.gdhn.com.br.
NS vm1.gdhn.com.br.
IN MX 10 servidor.gdhn.com.br.
gdhn.com.br. A 64.234.23.12
www A 64.234.23.12
vm1 A 64.234.23.13
vm2 A 64.234.23.14
vm3 A 64.234.23.15
vm4 A 64.234.23.16

Naturalmente, você pode também registrar novos domínios para as máquinas virtuais, adicionando as zonas na configuração do DNS do servidor principal (nada impediria que as próprias máquinas virtuais abrigassem servidores DNS próprios, mas isso só complicaria a configuração).

Em casos onde você precisa criar mais do que 4 máquinas virtuais (e a configuração de hardware do servidor permita), você pode pagar por endereços IP adicionais, opção que está disponível por um pequeno extra em grande parte dos planos de hospedagem. Veja, por exemplo, esta tela de seleção do The Planet:

m4e18408d

Por apenas 8 dólares (mensais) adicionais é possível fazer um “upgrade” para uma faixa de 13 endereços (máscara 255.255.255.240) e por 56 dólares é possível colocar as mãos em uma faixa de 61 endereços utilizáveis (máscara 255.255.255.192).

Aumentando a mensalidade em mais 45 dólares, seria possível atualizar o servidor para 2 GB de RAM e adicionar um HD secundário de 500 GB, o que permitiria rodar tranquilamente 8 ou mesmo 16 VMs simultaneamente.

Interface de gerenciamento via web

Concluindo, falta apenas instalar o VMware Management Interface (no servidor), de forma que você possa monitorar o status das máquinas virtuais já configuradas usando o navegador.

Assim como nos passos anteriores, você deve baixar o arquivo “VMware-mui”, descompactá-lo, acessar a pasta “vmware-mui-distrib/” que será criada e rodar o comando “vmware-install.pl“, para abrir o script de instalação, como em:

# tar -zxvf VMware-mui-1.0.5-80187.tar.gz
# cd vmware-mui-distrib/
# ./vmware-install.pl

Ao contrário do script de instalação do VMware Server, o script não pergunta sobre compiladores ou sobre os headers do Kernel, apenas confirma os diretórios de instalação. Embora seja uma interface de administração via web, o VMware-mui não precisa que o Apache (ou outro servidor web) esteja instalado, pois ele inclui um mini-servidor próprio, que inclui todas as funções necessárias. Ele também não conflita com o Apache caso instalado no mesmo servidor, já que utiliza uma porta diferente.

Para se conectar à interface de gerenciamento, acesse (no seu desktop) o endereço “https://seuservidor.com.br:8333” e logue-se usando o mesmo login e senha do vmware-server-console. Esta interface de gerenciamento é muito prática, pois você pode se conectar ao servidor para reiniciar uma máquina virtual até mesmo usando o celular, quando estiver preso no trânsito. Note que é necessário manter a porta “8333” aberta no firewall do servidor:

m50296f32

Aqui temos duas máquinas virtuais ativas, uma com o SuSE e outra com o Ubuntu. A grande diferença de uso de memória entre os dois (29 MB para o Ubuntu e 159 MB para o SuSE) é porque o SuSE está rodando com a interface gráfica e um conjunto de outros serviços ativos, enquanto o Ubuntu foi instalado em modo servidor e está rodando apenas o SSH e o Apache.

Em geral, um servidor bem configurado e com apenas os serviços necessários ativos, consome bem menos memória RAM que um desktop (com exceção dos casos de servidores de alta demanda, naturalmente), por isso é mais fácil manter várias VMs ativas. O consumo de RAM do servidor cresce conforme aumenta o número de usuários e, consequentemente, de requisições simultâneas.

Naturalmente, nada lhe impede de configurar também máquinas virtuais rodando outros sistemas operacionais. Também estão disponíveis versões do VMware Server e do vmware-server-console para Windows, tornando a escolha da plataforma algo bem democrático.

Voltando ao VMware-mui, muita gente torce o nariz para a idéia de manter abertas as portas 902 (utilizada pelo vmware-server-console) e 8333. Se você for paranóico, é possível manter as portas fechadas e acessar a interface de gerenciamento e o console usando um túnel do SSH. Neste caso, você precisa manter aberta apenas a porta 22.

Para criar os túneis, use o comando “ssh -f -N -L porta:IPservidor:porta -l user IPservidor”. É preciso executar o comando duas vezes, uma para a porta 902 e outra para a porta 8333. Se você deseja se conectar no servidor “gdhn.com.br” usando o login “gdh”, por exemplo, os comandos seriam:

# ssh -f -N -L902:gdhn.com.br:902 -l gdh gdhn.com.br
# ssh -f -N -L8333:gdhn.com.br:8333 -l gdh gdhn.com.br

Uma observação é que o primeiro comando (que redireciona a porta 902) precisa ser executado na sua máquina (no cliente) como root, pois as permissões do SSH não permitem criar túneis para portas abaixo da 1024 utilizando um login de usuário.

Com os túneis criados, ao invés de se conectar ao endereço IP ou domínio do servidor, você passa a se conectar ao endereço “127.0.0.1”, ou seja, você se conecta ao localhost. O SSH se encarrega de redirecionar todos os dados através do túnel, enviando-os para as portas corretas no servidor remoto, mesmo que elas estejam fechadas no firewall (pois os dados trafegam na verdade através da porta 22, do SSH).

Os túneis são bem transparentes. A única dificuldade é que você precisa executar novamente os comandos cada vez que reiniciar o cliente ou caso ele seja desconectado da rede.

VMware Tools

Embora não seja obrigatório, é interessante instalar o VMware-Tools após terminar de instalar o sistema dentro da máquina virtual. Ele é um conjunto de drivers que faz o sistema guest rodar com um melhor desempenho e de forma mais transparente, sobretudo com relação à interface de rede virtual e ao vídeo.

Dentro da máquina virtual, o sistema guest não enxerga o hardware real do servidor, mas sim um conjunto de dispositivos virtuais criados elo VMware. É por isso que você pode usar a mesma VM em vários servidores diferentes, sem precisar ficar instalando drivers nem modificando o sistema guest.

Para instalar o VMware Tools dentro da máquina virtual, use (com o sistema carregado) a opção “VM > Install VMware Tools” disponível no menu principal:

7a8d007d

A opção simula a inserção de um segundo drive de CD-ROM, contendo a mídia de instalação do VMware-Tools dentro da máquina virtual. Ao instalar em uma VM rodando Linux, o primeiro passo é montar o drive de CD-ROM, usando o comando “mount /media/cdrom0” ou “mount /mnt/cdrom”.

Acessando a pasta correspondente, você encontra dois arquivos do VMware-Tools, um compactado em .tar.gz (a versão genérica) e outro em .rpm (a versão destinada ao Fedora e outras distribuições derivadas do Red Hat).

Copie a versão que vai instalar para a pasta “/tmp”. Para instalar o arquivo .tar.gz, descompacte o arquivo, acesse a pasta que será criada e execute o comando “./vmware-install.pl” (como root). Para o pacote em RPM, basta instalá-lo utilizando o comando “rpm -Uvh”

A instalação do VMware-Tools implica na instalação de diversos módulos de kernel que precisam ser compilados sob medida para o kernel em uso. O pacote inclui pacotes pré-compilados para muitas distribuições, mas, ao instalar uma distribuição menos comum, ou instalar uma versão recente, você vai precisar ter instalados os compiladores e os headers do kernel (no sistema guest, dentro da máquina virtual), para que o instalador possa compilar os módulos, assim como ao instalar o pacote principal do VMware Server.

Ao usar a opção em uma VM com o Windows, a instalação é mais simples, pois a inserção do CD-ROM virtual dispara o programa de instalação automaticamente (usando o autorun) e o instalador segue o tradicional modelo “Next > Next > Finish”:

m5345bd9f

Graças a todos os recursos que vimos, o VMware Server acaba sendo uma opção quase que ideal, já que é gratuito, flexível e fácil de instalar. Além de usá-lo em seus servidores para otimizar o uso dos recursos disponíveis, essencialmente transformando um único servidor em vários, você pode até mesmo usá-lo no seu desktop, no lugar do VMware workstation ou VMware Player.

Atualmente estamos assistindo a uma popularização muito grande do Xen, mas ele ainda perde no quesito da facilidade de uso. Outro concorrente que tem crescido é o KVM, que também citei anteriormente. Ou seja, mantenha um olho no VMware Server, e outro nas demais soluções. Como o mercado é muito volátil, não podemos dizer qual deles estará por cima daqui a 5 anos. 🙂

Leia também:

Usando o VMware Server 2.0 beta
Em versões anteriores, o VMware era um produto caro. Com a concorrência de outros produtos, a VMware passou a disponibilizar gratuitamente o VMware Player, seguido do VMware Server. O VMware Server é tão completo e flexível que atende não apenas a quem quer usá-lo em um servidor, mas também aos usuários normais, que querem rodar diversos sistemas operacionais no mesmo micro. Se você já é usuário do VMware Workstion, ou do VMware Player, pode muito bem migrar para ele. A dica de hoje é sobre o VMware Server 2.0, que já está na versão Beta 2. Embora ainda esteja em desenvolvimento, ele já é bastante estável e oferece diversos recursos interessantes.

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X