Como executar um servidor virtual?

0

Atualmente, estou executando um servidor físico Ubuntu 14.04 que hospeda um site. Eu quero adicionar um segundo site, mas não quero tentar executar ambos de uma caixa física. Eu também quero separar meus dados um pouco, como o site principal de um blog WordPress em um subdomínio.

Pelo que pude pesquisar e descobrir que ter uma máquina host executando vários servidores virtuais é o que eu quero, mas não sei como chegar lá. Como posso executar vários servidores do meu servidor físico? E como posso ter aqueles acessíveis à internet?

EDIT: Estou executando um servidor Ubuntu 14.04 virtual de um desktop Ubuntu usando o Oracle VirtualBox. Como posso apontar meu nome de domínio para este servidor virtual e acessar o site?

    
por BFrisch 18.02.2016 / 00:55

1 resposta

0

Acho que há alguns conceitos em jogo aqui - em primeiro lugar, você normalmente só pode ter um aplicativo em uma porta por endereço IP. Existem alguns softwares que podem manipular o envio de coisas para outros servidores também.

Então vamos começar no começo

No mais simples, a sua topografia se parece com isso

Internet+-----------> consumer router +----------> Host+--------------> VM

Você precisa de um endereço IP roteável (não NAT) para a sua conexão com a Internet e, normalmente, você pode verificar isso no seu roteador. Aponte seu ipv4 Um registro neste.

Você tem duas opções sobre como configurar seu host e VM - um NAT (o que significa que você precisa encaminhar portas de seus hosts para sua VM) ou "em ponte" onde sua VM atua como uma máquina física separada. Eu prefiro ponte.

Se você optar pelo NAT em suas VMs, será necessário redirecionar duas vezes a porta, do roteador para o host e do host para a VM.

Se você quiser fazer isso como uma rede com ponte, basta encaminhar a porta que deseja usar para sua VM.

Normalmente, os servidores da Web usam a porta 80, mas às vezes essa porta é bloqueada.

Agora, para dois servidores da Web, fica complicado. A melhor maneira (talvez apenas uma maneira) de ter dois servidores Web separados é ter um servidor terceiro , rodando como um proxy

ngnix é a opção mais popular para isso - essa questão de falha de servidor cobre o processo , mas basicamente seu terceiro servidor fica lá passando o tráfego para o servidor certo baseado no nome do domínio. Isso usa virtualhosts e ngnix funcionando de forma bastante eficiente como um proxy reverso.

Você também pode configurar dois virtualhosts com diferentes diretórios raiz (e um servidor da web). Você não teria necessariamente que compartilhar bancos de dados (que poderiam estar em suas próprias VMs). Essa seria a maneira inteligente de fazer isso.

    
por 18.02.2016 / 07:16