Pelayan - nginx bagaimana untuk mengkonfigurasi pengimbangan beban
怪我咯
怪我咯 2017-05-16 17:14:02
0
2
487

Terdapat tiga mesin, ABC,
Semua permintaan dihantar ke A, dan kemudian A memajukannya ke BC, yang mengendalikan perniagaan
Anggap bahawa nama domain ialah bla.combla.com
在机器A上,http 模块内写以下配置,访问bla.comPada mesin A, tulis konfigurasi berikut dalam modul http , lawati bla.com dan lawati halaman lalai A

upstream bla.com {
        ip_hash;
        server 192.168.100.2;
        server 192.168.100.3;
}

Bagaimana saya boleh membuat semua permintaan klik ip_hash dan majukannya kepada B dan C

怪我咯
怪我咯

走同样的路,发现不同的人生

membalas semua(2)
phpcn_u1582

https seni bina imbangan beban adalah seperti yang ditunjukkan dalam rajah, yang tidak jauh berbeza dengan http

upstream mywebapp1 {
    server 10.130.227.11;
    server 10.130.227.22;
}
server {
    listen 80;
    listen 443 ssl;
    server_name example.com www.example.com;

    ssl on;
    ssl_certificate         /etc/nginx/ssl/example.com/server.crt;
    ssl_certificate_key     /etc/nginx/ssl/example.com/server.key;
    ssl_trusted_certificate /etc/nginx/ssl/example.com/ca-certs.pem;

    location / {
        proxy_pass http://mywebapp1;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}
左手右手慢动作

Maksud anda, anda tidak mahu pelayan A menanggung trafik?

  1. Apabila pelayan A memajukan ke bahagian belakang, tetapkan pengepala khas

add_header HELLO Y;
  1. Apabila B dan C menemui pengepala HELLO, mereka serta-merta mengembalikan 302, membenarkan pengguna untuk terus memulakan sambungan ke B dan C

if ($http_HELLO = 'Y'){
    rewrite ^ http://$server_addr:$server_port$request_uri? redirect;
}
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan