Nginx負(fù)載均衡配置_第1頁(yè)
Nginx負(fù)載均衡配置_第2頁(yè)
Nginx負(fù)載均衡配置_第3頁(yè)
Nginx負(fù)載均衡配置_第4頁(yè)
Nginx負(fù)載均衡配置_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Nginx負(fù)載均衡配置詳解一、測(cè)試環(huán)境由于沒(méi)有服務(wù)器,所以本次測(cè)試直接host指定域名(my.local) 測(cè)試域名:my.localA服務(wù)器:81(主服務(wù)器)B 服務(wù)器:31C 服務(wù)器:30二域名解析由于不是真實(shí)環(huán)境,域名就隨便使用一個(gè)my.local用作測(cè)試,所以my.local的解析只能在hosts文件設(shè)置。打開(kāi):C:WindowsSystem32driversetchosts在末尾添加81 my.local保存退出,然后啟動(dòng)命令模式ping下看看是否已設(shè)置成功,如下圖-nTNTTRnnxITn 正來(lái)未來(lái)天Hingf local 81 172.16.IS.1S1 172.1G.10.18

2、1.lbM-色音音 a ?2回回回回 -nTNTTRnnxITn 正來(lái)未來(lái)天Hingf local 81 172.16.IS.1S1 172.1G.10.181.lbM-色音音 a ?2回回回回 .rY jrr .h-r.1節(jié)節(jié)節(jié)節(jié) lu2 2 2 213 3 3 3 gg =- -0 u 032字節(jié)的段據(jù):lms TIL=64lns TIL=G4-Inti: TIL-64=lms UL=b4p連間# 的- 1 已 uIns 9 古國(guó) 1 : 11 此包的= 1居程一3- 斯餐 胃返 17住失丟ms045=副 苣理員:C:Windo,s5y5tern32crnd.sxeMicrosoft Ui

3、ndous6.1.76013版權(quán)所有 2809 Microsoft Corporation 5保留所有杈利“C U sb r s Sis s us o r Jp in sr my . local三、Nginx配置1 )A服務(wù)器(主服務(wù)器)nginx.conf酉己置打開(kāi)nginx.conf,文件位置在nginx安裝目錄的conf目錄下。在http段加入以下代碼upstream my.local ip_hash; #默認(rèn)可以不加,加上此行則已ip_hash方式進(jìn)行負(fù)載均衡 #weight為權(quán)重,數(shù)字越大權(quán)重越高 server 31:80 weight=1;server 30:80 weight=1

4、;server(listen 80;server_name my.local;location / proxy_pass HYPERLINK http:/my.local http:/my.local;proxy_set_headerHost$host;proxy set headerproxy_pass HYPERLINK http:/my.local http:/my.local;proxy_set_headerHost$host;proxy set headerX-Real-IP$remote addr;proxy_set_header X-Forwarded-For $proxy_ad

5、d_x_forwarded_for;保存重啟 nginx (/usr/local/nginx/sbin/nginx -s reload )2)B、C服務(wù)器nginx.conf設(shè)置打開(kāi)nginx.conf,文件位置在nginx安裝目錄的conf目錄下。在http段加入以下代碼server(listen 80;server_name my.local;index index.html index.htm index.php;root /home/wwwroot/default;保存重啟 nginx ( /usr/local/nginx/sbin/nginx -s reload),測(cè)試當(dāng)訪問(wèn)my.l

6、ocal的時(shí)候,為了區(qū)分是轉(zhuǎn)向哪臺(tái)服務(wù)器處理分別在B、C服務(wù)器下寫(xiě)一個(gè) 不同內(nèi)容的index.html文件,以作區(qū)分。打開(kāi)瀏覽器訪問(wèn)my.local結(jié)果,刷新會(huì)發(fā)現(xiàn)所有的請(qǐng)求均分別被主服務(wù)器(81)分配到 B 服務(wù)器(31)與 C 服務(wù)器(30) 上,實(shí)現(xiàn)了負(fù)載均衡效果。B服務(wù)器:分 C D my.local/: Q Postman ? Codeception - 3D., 172. 16. 10. 131C服務(wù)器: C D my.local/:應(yīng)用 R Postman / Co deception - 3D. p 172. 16. 10. 130假如其中一臺(tái)服務(wù)器宕機(jī)會(huì)怎樣?當(dāng)某臺(tái)服務(wù)器宕機(jī)

7、了,是否會(huì)影響訪問(wèn)呢?我們先來(lái)看看實(shí)例,根據(jù)以上例子,假設(shè)C服務(wù)器30這臺(tái)機(jī)子宕機(jī)了(由于無(wú)法模擬宕機(jī),所以我就把C服務(wù)器關(guān)機(jī))然后再來(lái)訪問(wèn)看看。訪問(wèn)結(jié)果則都是下圖顯示結(jié)果:-f C 口 my.Io cal/:應(yīng)用 & Postman / Co-deception - 3D., 172. 16. 10. 131我們發(fā)現(xiàn),雖然C服務(wù)器(30)宕機(jī)了,但不影響網(wǎng)站訪問(wèn)。這樣,就不 會(huì)擔(dān)心在負(fù)載均衡模式下因?yàn)槟撑_(tái)機(jī)子宕機(jī)而拖累整個(gè)站點(diǎn)了。五、同一臺(tái)服務(wù)器設(shè)置多個(gè)域名的負(fù)載均衡多個(gè)域名配置和my.local的配置一樣。假設(shè)second.local的主服務(wù)器IP是81,負(fù)載均衡到32和33 機(jī)器上現(xiàn)將域

8、名 second.local 解析到 81 上。在主服務(wù)器(81)的nginx.conf加入以下代碼:upstream second.local server32:80;server32:80;server33:80;server(listen 80;server_name second.local;location / proxy_passproxy_set_headerproxy_set_headerproxy_set_headerserver33:80;server(listen 80;server_name second.local;location / proxy_passproxy

9、_set_headerproxy_set_headerproxy_set_headerHost$host;X-Real-IP$remote_addr;X-Forwarded-For $proxy_add_x_forwarded_for;保存重啟nginx在32與33機(jī)器上設(shè)置nginx,打開(kāi)nginx.conf在末尾添加 以下代碼:server(listen 80;server_name second.local;index index.html index.htm index.php;root /home/wwwroot/default;保存重啟nginx完成以上步驟后即可實(shí)現(xiàn)second.

10、local的負(fù)載均衡配置了。六、主服務(wù)器提供服務(wù)以上例子中,我們都是應(yīng)用到了主服務(wù)器負(fù)載均衡到其它服務(wù)器上,那么主服務(wù)器本身 能不能也加在服務(wù)器列表中,這樣就不會(huì)白白浪費(fèi)拿一臺(tái)服務(wù)器純當(dāng)做轉(zhuǎn)發(fā)功能,而是 也參與到提供服務(wù)中來(lái)。如以上案例三臺(tái)服務(wù)器:A服務(wù)器:81(主服務(wù)器)B 服務(wù)器:31C 服務(wù)器:30我們把域名解析到A服務(wù)器,然后由A服務(wù)器轉(zhuǎn)發(fā)到B服務(wù)器與C服務(wù)器,那么A服 務(wù)器只做一個(gè)轉(zhuǎn)發(fā)功能,現(xiàn)在我們讓A服務(wù)器也提供站點(diǎn)服務(wù)。我們先來(lái)分析一下,如果添加主服務(wù)器到upstream中,那么可能會(huì)有以下兩種情況發(fā) 生:1、主服務(wù)器轉(zhuǎn)發(fā)到了其它IP上,其它IP服務(wù)器正常處理;2、主服務(wù)器轉(zhuǎn)發(fā)到

11、了自己上,然后又進(jìn)到主服務(wù)器分配IP那里,假如一直分配到 本機(jī),則會(huì)造成一個(gè)死循環(huán)。怎么解決這個(gè)問(wèn)題呢?因?yàn)?0端口已經(jīng)用來(lái)監(jiān)聽(tīng)負(fù)載均衡的處理,那么本服務(wù)器上就 不能再使用80端口來(lái)處理my.local的訪問(wèn)請(qǐng)求,得用一個(gè)新的。于是我們把主服務(wù)器 的nginx.conf加入以下一段代碼:serverlisten 8081;server_name my.local;index index.html index.htm index.php;root /home/wwwroot/default;重啟nginx,在瀏覽器輸入my.local:8081試試看能不能訪問(wèn)。結(jié)果可以正常訪問(wèn) C e my.l

12、acal-8081:應(yīng)用Q Postman 二 Co dec eption -172. 16.10.1 SI既然能正常訪問(wèn),那么我們就可以把主服務(wù)器添加到upstream中,但是端口要改一 下,如下代碼:upstream my.local ip_hash;#默認(rèn)可以不加,加上此行則已ip_hash方式進(jìn)行負(fù)載均衡#weight為權(quán)重,數(shù)字越大權(quán)重越高server 31:80 weight=1;server 30:80 weight=1;server 81:8081 weight=1;由于這里可以添加主服務(wù)器IP 81或者均可以都表示訪問(wèn)自己。重啟Nginx,然后再來(lái)刷新 訪問(wèn)my.lcoal看看會(huì)不會(huì)分配到主服務(wù)器上。C D my.local應(yīng)用。Postman ? Codeceptii81主服務(wù)器也能正常加入服務(wù)了。七、總結(jié)1)負(fù)載均衡不是nginx獨(dú)有,著名鼎鼎的叩ache也有,但性能

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論