《2019年平安云數據庫服務系統架構設計.pdf》由會員分享,可在線閱讀,更多相關《2019年平安云數據庫服務系統架構設計.pdf(33頁珍藏版)》請在三個皮匠報告上搜索。
1、云數據庫服務云數據庫服務平臺云數據庫服務資源管控引擎云數據庫服務系統架構對云數據庫服務的思考云數據庫 VS 云數據庫服務用戶對云數據庫服務的需求是什么?能在云平臺上購買到需要的云數據庫及其管理服務產品服務操作便捷、成功率高需要提供豐富的云數據庫產品類型及其管理服務對云數據庫服務的思考需求分析一個靈活的、可擴展的、按需服務的平臺,以自助服務和便捷管理為導向,對云數據庫資源進行管控。云數據庫服務云數據庫服務平臺云數據庫服務資源管控引擎云數據庫服務系統架構微服務微服務微服務微服務數據庫數據庫API Gateway前端UI瀏覽器微服務微服務微服務第三方應用第三方應用服務治理平臺微服務集群架構WiseA
2、PM神兵&CaaS部署服務拆分服務邊界產品服務產品服務產品服務產品服務(面向租戶)產品服務(面向管理)管理服務管理服務管理服務公共服務共享數據公共服務公共服務公共服務公共服務公共服務批處理任務批處理任務用戶公共服務系統邊界平安云門戶網關云數據庫服務系統公共服務公共服務公共服務公共服務產品服務產品服務產品服務產品服務微服務治理組件外部系統外部系統云數據庫管理平臺外部系統系統間調用系統內調用外部系統服務拆分平安云門戶網關注冊中心緩存配置中心RDS-Mysql調度服務中間件服務消息發送服務容器編排服務監控服務日志服務報表服務安全中心云數據庫管理平臺RDS-PostgreSQLDDSRedisTiDB
3、DRDSDMSDTS產品服務公共服務應用同城雙活和異地容災平安云門戶CXPCXPDBaaSDBaaSDBaaSDBaaSBGPBGPDCILVXLVX平安云門戶dbaas.pacloud.pubdbaas.pacloud.pubCXPDBaaSDBaaS平安云門戶dbaas.pacloud.pub生產AZ同城AZ遠程AZ異地容災啟用產品服務調度服務產品服務產品服務調度引擎模塊一模塊二模塊三原子服務原子服務原子服務原子服務原子服務動態配置管理降低開發復雜度調度服務減少耦合公共服務產品服務底層服務系統間調用系統內調用其他公共服務調度服務流程控制配置化管理編排引擎調度服務滿足各種執行順序的需求編排配
4、置化,配置模塊化執行編排,對編排執行狀態可控降低開發難度盡量復用代碼流程控制核心思想開始選擇ABDFEC支持分流結束開始選擇ABD結束EC支持串行或并行異常支持續作開始選擇ABDFEC結束支持合流任務:創建DB實例配置化管理請求編排引擎編排一編排二編排N任務一任務二任務三步驟一步驟三步驟N步驟N+1步驟二任務四任務Nn步驟支持http、sql等操作n步驟支持http全局串行n步驟支持http請求返回碼判斷n步驟支持http異步輪詢請求結果n步驟支持所有步驟超時配置三種模塊:編排、任務、步驟所有模塊可以重復使用流程控制和編排都采用配置化管理n功能模塊化n開發復雜度低n代碼復用度高步驟:建卷編排:
5、創建DB主從實例編排引擎編排引擎編排一任務一步驟一步驟三步驟N步驟N+1步驟二任務二任務N異常觸發告警處理問題步驟四云管理平臺編排引擎編排N編排日志生成執行編排日志自動修復成功自動修復失敗執行斷點續作n 跳過當前步驟,繼續執行后續步驟n 從當前步驟繼續執行云數據庫服務云數據庫服務平臺云數據庫服務資源管控引擎云數據庫服務系統架構資源管控引擎數據模型n數據模型,資源實體化,資源對象模型,資源管理的基礎n資源分配引擎=數據模型+引擎+資源分配數據n操作互斥引擎=數據模型+引擎+資源狀態數據操作互斥引擎資源分配引擎數據建模l計算l存儲l網絡l數據庫l中間件l資源分配引擎DB資源分配引擎集群資源分配引擎
6、計算資源分配引擎計算云數據庫主、從實例的計算節點等計算產品類型、環境、角色、投產狀態、網段類型等計算資源分配創建/擴容獲取全局鎖預寫配置釋放鎖,創建/擴容資源分配引擎資源滿足資源不滿足釋放鎖提示用戶避免資源超分計算資源分配計算資源分配引擎平臺POC、SIT、UAT環境怎么提高資源利用率?資源分配去哪里?計算資源分配引擎計算資源分配引擎伸縮引擎分布引擎普通伸縮災備伸縮均勻分布集中分布混合分布伸縮引擎(普通伸縮)伸縮因子資源類型操作類型CPU內存新增擴容場景:資源分配率高,實際使用率低。計算節點(CPU)Total:40CCPU_擴容_伸縮因子=1.2CPU_新增_伸縮因子=1Required:3
7、0C剩余能新增容量=40C*1-30C=10C假設Used:5C剩余能擴容容量=40C*1.2-30C=18C需求一:新增分配16C資源需求二:已有資源擴容16C資源計算需求一:可容納新增容量10C需求容量16C,該節點滿足例如:平臺測試環境伸縮引擎(災備伸縮)場景:條件一:災備實例的資源消耗遠遠小于生產實例。條件二:多個可用區/地域的災備實例可能在同一節點,容災可以僅基于單可用區/地域故障場景的資源容量評估。(災備)Y節點(CPU)說明:災備伸縮和普通伸縮是疊加關系。RG1-AZ2(主)X節點(CPU)Total:40CRG1-AZ1Total:40C(主)Z節點(CPU)RG2-AZ1To
8、tal:40CRequired:20CRequired:30CRequired:20CY節點 新增_CPU_伸縮因子=1RG1-AZ1的X節點已分配30C,其同城從實例分配在RG1-AZ2的Y節點。假設計算需求:RG2-AZ1的Z節點已分配20C,其遠程容災實例計算能否放在Y節點??扇菁{RG1同城災備資源=40C*1-30C=10C可容納RG2遠程災備資源=40C*1-0C=40C可容納RG2新增容量40C需求容量20C,該節點滿足Required:30C例如:平臺測試環境災備資源分布引擎(資源集群)資源邏輯集群l多個底層資源環境相同的節點可以組成一個邏輯集群l一個節點可以屬于多個邏輯集群資源
9、物理集群l多個底層資源環境相同的節點可以組成一個物理集群l一個節點只能屬于一個物理集群NodeANodeBNodeC邏輯集群X邏輯集群YNodeANodeBNodeCNodeD物理集群X物理集群Y分布引擎(均勻分布)算法:選擇剩余資源最多的資源池優先分配A資源池(CPU)Total:1000CRequired:500CB資源池(CPU)Total:1000CRequired:400CB資源池剩余容量600CA資源池剩余容量500Cl資源分布均衡l資源利用率相對其他算法較低分布特點l有幾率出現無法滿足大容量需求需求:新增100C資源B資源池滿足需求,資源分配給B資源池應用場景l計算資源可用區選擇
10、計算分布引擎(集中分布)算法:選擇剩余資源最少且滿足需求的資源池優先分配(優先填滿)A資源池(CPU)Total:1000CRequired:800CB資源池(CPU)Total:1000CRequired:400C需求二:新增300C資源分布特點需求一:新增100C資源A資源池滿足需求一,資源分配給A資源池A資源池剩余容量200C需求一容量100CA資源池剩余容量200C需求二容量300C計算B資源池滿足需求二,資源分配給B資源池l資源分布集中l資源利用率相對其他算法較高l集中資源池故障影響相對較大應用場景l計算資源節點選擇分布引擎(混合分布)算法:部分資源池均勻分布,部分資源池集中分布,均
11、勻分布優先A資源池(CPU)Total:1000CRequired:200CB資源池(CPU)Total:1000CRequired:400Cl大部分資源池均勻分布,極少數資源池集中分布l集中分布能滿足大容量套餐的需求分布特點l均勻分布能降低故障影響范圍C資源池(CPU)Total:1000C均勻分布集中分布需求:新增100C資源,根據優先均勻分布原則,A資源池滿足需求:新增900C資源,均勻分布資源池不滿足,集中分布C資源池滿足應用場景l計算資源集群選擇操作互斥引擎(鎖機制)引擎A對象B對象C對象D對象X鎖S鎖兼容不兼容加鎖執行操作停止操作服務請求操作對象規則釋放鎖操作互斥引擎(狀態機制)引
12、擎操作請求維護中|資源異常非維護中&資源正常不可操作可操作資源資源資源agentagentagent引擎引擎自頂向下自底向上云管理平臺資源維護狀態判斷資源狀態管理云數據庫服務云數據庫服務平臺云數據庫服務資源管控引擎云數據庫服務系統架構平安云數據庫服務系統架構平安云平臺RDS消息服務運維管理工具數據庫中間件平臺中間件智能監控&日志云CI/CD備份服務中間件服務容器編排服務調度服務操作互斥引擎CMDBRDS-ServiceDRDS-ServiceDDS-ServiceRedis-ServiceTiDB-Service資源分配引擎平安云數據庫管理平臺計算(容器)安全存儲網絡DRDSDDSRedisTiDB平安云數據庫產品