VirtualBox Apache precisa ser acessado a partir do host Ubuntu

VirtualBox Apache precisa ser acessado a partir do host Ubuntu

Eu tenho um host Ubuntu 10.10 no qual instalei o VirtualBox VM. No VirtualBox, instalei duas outras máquinas Ubuntu principalmente com a mesma configuração. Estou tentando obter um cluster de alta disponibilidade com dois nós (essas 2 máquinas virtuais) e não quero misturar minha máquina Host neste projeto.

Agora quero trocar o serviço Apache entre essas 2 máquinas virtuais e para isso criei um host virtual. Eu edito em ambas as máquinas /etc/apache2/sites-available/mywebsite e adiciono as seguintes linhas:

<VirtualHost 55.55.55.55:80>
 ServerAdmin [email protected]
 ServerName mywebsite.com
 DocumentRoot /var/www/mywebsite/
</VirtualHost>

Isso me dará a opção de lançar meu site em 55.55.55.55vez de http://localhost. Mas isso só funciona no meu cluster de 2 nós e não é visível na minha máquina host. O que posso fazer? Existe alguma solução?

Lamento a postagem longa, mas queria fornecer o máximo de detalhes possível. Obrigado

Responder1

O que você precisa é de umbalanceador de carga. O balanceador de carga utiliza um watchdog para monitorar a disponibilidade dos servidores reais e envia as solicitações para aquele que está ativo.

[EDITAR]

Você tem duas opções: os clientes precisam se conectar a outro computador que encaminha as solicitações para o servidor em execução (= balanceador de carga) ou você precisa mover o endereço IP ao trocar de servidor.

Você pode atribuir vários endereços IP ao mesmo computador. Sugiro atribuir dois: um que nunca muda (para administração remota) e outro que você atribui quando inicia o apache neste host (esse seria 55.55.55.55o seu caso).

A alternativa é iniciar o Apache apenas em um único host e deixar o balanceador de carga monitorar esse fato. Os clientes sempre se conectam ao balanceador de carga. Contanto que apenas um serviço Apache seja executado, o balanceador de carga sempre enviará todas as solicitações para apenas uma única máquina.

Para atribuir um endereço IP adicional, use este comando:

ifconfig eth0:1 xxx.xxx.xxx.xxx

O ":1" diz "endereço adicional para eth0" (Mais Informações).

informação relacionada