CLB通過健全狀態檢查判斷後端伺服器的可用性。開啟健全狀態檢查功能後,當後端伺服器異常時,CLB會將請求分發到其他正常伺服器;當伺服器恢複正常時,CLB會將其恢複到服務中。健全狀態檢查機制提高了使用者業務整體可用性,避免了局部伺服器異常對總體服務的影響,是保證業務高可用性的關鍵要素。
配置健全狀態檢查前,建議您先瞭解CLB健全狀態檢查。
配置健全狀態檢查
您可以在添加監聽時配置健全狀態檢查,通常情況下使用預設的健全狀態檢查配置即可。
在頂部功能表列,選擇執行個體所屬的地區。
在實例管理頁面,找到目標執行個體,單擊執行個體ID。
在執行個體詳情頁,單擊監聽頁簽,單擊添加監聽或在目標監聽操作列單擊修改監聽配置。
根據設定精靈完成監聽配置,直至進入健康檢查設定精靈頁面,健全狀態檢查預設開啟。
單擊高級配置右側的修改,完成以下健全狀態檢查配置。
健全狀態檢查配置
說明
健全狀態檢查協議
選擇健全狀態檢查協議類型。監聽為TCP協議時,健全狀態檢查協議可選TCP或HTTP協議。監聽為UDP協議時,健全狀態檢查協議可選TCP、UDP或HTTP協議。監聽為HTTP/HTTPS協議時,健全狀態檢查協議可選HTTP協議。
TCP模式的健全狀態檢查是基於網路層探測,通過發送SYN握手報文來檢測伺服器連接埠是否存活。
UDP模式的健全狀態檢查通過UDP報文探測來擷取狀態資訊。
HTTP模式的健全狀態檢查是通過發送HEAD或GET請求類比瀏覽器的訪問行為來檢查伺服器應用是否健康。
健全狀態檢查方法
(僅HTTP健全狀態檢查協議支援)
支援HEAD和GET方法,預設使用HEAD方法。
說明若HEAD方法不支援或被禁用,可使用GET方法。
使用GET方法時,Response長度超過8K會被截斷,但不影響健全狀態檢查結果。
健全狀態檢查連接埠
健全狀態檢查服務訪問後端時的探測連接埠。預設使用後端伺服器的連接埠進行健全狀態檢查。
說明如果該監聽配置的後端伺服器組內的後端伺服器的連接埠都不相同,則不需要配置檢查連接埠。負載平衡系統會使用各自的後端伺服器連接埠進行健全狀態檢查。
健全狀態檢查路徑
(僅HTTP健全狀態檢查協議支援)
HTTP健全狀態檢查預設由負載平衡系統向該伺服器應用配置的預設首頁發起HTTP請求。
如果您用來進行健全狀態檢查的頁面並不是應用伺服器的預設首頁,需要指定具體的檢查路徑。
建議使用靜態頁面進行健全狀態檢查。
健全狀態檢查網域名稱(僅HTTP健全狀態檢查協議支援)
配置健全狀態檢查網域名稱後,CLB會將該網域名稱添加到要求標頭的
Host欄位。未佈建網域名時,要求標頭中不會附帶Host欄位。部分應用伺服器會校正
Host欄位,未佈建網域名會導致請求被拒絕,健全狀態檢查失敗。因此伺服器需要校正Host欄位,需配置健全狀態檢查網域名稱以確保健全狀態檢查正常。說明負載平衡在執行健全狀態檢查時,不關注轉寄策略,而是按照監聽器上配置的健全狀態檢查路徑(預設使用根路徑)進行檢查。當您的後端服務需要根據不同的路徑來響應不同的請求時,如果健全狀態檢查仍然按照預設或不匹配的路徑進行,就可能導致健全狀態檢查失敗。您可以根據需要在監聽的轉寄規則中配置健全狀態檢查路徑。
正常狀態代碼
(僅HTTP健全狀態檢查協議支援)
選擇健全狀態檢查正常的HTTP狀態代碼。
預設值為http_2xx和http_3xx。
說明後端伺服器訪問正常但健全狀態檢查異常時,可以在健全狀態檢查配置中添加http_4xx和http_5xx作為正常狀態代碼,避免因CLB執行個體返回
4XX或5XX狀態代碼誤判伺服器狀態。健全狀態檢查響應逾時時間
每次健全狀態檢查響應的最大逾時時間。
如果後端伺服器在指定的時間內沒有正確響應,則判定為健全狀態檢查失敗。
健全狀態檢查間隔時間
進行健全狀態檢查的時間間隔。
負載平衡叢集內所有節點,都會獨立、並行地遵循該屬性對後端伺服器進行健全狀態檢查。由於各節點的檢查時間並不同步,所以,如果從後端某一伺服器上進行單獨統計,會發現來自負載平衡的健全狀態檢查請求在時間上並不會遵循上述時間間隔。
健全狀態檢查健康閾值
雲端服務器從失敗到成功的連續健全狀態檢查成功次數。
健全狀態檢查不健康閾值
雲端服務器從成功到失敗的連續健全狀態檢查失敗次數。
健全狀態檢查請求和健全狀態檢查返回結果(僅UDP健全狀態檢查協議支援)
為UDP監聽配置健全狀態檢查時,您可以在健全狀態檢查請求中輸入請求的內容(例如youraccountID),在健全狀態檢查返回結果中輸入預期的返回結果(例如slb123)。
同時在後端伺服器的應用邏輯中加入相應的健全狀態檢查應答邏輯,如收到youraccountID的請求時,回應slb123。
此時,當負載平衡收到後端伺服器發來的正確響應時,則認為健全狀態檢查成功,否則認為健全狀態檢查失敗。這種方式能最大程度確保UDP健全狀態檢查的可靠性。
單擊下一步直至監聽配置完成。
查看健全狀態檢查狀態
在頂部功能表列,選擇執行個體所屬的地區。
在實例管理頁面,找到目標執行個體,單擊執行個體ID。
在執行個體詳情頁,單擊監聽頁簽,查看監聽的健全狀態檢查狀態。
健全狀態檢查主要包括以下狀態:
初始化:表示健全狀態檢查後端伺服器列表初始化中。
正常:表示不存在異常狀態的後端伺服器。
異常:表示存在異常狀態的後端伺服器。
未開啟:表示健全狀態檢查未開啟。
單擊對應監聽後的異常或者初始化,可以查看監聽健全狀態檢查為異常/初始化的監聽/轉寄策略、伺服器組、雲端服務器/連接埠、健康狀態和異常原因。
關閉健全狀態檢查
高頻率的健全狀態檢查可能影響業務訪問。建議通過降低檢查頻率、增大間隔等方式減少影響,但不建議關閉健全狀態檢查以保障業務持續可用。
您可以關閉健全狀態檢查功能,但關閉健全狀態檢查後,當後端某個ECS出現異常時,CLB還是會把請求轉寄到該異常的ECS上,造成部分業務不可訪問。因此,建議一般情況下不要關閉健全狀態檢查。
在頂部功能表列,選擇執行個體所屬的地區。
在實例管理頁面,找到目標執行個體並單擊執行個體ID。
在執行個體詳情頁,單擊監聽頁簽,單擊添加監聽或在目標監聽操作列單擊修改監聽配置。
根據設定精靈完成監聽配置,直至進入健康檢查設定精靈頁面。
關閉健全狀態檢查開關,單擊下一步並提交確認。
相關文檔
如果您不瞭解CLB健全狀態檢查機制,您可參考CLB健全狀態檢查。
如果您遇到CLB健全狀態檢查相關問題,您可參考CLB健全狀態檢查FAQ進行問題定位處理。
您可通過CLB提供的健全狀態檢查日誌功能,分析伺服器健全狀態檢查日誌資料,詳情可參考儲存和下載健全狀態檢查日誌。