全球加速通過健康檢查來判斷終端節點的運行狀態,健康檢查機制提高了業務的可靠性和可用性,避免了異常終端節點對服務的影響。
健康檢查介紹
您可以為全球加速實例的終端節點組開啟健康檢查。開啟健康檢查后,當某個終端節點健康檢查出現異常時,全球加速會自動將新的請求分發到其它健康檢查正常的終端節點上;而當健康檢查異常的終端節點恢復正常后,全球加速會將該終端節點自動恢復到請求服務中。
全球加速支持TCP、HTTP和HTTPS協議的健康檢查。
TCP協議健康檢查
TCP協議的健康檢查是基于網絡層探測,通過發送SYN握手報文來檢測服務器端口是否存活。檢查流程如下圖:
序號 | 描述 |
① | 全球加速實例根據監聽的健康檢查配置,向終端節點的IP和健康檢查端口發送TCP SYN數據包。 |
② | 根據終端節點是否返回SYN+ACK數據包,判定健康檢查是否成功。
說明 響應超時時間為接收來自運行狀況檢查的響應需要等待的最大時間。如果終端節點在響應超時時間內沒有正確響應,則判定為健康檢查失敗。系統默認為3秒,不支持配置。 |
③ | 全球加速實例成功收到終端節點返回的SYN+ACK數據包后,向終端節點發送ACK數據包,確認連接。 |
HTTP和HTTPS協議的健康檢查
HTTP和HTTPS協議的健康檢查是基于GET請求,通過發送GET請求模擬瀏覽器的訪問行為來檢查終端節點的服務器應用是否健康。檢查流程如下圖:
序號 | 描述 |
① | 全球加速實例根據監聽的健康檢查配置,向終端節點的IP、健康檢查端口、檢查路徑發送HTTP GET請求。 |
② | 終端節點收到請求后,根據相應服務的運行情況,確定是否返回HTTP狀態碼。
說明 響應超時時間為接收來自運行狀況檢查的響應需要等待的最大時間。如果終端節點在響應超時時間內沒有正確響應,則判定為健康檢查失敗。系統默認為3秒,不支持配置。 |
健康檢查時間窗
健康檢查機制的引入,有效提高了業務服務的可用性。但是,為了避免頻繁的健康檢查失敗引起的切換對系統可用性的沖擊,健康檢查只有在健康檢查時間窗內連續多次檢查成功或失敗后,才會進行狀態切換。健康檢查時間窗由以下三個因素決定:
健康檢查間隔時間:每隔多久進行一次健康檢查。
響應超時時間:等待后端服務返回健康檢查的最大時間。
健康檢查健康閾值:針對健康檢查狀態變化所需要的連續健康檢查次數。
健康檢查時間窗的計算方法如下:
健康檢查失敗時間窗=響應超時時間×健康檢查健康閾值+健康檢查間隔時間×(健康檢查健康閾值-1)
以下圖為例,健康檢查響應超時時間為3秒,健康檢查間隔時間為2秒,健康檢查健康閾值為3次,健康檢查失敗時間窗=3×3+2×(3-1)=13秒。
健康檢查成功時間窗=(健康檢查成功響應時間x健康檢查健康閾值)+健康檢查間隔時間x(健康檢查健康閾值-1)
以下圖為例,健康檢查成功響應時間為1秒,健康檢查間隔時間為2秒,健康檢查健康閾值為3次,健康檢查成功時間窗=1×3+2×(3-1)=7秒。
使用限制
對于UDP監聽,終端節點必須有TCP、HTTP或HTTPS服務才支持健康檢查,否則,它將被標記為異常。
開啟健康檢查
登錄全球加速管理控制臺。
在實例列表頁面,找到目標全球加速實例,在操作列單擊配置監聽。
在監聽頁簽下,找到目標監聽,在操作列單擊編輯監聽。
在編輯監聽頁面,單擊下一步。
在配置終端節點配置向導頁面的健康檢查區域,打開健康檢查的開關,然后根據以下信息配置健康檢查。
配置
說明
健康檢查協議
選擇健康檢查的協議,支持TCP、HTTP和HTTPS協議。
TCP協議的健康檢查是基于網絡層探測,通過發送SYN握手報文來檢測服務器端口是否存活。
HTTP和HTTPS協議的健康檢查是基于GET請求,通過發送GET請求模擬瀏覽器的訪問行為來檢查終端節點的服務器應用是否健康。
端口
健康檢查服務訪問終端節點時的探測端口。
取值范圍:1~65535。
健康檢查間隔時間
健康檢查的時間間隔,單位為秒。
取值范圍:1~50秒,默認為2秒。
路徑
指定健康檢查的路徑。
必須以正斜線(/)開頭,長度限制為1~80個字符,支持使用字母、數字和短劃線(-)、正斜線(/)、英文句點(.)、百分號(%)、問號(?)、井號(#)和and(&)以及擴展字符集
_;~!()*[]@$^:',+
。默認為全球加速系統向后端服務器應用配置的缺省首頁發起GET請求。如果您用來進行健康檢查的頁面并不是應用服務器的缺省首頁,需要指定具體的檢查路徑。
說明僅HTTP和HTTPS協議健康檢查顯示該項。
健康檢查健康閾值
針對健康檢查狀態變化所需要的連續健康檢查次數,即從成功到失敗的連續健康檢查失敗次數或從失敗到成功的連續健康檢查成功次數。
取值范圍:2~10,默認為3次。
單擊下一步,在配置審核配置向導頁面確認健康檢查信息,然后單擊提交。
更多操作
操作 | 說明 |
修改健康檢查配置 |
|
關閉健康檢查 |
|
相關文檔
CreateEndpointGroup:創建終端節點組(可配置健康檢查)。
UpdateEndpointGroup:修改終端節點組配置信息(可配置健康檢查)。
GetHealthStatus:查看終端節點的健康檢查信息。