Primeiro, você deve definir o ip público ou o encaminhamento de porta do ip público, port 80 , para o seu nginx server.
Em seguida, você deve ter conexão entre nginx e apache 1 , entre nginx e apache 2 e entre apache 1 e apache 2 .
| port 80 | prublic ip or fw from public ip
-----------------------
| nginx |
-----------------------
/ 10.10.10.1 \
/ 10.10.10.2 \ 10.10.10.3
|---------| |---------|
| apache1 |------------------| apache2 |
|---------| |---------|
A conexão entre nginx e apache é usuário para balanceamento de carga
A conexão entre apach 1 e apache 2 é para replicação de aplicativo.
Você deve ter o mesmo aplicativo sincronizado no apache node.
Os seguintes mecanismos de balanceamento de carga (ou métodos) são suportados no nginx:
round-robin - os pedidos para os servidores de aplicativos são distribuídos em um modo round-robin,
least-connected - a próxima solicitação é atribuída ao servidor com o menor número de conexões ativas,
ip-hash - uma função hash é usada para determinar qual servidor deve ser selecionado para a próxima solicitação (com base no endereço IP do cliente).
Configuração padrão de balanceamento de carga
A configuração mais simples para load balancing com nginx pode ser semelhante ao seguinte:
http {
upstream myapp1 {
server apache1.example.com;
server apache2.example.com;
}
server {
listen 80;
location / {
proxy_pass http://myapp1;
}
}
}
Mais exemplos de configuração e posibilite você pode encontrar aqui