Nginx 配置輪詢分流–實現負載均衡
準備工作,3台伺服器,或者開虛擬機吧!就是開虛擬機實現的。
ip分別為:192.168.1.10 192.168.1.11 192.168.1.12 (環境:安裝ngixn 沒有做任何配置)
3台伺服器環境最好一樣,再vm里直接克隆出來的,環境絕對一樣吧!不一樣,我估計會遇到很多奇怪的問題,沒試過。
192.168.1.10 作為 負載均衡伺服器 (一會負載均衡就在這裡台伺服器做配置,另外2台不用做配置)
先解下負載一些常見知識
nginx 的 upstream目前支持 4 種方式的分配
1)、輪詢(默認)
每個請求按時間順序逐一分配到不同的後端伺服器,如果後端伺服器down掉,能自動剔除。
2)、weight
指定輪詢幾率,weight和訪問比率成正比,用於後端伺服器性能不均的情況。
2)、ip_hash
每個請求按訪問ip的hash結果分配,這樣每個訪客固定訪問一個後端伺服器,可以解決session的問題。
3)、fair(第三方)
按後端伺服器的響應時間來分配請求,響應時間短的優先分配。
4)、url_hash(第三方)
可以開始配置。打開192.168.1.10 的nginx.conf 只需要在配置文件增加如下代碼
upstream www.linuxidc.com {
server 192.168.1.11:80;
server 192.168.1.12:80;
}
server {
listen 80;
server_name www.88868.com;
location / {
proxy_pass http://www.88868.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
access_log logs/access_log;
error_log logs/error_log;
}
實踐結果:
http://www.88868.com 我通過修改host 指向 192.168.1.10
為使測試結果明顯,我修改ngixn默認頁面的html
vi /usr/local/nginx/html/index.html
再index.html 加入顯示本機ip
192.168.1.11 和 192.168.1.12 都要修改,這樣測才明顯
我通過本機瀏覽器,輸入 http://www.88868.com
每次刷新,都會跳轉到不同的伺服器上頁面(當然我這個是為明顯所以用的是輪詢的方式,大家可以根據自己需求進行修改)
以下文章點擊率最高
Loading…