nginx負(fù)載均衡配置

nginx負(fù)載均衡配置

配置環(huán)境

本地配置三臺(tái)docker容器分別命名為web1、web2涌哲、和Qd(前端機(jī))训挡,web1、web2擔(dān)任web服務(wù)器鼻种,Qd擔(dān)負(fù)前端負(fù)責(zé)均衡前端機(jī)負(fù)責(zé)分發(fā)請(qǐng)求反番。


拓?fù)鋱D

反向代理配置

修改nginx配置文件

配置文件
配置文件

配置文件中的web1為host名,已添加到host中

location / {
      proxy_pass      http://web1; // 代理地址
       }

驗(yàn)證nginx配置文件是否正確

root@0334777e7f92:/etc/nginx/conf.d# nginx -t

重新加載nginx配置文件

root@0334777e7f92:/etc/nginx/conf.d# service nginx reload

訪問Qd機(jī)的nginx服務(wù)叉钥,將被跳轉(zhuǎn)到web1服務(wù)器上

配置負(fù)責(zé)均衡

在反向代理的基礎(chǔ)上進(jìn)行負(fù)載均衡配置罢缸,添加upstream模塊

upstream test.net{
    ip_hash; ## 調(diào)度算法
    server 192.168.10.13:80; 服務(wù)列表
    server 192.168.10.14:80  down;
    server 192.168.10.15:8009  max_fails=3      fail_timeout=20s;
    server 192.168.10.16:8080;
}
  • upstream 支持的負(fù)載均衡算法

Nginx的負(fù)載均衡模塊目前支持4種調(diào)度算法,下面進(jìn)行分別介紹投队,其中后兩項(xiàng)屬于第三方調(diào)度算法祖能。

輪詢(默認(rèn))。每個(gè)請(qǐng)求按時(shí)間順序逐一分配到不同的后端服務(wù)器蛾洛,如果后端某臺(tái)服務(wù)器宕機(jī)养铸,故障系統(tǒng)被自動(dòng)剔除,使用戶訪問不受影響轧膘。

Weight 指定輪詢權(quán)值钞螟,Weight值越大,分配到的訪問機(jī)率越高谎碍,主要用于后端每個(gè)服務(wù)器性能不均的情況下鳞滨。

ip_hash。每個(gè)請(qǐng)求按訪問IP的hash結(jié)果分配蟆淀,這樣來(lái)自同一個(gè)IP的訪客固定訪問一個(gè)后端服務(wù)器拯啦,有效解決了動(dòng)態(tài)網(wǎng)頁(yè)存在的session共享問題澡匪。

fair。這是比上面兩個(gè)更加智能的負(fù)載均衡算法褒链。此種算法可以依據(jù)頁(yè)面大小和加載時(shí)間長(zhǎng)短智能地進(jìn)行負(fù)載均衡唁情,也就是根據(jù)后端服務(wù)器的響應(yīng)時(shí)間來(lái)分配請(qǐng)求,響應(yīng)時(shí)間短的優(yōu)先分配甫匹。Nginx本身是不支持fair的甸鸟,如果需要使用這種調(diào)度算法,必須下載Nginx的upstream_fair模塊兵迅。

url_hash抢韭。此方法按訪問url的hash結(jié)果來(lái)分配請(qǐng)求,使每個(gè)url定向到同一個(gè)后端服務(wù)器恍箭,可以進(jìn)一步提高后端緩存服務(wù)器的效率刻恭。Nginx本身是不支持url_hash的,如果需要使用這種調(diào)度算法扯夭,必須安裝Nginx 的hash軟件包吠各。

  • upstream 支持的狀態(tài)參數(shù)

在HTTP Upstream模塊中,可以通過server指令指定后端服務(wù)器的IP地址和端口勉抓,同時(shí)還可以設(shè)定每個(gè)后端服務(wù)器在負(fù)載均衡調(diào)度中的狀態(tài)。常用的狀態(tài)有:

down候学,表示當(dāng)前的server暫時(shí)不參與負(fù)載均衡藕筋。
backup,預(yù)留的備份機(jī)器梳码。當(dāng)其他所有的非backup機(jī)器出現(xiàn)故障或者忙的時(shí)候隐圾,才會(huì)請(qǐng)求backup機(jī)器,因此這臺(tái)機(jī)器的壓力最輕掰茶。
max_fails暇藏,允許請(qǐng)求失敗的次數(shù),默認(rèn)為1濒蒋。當(dāng)超過最大次數(shù)時(shí)盐碱,返回proxy_next_upstream 模塊定義的錯(cuò)誤。
fail_timeout沪伙,在經(jīng)歷了max_fails次失敗后瓮顽,暫停服務(wù)的時(shí)間。max_fails可以和fail_timeout一起使用围橡。

注暖混,當(dāng)負(fù)載調(diào)度算法為ip_hash時(shí),后端服務(wù)器在負(fù)載均衡調(diào)度中的狀態(tài)不能是weight和backup翁授。

  • 配置負(fù)載均衡
root@0334777e7f92:/etc/nginx/conf.d# vim default.conf
upstream webservers {
      server web1;
      server web2;
  }
server {
    listen       80;
    server_name  localhost;

    #charset koi8-r;
    #access_log  /var/log/nginx/log/host.access.log  main;

    location / {
       # root   /usr/share/nginx/html;
       # index  index.html index.htm;
        proxy_pass      http://webservers;
        proxy_set_header  X-Real-IP  $remote_addr;
    }
負(fù)載均衡配置
負(fù)載均衡配置

驗(yàn)證nginx配置文件是否正確

root@0334777e7f92:/etc/nginx/conf.d# nginx -t

重新加載nginx配置文件

root@0334777e7f92:/etc/nginx/conf.d# service nginx reload

訪問Qd機(jī)拣播,刷新頁(yè)面晾咪,將會(huì)輪訓(xùn)分不到其他服務(wù)機(jī)上

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市贮配,隨后出現(xiàn)的幾起案子谍倦,更是在濱河造成了極大的恐慌,老刑警劉巖牧嫉,帶你破解...
    沈念sama閱讀 206,482評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件剂跟,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡酣藻,警方通過查閱死者的電腦和手機(jī)曹洽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)辽剧,“玉大人送淆,你說我怎么就攤上這事∨陆危” “怎么了偷崩?”我有些...
    開封第一講書人閱讀 152,762評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)撞羽。 經(jīng)常有香客問我阐斜,道長(zhǎng),這世上最難降的妖魔是什么诀紊? 我笑而不...
    開封第一講書人閱讀 55,273評(píng)論 1 279
  • 正文 為了忘掉前任谒出,我火速辦了婚禮,結(jié)果婚禮上邻奠,老公的妹妹穿的比我還像新娘笤喳。我一直安慰自己,他們只是感情好碌宴,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,289評(píng)論 5 373
  • 文/花漫 我一把揭開白布杀狡。 她就那樣靜靜地躺著,像睡著了一般贰镣。 火紅的嫁衣襯著肌膚如雪呜象。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,046評(píng)論 1 285
  • 那天碑隆,我揣著相機(jī)與錄音董朝,去河邊找鬼。 笑死干跛,一個(gè)胖子當(dāng)著我的面吹牛子姜,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 38,351評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼哥捕,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼牧抽!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起遥赚,我...
    開封第一講書人閱讀 36,988評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤扬舒,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后凫佛,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體讲坎,經(jīng)...
    沈念sama閱讀 43,476評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,948評(píng)論 2 324
  • 正文 我和宋清朗相戀三年愧薛,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了晨炕。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,064評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡毫炉,死狀恐怖瓮栗,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情瞄勾,我是刑警寧澤费奸,帶...
    沈念sama閱讀 33,712評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站进陡,受9級(jí)特大地震影響愿阐,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜趾疚,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,261評(píng)論 3 307
  • 文/蒙蒙 一缨历、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧盗蟆,春花似錦、人聲如沸舒裤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)腾供。三九已至仆邓,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間伴鳖,已是汗流浹背节值。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留榜聂,地道東北人搞疗。 一個(gè)月前我還...
    沈念sama閱讀 45,511評(píng)論 2 354
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像须肆,于是被迫代替她去往敵國(guó)和親匿乃。 傳聞我的和親對(duì)象是個(gè)殘疾皇子桩皿,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,802評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 目錄 Nginx概述 Nginx調(diào)度算法 Nginx指令使用 Nginx負(fù)載均衡配置參數(shù) 1. Nginx概述 N...
    garyond閱讀 821評(píng)論 0 10
  • 《老男孩Linux運(yùn)維》Nginx Documentation 集群簡(jiǎn)介 集群就是指一組(若干)相互獨(dú)立的計(jì)算機(jī),...
    Zhang21閱讀 3,373評(píng)論 0 51
  • 負(fù)載均衡幢炸,單從字面上的意思來(lái)理解就可以解釋N臺(tái)服務(wù)器平均分擔(dān)負(fù)載泄隔,不會(huì)因?yàn)槟撑_(tái)服務(wù)器負(fù)載高宕機(jī)和某臺(tái)服務(wù)器閑置的情...
    Fa1se003閱讀 20,559評(píng)論 1 31
  • nginx做負(fù)載均衡器以及proxy緩存配置 關(guān)于nginx的安裝和基本配置請(qǐng)參考nginx,本文在原基礎(chǔ)上完成以...
    meng_philip123閱讀 1,582評(píng)論 1 16
  • 今晚見了一個(gè)朋友,一個(gè)一直在我心中有著神圣位置像個(gè)標(biāo)桿一樣的朋友闸天,一直以來(lái)我都覺得她所擁有的一切暖呕,都是我此生不可及...
    知更鳥Robin閱讀 277評(píng)論 2 1