本文中含有需要您注意的重要提示信息,忽略該信息可能對您的業務造成影響,請務必仔細閱讀。
為確保ALB后端服務器的業務可用性,您可以通過為ALB服務器組配置健康檢查來檢查服務器組的運行狀況,以避免后端服務器異常對業務的影響,并提升業務可靠性。本文為您介紹如何創建、編輯和刪除健康檢查等操作。
背景信息
ALB支持基于每個服務器組定義ALB實例的健康檢查配置。每個服務器組默認開啟健康檢查。
在開啟健康檢查時,默認情況下,ALB會自動將客戶端請求路由至健康檢查狀態正常的服務器,并將持續對該服務器組的所有后端服務器的運行狀況進行監控。服務器必須通過連續n次的健康檢查才會被視為正常(n為配置的健康檢查健康閾值,多次健康檢查是為了避免網絡抖動的影響)。
當某臺后端服務器健康檢查出現異常時,ALB會自動將新的請求分發到其他健康檢查正常的后端服務器。
當該服務器恢復正常運行時,ALB會將其自動恢復到負載均衡服務中。
健康檢查為短連接,完成健康檢查后連接將關閉。
如果后端服務器權重設置為0,該服務器不會參與健康檢查。
如果同一個服務器組中僅包含健康檢查異常的服務器時,ALB仍會嘗試根據調度算法將請求路由至這些服務器,而不考慮這些服務器的運行狀況,以最大可能避免您的業務受損。更多信息,請參見同一個服務器組的所有后端服務器健康檢查均異常時,ALB如何轉發請求?。
HTTPS健康檢查使用限制
標準版及以上版本的ALB實例支持配置HTTPS健康檢查協議,基礎版ALB實例不支持。
創建健康檢查
方式一:通過健康檢查頁面
- 登錄應用型負載均衡ALB控制臺。
在頂部菜單欄處,選擇健康檢查所屬的地域。
在左側導航欄,選擇 。
在健康檢查頁面,單擊創建健康檢查。
在創建健康檢查對話框,完成以下參數的配置,然后單擊創建。
在配置健康檢查過程中,各選項建議您使用默認值,避免因健康檢查失敗引起的服務器頻繁切換而對系統可用性造成沖擊。
健康檢查配置
說明
健康檢查名稱
輸入健康檢查名稱。
協議
選擇健康檢查協議類型。
HTTP:通過發送HEAD或GET請求模擬瀏覽器的訪問行為來檢查服務器應用是否健康。
HTTPS:通過發送HEAD或GET請求模擬瀏覽器的訪問行為來檢查服務器應用是否健康。相關限制,請參見HTTPS健康檢查使用限制。
TCP:通過發送SYN握手報文來檢測服務器端口是否存活。
GRPC:通過發送POST或GET請求來檢查服務器應用是否健康。
健康檢查方法
選擇一種健康檢查方法。
HEAD:HTTP監聽健康檢查默認采用HEAD方法。請確保您的后端服務器支持HEAD請求。如果您的后端應用服務器不支持HEAD方法或HEAD方法被禁用,則可能會出現健康檢查失敗,此時可以使用GET方法來進行健康檢查。
POST:GRPC監聽健康檢查默認采用POST方法。請確保您的后端服務器支持POST請求。如果您的后端應用服務器不支持POST方法或POST方法被禁用,則可能會出現健康檢查失敗,此時可以使用GET方法來進行健康檢查。
GET:如果響應報文長度超過8K,會被截斷,但不會影響健康檢查結果的判定。
說明此參數僅在健康檢查協議為HTTP、HTTPS或GRPC時生效。
HTTP和HTTPS健康檢查協議,支持選擇HEAD或GET健康檢查方法。GRPC健康檢查協議,支持選擇POST或GET健康檢查方法。
健康檢查HTTP協議版本
選擇一個HTTP協議版本:HTTP1.0或HTTP1.1。
說明此參數僅在健康檢查協議為HTTP或HTTPS時生效。
端口
輸入健康檢查服務訪問后端時的探測端口。
默認為空,表示使用后端服務器的端口進行健康檢查。如果您需要指定一個特定的端口進行健康檢查,請輸入端口,取值范圍為1~65535,僅能輸入一個端口號。
路徑
輸入健康檢查頁面的URL,建議對靜態頁面進行檢查。
HTTP健康檢查默認由負載均衡系統使用后端ECS內網IP地址向該服務器應用配置的缺省首頁發起HTTP Head請求。如果您用來進行健康檢查的頁面并不是應用服務器的缺省首頁,需要指定具體的檢查路徑。
域名
輸入健康檢查的域名。
默認使用后端服務器的內網IP地址作為健康檢查的域名。如果您需要指定一個域名,請輸入域名名稱。
健康狀態返回碼
選擇健康檢查正常的狀態碼,僅當ALB的探測請求成功且返回指定狀態碼時認為該后端服務器狀態正常。
當健康檢查協議為HTTP或HTTPS協議時,可以選擇http_2xx、 http_3xx、http_4xx和http_5xx。默認選擇http_2xx和http_3xx。
當健康檢查協議為GRPC協議時,狀態碼范圍:0~99。支持范圍輸入,最多支持20個范圍值,多個范圍值使用半角逗號(,)隔開。
說明此參數僅在健康檢查協議為HTTP、HTTPS或GRPC時生效。
健康檢查響應超時時間
接收健康檢查的響應需要等待的時間。如果后端ECS在指定的時間內沒有返回正確響應,則判定為健康檢查失敗。
取值范圍:1~300秒,默認值為5秒。
健康檢查間隔時間
前后兩次進行健康檢查的時間間隔。
取值范圍:1~50秒,默認值為2秒。
健康檢查健康閾值
健康檢查連續成功多少次后,將后端服務器的健康檢查狀態由失敗判定為成功的次數。
取值范圍:2~10,默認為3次。
健康檢查不健康閾值
健康檢查連續失敗多少次后,將后端服務器的健康檢查狀態由成功判定為失敗的次數。
取值范圍:2~10,默認為3次。
標簽
設置標簽鍵和標簽值。
設置標簽后,您可以在健康檢查頁面使用標簽篩選健康檢查。
健康檢查創建完成后,您可以在創建ALB服務器組時,在健康檢查配置中選擇已創建的健康檢查。更多信息,請參見創建服務器組。
方式二:通過創建服務器組頁面
在創建服務器組時,將新設置的健康檢查配置保存為健康檢查模板,方便下次快速復制使用。
- 登錄應用型負載均衡ALB控制臺。
在頂部菜單欄處,選擇后端服務器組所屬的地域。
在左側導航欄,選擇 。
在服務器組頁面,單擊創建服務器組。
在彈出的創建服務器組對話框中,完成以下配置,然后單擊創建。
此處僅列出與本文強相關的配置項,其余參數的配置請參見創建和管理服務器組。
單擊健康檢查配置右側的編輯,完成健康檢查參數的配置后,選中將新的配置保存為健康檢查,方便下次快速復制使用,并輸入健康檢查名稱。
可選:您可以選擇 ,在健康檢查頁面查看保存的健康檢查模板。
編輯健康檢查
方式一:通過健康檢查頁面
- 登錄應用型負載均衡ALB控制臺。
在頂部菜單欄處,選擇健康檢查所屬的地域。
在左側導航欄,選擇 。
在健康檢查頁面,找到目標健康檢查,在操作列單擊編輯。
在彈出的編輯健康檢查對話框中,根據業務需要修改健康檢查參數配置,然后單擊保存。
警告關閉健康檢查后,ALB不再檢查后端服務器,一旦某臺后端服務器發生故障,則無法實現訪問流量自動切換至其他正常的后端服務器。
如延長健康檢查的間隔時間,后端服務器出現故障時,ALB發現故障后端服務器的時間也會變長。
方式二:通過服務器組詳情頁
- 登錄應用型負載均衡ALB控制臺。
在頂部菜單欄處,選擇后端服務器組所屬的地域。
在左側導航欄,選擇 。
在服務器組頁面,找到目標服務器組,然后在操作列單擊編輯健康檢查。
在彈出的編輯健康檢查對話框中,開啟或關閉健康檢查,或單擊健康檢查配置右側的編輯,修改健康檢查參數。
警告關閉健康檢查后,ALB不再檢查后端服務器,一旦某臺后端服務器發生故障,則無法實現訪問流量自動切換至其他正常的后端服務器。
如延長健康檢查的間隔時間,后端服務器出現故障時,ALB發現故障后端服務器的時間也會變長。
查看健康檢查狀態
若您的ALB實例已配置監聽,且ALB服務器組已開啟健康檢查,您可以在監聽頁簽查看后端服務器的健康檢查狀態。
- 登錄應用型負載均衡ALB控制臺。
在頂部菜單欄,選擇ALB實例的所屬地域。
在ALB實例頁面,找到目標ALB實例,單擊實例ID。
單擊監聽頁簽,在監聽列表的健康檢查狀態列查看后端服務器的健康檢查狀態。
刪除健康檢查
- 登錄應用型負載均衡ALB控制臺。
在頂部菜單欄處,選擇健康檢查所屬的地域。
在左側導航欄,選擇 。
在健康檢查頁面,找到目標健康檢查,在操作列單擊刪除。
在彈出的刪除對話框中,確認提示信息,然后單擊確定。