国产成人v爽在线免播放观看,日韩欧美色,久久99国产精品久久99软件,亚洲综合色网站,国产欧美日韩中文久久,色99在线,亚洲伦理一区二区

學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 > Linux系統(tǒng)下如何配置HTTP負(fù)載均衡系統(tǒng)

Linux系統(tǒng)下如何配置HTTP負(fù)載均衡系統(tǒng)

時間: 孫勝龍652 分享

Linux系統(tǒng)下如何配置HTTP負(fù)載均衡系統(tǒng)

  隨著網(wǎng)絡(luò)流量的增加,服務(wù)器開始面臨繁重負(fù)載,這時就需要搭配一套HTTP負(fù)載均衡系統(tǒng)了,那么Linux下該如何配置HTTP負(fù)載均衡系統(tǒng)呢?隨學(xué)習(xí)啦小編一起來學(xué)習(xí)一下吧。

  無法預(yù)測或缺乏一貫的表現(xiàn)是你所無法承受的。那么,我們?nèi)绾文芟@些缺點(diǎn)呢?在大多數(shù)情況下,一套合適的負(fù)載均衡解決方案有望滿足這個要求。今天我將為各位介紹如何使用HAProxy搭建一套HTTP負(fù)載均衡系統(tǒng)。

  HTTP負(fù)載均衡簡介

  HTTP負(fù)載均衡是一種網(wǎng)絡(luò)解決方案,負(fù)責(zé)在托管相同應(yīng)用內(nèi)容的幾臺服務(wù)器之間分配進(jìn)入的HTTP或HTTPS流量。由于在多臺可用服務(wù)器之間均衡了應(yīng)用請求,負(fù)載均衡系統(tǒng)就能防止任何應(yīng)用服務(wù)器變成單一故障點(diǎn),因而提高了整體的應(yīng)用可用性和響應(yīng)能力。它還讓你可以隨著不斷變化的工作負(fù)載,輕松地縮小/擴(kuò)大部署的應(yīng)用系統(tǒng)的規(guī)模,只需添加或刪除額外的應(yīng)用服務(wù)器。

  哪里使用負(fù)載均衡、何時使用?

  由于負(fù)載均衡系統(tǒng)改進(jìn)了服務(wù)器的利用率,最大限度地提高了可用性,只要你的服務(wù)器開始面臨繁重負(fù)載,或者正為一個較龐大的項(xiàng)目規(guī)劃架構(gòu),就應(yīng)該使用它。事先規(guī)劃好負(fù)載均衡系統(tǒng)的用途是個好習(xí)慣。那樣,未來你需要擴(kuò)展環(huán)境規(guī)模時,它會證明其用途。

  HAProxy是什么東東?

  HAProxy是一種流行的開源負(fù)載均衡和代理系統(tǒng),面向GNU/Linux平臺上的TCP/HTTP服務(wù)器。HAProxy采用了單一線程的事件驅(qū)動型架構(gòu)而設(shè)計(jì),它能夠輕松地處理10G網(wǎng)卡線路速度,現(xiàn)廣泛應(yīng)用于許多生產(chǎn)環(huán)境中。其功能特性包括:自動檢查健康狀況、可定制的負(fù)載均衡算法、支持HTTPS/SSL以及會話速率限制等。

  我們在本教程中要達(dá)到什么樣的目的?

  在本教程中,我們將逐步介紹為HTTP網(wǎng)站服務(wù)器配置基于HAProxy的負(fù)載均衡系統(tǒng)這個過程。

  前提條件

  你至少需要一臺(最好是兩臺)網(wǎng)站服務(wù)器來證實(shí)所搭建負(fù)載均衡系統(tǒng)的功能。我們假設(shè),后端HTTP網(wǎng)站服務(wù)器已經(jīng)搭建并運(yùn)行起來。

  將HAProxy安裝到Linux上

  就大多數(shù)發(fā)行版而言,我們可以使用你所用發(fā)行版的軟件包管理器來安裝HAProxy。

  將HAProxy安裝到Debian上

  在Debian中,我們需要為Wheezy添加向后移植功能。為此,請?jiān)?etc/apt/sources.list.d中創(chuàng)建一個名為“backports.list”的新文件,其內(nèi)容如下:

  deb http://cdn.debian.net/debian wheezy­backports main

  更新你的軟件庫數(shù)據(jù),并安裝HAProxy。

  # apt­ get update # apt ­get install haproxy

  將HAProxy安裝到Ubuntu上

  # apt ­get install haproxy

  將HAProxy安裝到CentOS和RHEL上

  # yum install haproxy

  配置HAProxy

  在本教程中,我們假設(shè)有兩臺HTTP網(wǎng)站服務(wù)器已搭建并運(yùn)行起來,其IP地址分別為192.168.100.2和192.168.100.3。我們還假設(shè),負(fù)載均衡系統(tǒng)將在IP地址為192.168.100.4的那臺服務(wù)器處進(jìn)行配置。

  為了讓HAProxy發(fā)揮功用,你需要更改/etc/haproxy/haproxy.cfg中的幾個項(xiàng)目。這些變更在本章節(jié)中予以描述。萬一某個配置對不同的GNU/Linux發(fā)行版而言有所不同,會在相應(yīng)段落中加以注明。

  1. 配置日志功能

  你首先要做的工作之一就是,為你的HAProxy建立合適的日志功能,這對將來進(jìn)行調(diào)試大有用處。日志配置內(nèi)容位于/etc/haproxy/haproxy.cfg的global部分。下面這些是針對特定發(fā)行版的指令,用于為HAProxy配置日志。

  CentOS或RHEL:

  要想在CentOS/RHEL上啟用日志功能,把:

  log 127.0.0.1 local2

  換成:

  log 127.0.0.1 local0

  下一步,在/var/log中為HAProxy創(chuàng)建單獨(dú)的日志文件。為此,我們需要改動當(dāng)前的rsyslog配置。為了讓配置簡單而清楚,我們將在/etc/rsyslog.d/中創(chuàng)建一個名為haproxy.conf的新文件,其內(nèi)容如下。

  $ModLoad imudp $UDPServerRun 514 $template Haproxy,“%msg%\n” local0.=info /var/log/haproxy.log;Haproxy local0.notice ­/var/log/haproxy­status.log;Haproxy local0.* ~

  該配置將把基于$template的所有HAProxy消息隔離到/var/log中的日志文件?,F(xiàn)在,重啟rsyslog,讓變更內(nèi)容生效。

  # service rsyslog restart

  Debian或Ubuntu:

  要想在Debian或Ubuntu上為HAProxy啟用日志功能,把:

  log /dev/log local0 log /dev/log local1 notice

  換成:

  log 127.0.0.1 local0

  下一步,為HAProxy配置單獨(dú)的日志文件,編輯/etc/rsyslog.d/中一個名為haproxy.conf的文件(或者Debian中的49-haproxy.conf),其內(nèi)容如下。

  $ModLoad imudp $UDPServerRun 514 $template Haproxy,“%msg%\n” local0.=info /var/log/haproxy.log;Haproxy local0.notice ­/var/log/haproxy­status.log;Haproxy local0.* ~

  該配置將把基于$template的所有HAProxy消息隔離到/var/log中的日志文件。現(xiàn)在,重啟rsyslog,讓變更內(nèi)容生效。

  # service rsyslog restart

  2. 設(shè)置默認(rèn)值

  下一步是為HAProxy設(shè)置默認(rèn)變量。找到/etc/haproxy/haproxy.cfg中的defaults部分,把它換成下列配置。

  log global mode http option httplog option dontlognull retries 3 option redispatch maxconn 20000 contimeout 5000 clitimeout 50000 srvtimeout 50000

  上述配置推薦HTTP負(fù)載均衡器使用,但可能不是最適合你環(huán)境的解決方案。如果那樣,請參閱HAProxy參考手冊頁,進(jìn)行適當(dāng)?shù)母膭雍驼{(diào)整。

  3. 網(wǎng)站服務(wù)器集群的配置

  網(wǎng)站服務(wù)器集群(Webfarm)的配置定義了可用的HTTP服務(wù)器集群。我們所建負(fù)載均衡系統(tǒng)的大部分設(shè)置都將放在這里?,F(xiàn)在,我們將創(chuàng)建一些基本的配置,我們的節(jié)點(diǎn)將在這里加以定義。把從frontend部分到文件末尾的所有配置換成下列代碼:

  listen webfarm *:80 mode http stats enable stats uri /haproxy?stats stats realm Haproxy\ Statistics stats auth haproxy:stats balance roundrobin cookie LBN insert indirect nocache option httpclose option forwardfor server web01 192.168.100.2:80 cookie node1 check server web02 192.168.100.3:80 cookie node2 check

  “listen webfarm *:80”這一行定義了我們的負(fù)載均衡系統(tǒng)將偵聽哪些接口。出于本教程的需要,我將該值設(shè)為“*”,這讓負(fù)載均衡系統(tǒng)偵聽我們的所有接口。在實(shí)際場景下,這可能不合意,應(yīng)該換成可從互聯(lián)網(wǎng)來訪問的某個接口。

  stats enable stats uri /haproxy?stats stats realm Haproxy\ Statistics stats auth haproxy:stats

  上述設(shè)置聲明,可以在http://《load-balancer-IP》/haproxy?stats處訪問負(fù)載均衡系統(tǒng)的統(tǒng)計(jì)數(shù)字。這種訪問由簡單的HTTP驗(yàn)證以及登錄名“haproxy”和密碼“stats”來確保安全。這些設(shè)置應(yīng)該換成你自己的登錄信息。如果你不想讓這些統(tǒng)計(jì)數(shù)字被人看到,那么可以完全禁用它們。

305260