1. status.html 檔案:
一般是web 伺服器常用的方式,apache/nginx web 服務 配置健康檢測檔案status.html[自己設定即可]這樣 vip/lvs 會每秒(或者乙個時間粒度) 去他們下面的realserver 上面:curl http://realserverip:/status.html如果能取到這檔案,則說明這個realserver 是好的,就會根據負載均衡演算法把流量引到這台realserver。
(1). realserver touch了 status.html 但是沒有啟動web服務;
因為沒有啟動web服務,則 curl http://realserverip:/status.html 時 根本連不上此台機器 80,所以機器的web服務如果沒有啟動,即使已經touch了 status.html 檔案,lvs 也認為這台機器是不健康的,不會引流量進來;所以,我們上線時;如果不摘流量(rm -f .../status.html);也只是在一瞬間丟掉了流量;lvs 下次健康檢測就會失敗的.
(2). 配置好監控檢測檔案後,我們需要在realserver上面touch statu.html檔案;
因為監控檢測是通過web服務來檢測的;所以,要在 web伺服器的 根目錄裡面touch 監控檢測檔案;但是這個根目錄要找對:
• /home/a/conf/apache/httpd.conf 是apache 預設的配置檔案:documentroot "/home/a/share/htdocs"
如果在 /home/a/conf/apache/include/*.conf 裡面沒有新的設定,web服務的跟目錄就是上面這個。
• 如果在 /home/a/conf/apache/include/.*.conf 裡面重新設定了則優先使用include 裡面的配置。
[html] view plain copy
01.02. servername www.baidu.com # 如果訪問網域名稱:www.baidu.com 或者直接訪問web機器的ip位址則
03. documentroot /home/a/share/htdocs/test #跟目錄在這個目錄下面
04. ........
05. ........
•nginx 伺服器:conf裡面的那個root 對應的就是 跟目錄。
04. root /home/a/share/htdocs; #web 伺服器的根目錄
05. ......
06. ......
2 . 埠(port) 的健康檢測方式:
如果realserver 上面不提供web 伺服器,則上面的status.html 檢測方式是不適合的;我們可以採用port方式;lvs/vip 會每秒檢測下面的 realserver 上面的 固定埠 [ 比如3000] 如果這個realserver的埠可以通訊;則認為這台realserver 是健康,會把資料與這台realserver 進行通訊;
(1). 判斷realserver 的埠是否是通的:
[html] view plain copy
01.telnet realserverip port(3000)
02.trying realserverip ...
03.connected to realserverip
04.escape character is '^]'. ------>表明 埠是通的
05.
06.trying realserverip...
07.telnet: connect to address : realserverip connection refused
08.telnet: unable to connect to remote host: connection refused ------>表明 埠是不通的
3. status.html + port 監控檢測的方式
上面說使用status.html 健康檢測的方式必須是web 服務,其實不不一定;只要這個機器提供http的服務,比如curl http://ip:port/status.html 返回是200 就是健康的。
wget http://ip:4050/status.html 可以作為realserver 健康檢測的;還是用status.html 來做健康檢測,不過需要指定特定的埠:4050 只要應用中可以使用curl 傳送訊息
也就是可以進行http服務。
4. 健康檢測的方式
健康檢測的方式其實有兩種啊,四層健康檢測【tcp】、七層健康檢測【http】
四層健康檢測方式:其實就是上面的埠檢測方式,只要這個server 的埠是通的,就認為這台realserver是alive的;就會把流量分發過來,
這樣的health check 一般是用在http服務,但是不是真正的apache/nginx 這樣傳統的webserver上面;
七層健康檢測方式:其實就是上面的status.html 的方式,在osi的第七層,應用層進行檢測,判斷curl http://ip/status.html 這個配置檔案是否存在
• 四層health check :如果你摘流量,必須停止服務,把對應的port 關閉
• 七層health check :如果你摘流量,只要刪除指定的健康檢測檔案即可
負載均衡的應用場景
負載均衡適用於高訪問量的業務,提高應用程式的可用性和可靠性。應用於高訪問量的業務 如果您的應用訪問量很高,您可以通過配置監聽規則將流量分發到不同的ecs例項上。此外,您可以使用會話保持功能將同一客戶端的請求 到同一台後端ecs,提高訪問效率。擴充套件應用程式 消除單點故障 您可以在負載均衡例項下新增...
程式的負載均衡 應用程式負載均衡器概述
點 藍字關注,謝謝支援 www.iloveaws.cn 我們開始今天的課程內容。應用程式負載均衡器是aws推出的新一代負載均衡器,支援http以及https協議。當然,還有很多應用程式負載均衡器所支援的功能上面沒有列出。按照這個思路在本節課,我接下來將快速演示應用程式負載均衡器的 基於路徑的路由功能...
使用應用程式負載均衡器的優勢
支援基於路徑的路由,對於根據請求中的url 請求的偵聽器,您可以為它配置規則,可以將應用程式狗紮成較小的服務,並根據url內容將請求路由到正確的服務。通過使用多個埠註冊例項,支援請求路由到單個ec2例項上的多個服務。支援容器化的應用程式。計畫任務時,可以選擇乙個未使用的埠,並可以使用此埠向目標組註冊...