Compartilhando IPs estáticos entre Máquinas Virtuais

Compartilhando IPs estáticos entre Máquinas Virtuais

Desde agora, usei o recurso vhost do Apache2 para vincular vários domínios a um IP público e estático.

Agora estou configurando um Host XEN com 4 IPs e várias VMs, duas delas são servidores web puros. É possível que 2 VMs compartilhem um IP público? Cada um teria um conjunto de vhosts no mesmo IP público.

texto alternativo

Editar: Ok, que tal um redirecionamento baseado em Host? texto alternativo

Responder1

Se você se preocupa apenas em servir http, provavelmente desejará instalar um balanceador de carga de software/proxy reverso comoLibra. A configuração no host Xen seria (novamente-- provavelmente) parecida com

ListenHTTP
            Address xx.xx.xx.xx
            Port    80

            Service
                BackEnd
                    Address ip.of.webserver.1
                    Port    80
                End
                BackEnd
                    Address ip.of.webserver.2
                    Port    80
                End
            End
End

Você também precisará configurar regras de encaminhamento e iptables no host Xen; talvez já esteja configurado para isso.

Responder2

Não acho que você seria capaz de dividir as solicitações que vão para os dois servidores se eles tiverem o mesmo IP.

Por que você precisa configurá-los no mesmo IP?

belo diagrama embora

Responder3

Como dizem o radius e os outros, não acredito que seja possível fazer isso apenas dando aos servidores o mesmo IP (eles reclamarão de endereços duplicados e um deles acabará sem IP), ou o mesmo secundário IP (como acima, mas mais difícil de solucionar).

Uma opção melhor seria o DNS round-robin, onde você pode adicionar os IPs de cada servidor web ao mesmo registro "A", e uma consulta para esse registro "A" retornará um endereço diferente a cada vez ou uma lista de endereços para seus clientes escolherem. Outra opção seria adicionar algum tipo de aplicativo de balanceamento de carga na frente dos dois servidores web para rotear o tráfego para cada um igualmente (ou apenas para um, com o outro como failover). Você pode fazer isso com outra instância do Apache com mod_proxy instalado.

Qual deles você deseja usar depende do motivo pelo qual você deseja fazê-lo - estamos falando de algum tipo de alta disponibilidade/clustering?

Responder4

De acordo com sua edição, você pode usar um proxy reverso. O Apache pode fazer isso. Libra é outra solução já mencionada.

informação relacionada