雲架構下的高可用設計

高可用設計


 負載均衡

  • 冗餘設計:建立服務器羣集,通過冗餘的方式可以避免架構中出現單點故障。

  • 負載分發:有多個服務器可以響應同種請求時,引入負載均衡可以將請求合理分配到不同

    服務器中。

  • 容錯機制:服務器運行異常時,並將訪問請求轉移到其它可以正常工作的服務器上的服務

    器上,從而提高服務器組的可靠性。

 網絡基礎

• 公網接口的高可用網絡設計

• 兩地三中心的高可用網絡設計

 彈性伸縮

  • 可擴展性:根據在特定時間發生的負載來增加或減少資源。

  • 容錯機制:有服務器出現故障時,彈性伸縮組會自動複製出健康的實例,以替換狀態異常

    的實例

 無服務器雲函數:只需執行代碼

  • 可擴展性:在無服務器環境中,系統根據當前的負載自動擴展應用程序以滿足用戶需求的 能力。

  • 容錯機制:自動地在地域內的多個可用區部署,提供極高的容錯性

 

負載均衡是啥?

負載均衡由哪些模塊構成

應用場景及特性?

 CLB的性能
 負載均衡單集羣提供超過 1.2 億 的最大連接數,輕鬆應對億級 Web 業務訪問量。  負載均衡單集羣可處理峯值 40Gb/s 的流量,每秒處理包量(PPS)可達 600 萬。

 

 四層負載均衡

  1. CLB最早實現的方案,也是作爲一款負載均衡產品必備的功能。基本原理將一系列內部IP映射爲一個虛擬IP(VIP),每次 TCP連接請求動態使用其中一個內部IP地址。
  2.  四層的負載均衡,就是通過三層的IP地址(VIP),然後加四層的端口號,來決定哪些流量需要做負載均衡,對需要處理的流量進行NAT處理,轉發至後臺服務器。
  3. 典型架構

• 後端服務器綁定到監聽器

• 監聽器設置轉發端口和權重

• 監聽器設置會話保持,健康檢查

 七層負載均衡

  1.  在四層的基礎上,再考慮應用層的特徵(如HTTP頭部、URL等),通過檢查流經的HTTP報頭, 根據報頭內的信息來執行負載均衡任務。
  2. 比如同一個Web服務器的負載均衡,除了根據VIP加80端口辨別是否需要處理的流量,還可根據七層的URL、瀏覽器類別、語言來決定是否要進行負載均衡。
  3. 典型架構

• 後端服務器綁定到轉發組
• 轉發組設置轉發端口和權重
• 轉發組設置會話保持、健康檢查
• 支持多域名轉發功能

健康檢查 可能因爲4層檢查,關閉了一些服務,導致7層獲取數據保存,顯示會話被關閉。

ping linux 使用ICMP協議,windows如果併發會話數過多可能會拒絕,可能導致服務無法進行。

 

雲解析:是最簡單的負載均衡實現,通過DNS進行兩個IP的自動輪詢,付費版支持4個IP。

案例:

可拓展的雲服務

AS彈性伸縮

  • 彈性伸縮(Auto Scaling,AS)爲您提供高效管理計算資源的策略。可設定時間週期性地執行管理策略或創建實時監控策略,來管理 CVM 實例數量。在需求高峯時,彈性伸縮自動增加 CVM 實例數量,以保證性能不受影響;當需求較低時,則會減少 CVM 實例數量以降 低成本。彈性伸縮策略讓集羣保持恰到好處的實例數量。

  • 彈性伸縮只能對CVM使用。

應用場景:

  •  業務波動超過應用負載
  •  電商大促、限時秒殺活動
  •  在線遊戲,晚上20:00-24:00的使用高峯  視頻網站、播放熱門直播

 業務突增時怎麼快速增加資源保證應用正常運轉?
 在業務低谷怎麼快速回收資源,降低成本?
 部分應用節點故障時怎麼保證應用可用且保持業務負載能力?

彈性伸縮 :自動按需擴展,自動替換故障節點

伸縮策略 與拓展方式的結合:

定時:可以在業務高峯低谷時,進行定時。 結合自動擴展

告警:設定閾值,進行預警,建議預先進行。常結合手動拓展。

無狀態服務
 無狀態服務(stateless service)對單次請求的處理,不依賴其他請求,

• 也就是說,處理一次請求所需的全部信息,要麼都包含在這個請求裏

• 要麼可以從外部獲取到(比如說數據庫),服務器本身不存儲任何信息
 有狀態服務(stateful service)則相反,它會在自身保存一些數據,先後的請求是有關聯的

 無狀態服務器具有以下特點:

  •  並不保存客戶請求的數據(狀態)
  •  客戶在請求時需要攜帶額外的狀態數據
  •  無狀態服務器更加健壯,重啓服務器不會丟失狀態信息,這使得維護和擴容更加簡單

 

 

SCF 無服務器雲函數  也是服務解耦的一部分。

無服務器雲函數 SCF 簡介
無服務器雲函數(Serverless Cloud Function,SCF)是騰訊云爲企業和開發者們提供的無服務器執行環境。SCF 是實時文件處理和數據處理等場景下理想的計算平臺。

 無服務器雲函數

  •   雲函數更適合於支持微服務架構業務場景,由事件觸發的應用。以圖片多規格壓縮服務爲例, 該服務在用戶上傳圖片至COS時,自動將原始圖片壓縮成適配手機、平板、電腦等多種大小 的規格。如利用雲函數實現該服務,用戶只需創建函數,定義函數觸發條件爲“圖片上傳”, 在線編輯或使用IDE完成代碼編寫後上傳,服務即構建完成。用戶上傳圖片時,自動調用定義 的函數完成圖片的多規格壓縮,雲函數平臺根據上傳併發量自動擴縮容函數實例,並最終按照 實際調用消耗計費。

  • 雲函數的高可用:如果某個可用區因災害或電力故障等導致癱瘓,無服務器雲函數 SCF 會自 動地選擇其他可用區的基礎設施來運行,免除單可用區運行的故障風險。由事件觸發的工作負 載可以使用雲函數來實現,利用不同雲服務滿足不同的業務場景和業務需求,使得服務架構更 加健壯。

邊緣函數:

將無服務器雲函數調度到自有設備上按需運行提供消息能力,實現雲 - 端的消息交互、斷網時的緩存

  • 運行在本地,利用本地閒置資源計算

  • 在自有的設備上運行應用,管理、轉 發和緩存消息,實現邊緣設備與雲的 結合

  • 靠近數據源,快速響應計算

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章