Partition架构

优质博文:IT-BLOG-CN

Partition架构

【1】结构: Region至少3ZoneZone内至少两个PartitionPartition内至少1K8S Member Cluster

【2】故障域: 故障域及核心链路至少Zone内收敛,甚至Partition收敛。故障域之间不应该有交互(状态流等);

【3】变更规范: 不同时变更多个Zone,甚至不同时变更多个Partition

【4】FederationRegional调度及控制面,负责Region内资源、容量调度;

【5】应用部署: 应用副本根据可用性级别分布在多个Zone内的多个Partition

故障域隔离FederatedHPA 场景梳理并分级,匹配不同故障域隔离要求。

【1】应用扩容链路: 高频+核心,Partition(Cluster)故障域内收敛,单个Partition故障不影响其他Partition正常扩容;

【2】HPA参数变更链路: 低频+非核心,Region故障域内收敛,故障会影响整个RegionHPA发布变更;

【3】ClusterRebalance链路: 低频+非核心,Region故障域内收敛,故障会影响整个Region的容量Rebalance

方案:

【1】HPA系统组件在Partition(Cluster)内完整部署并封闭,扩缩容链路与其它Partition完全隔离;

【2】FederatedHPA只负责Partition/Zone间的Rebalance协调与变更分发;

效果: 单个AZPartitionFederation的故障不影响其它AZPartition的应用扩缩容。

应用部署的Group(Rollout)Region级别。由Federation控制与分发到多个Zone内的PartitionGroup不同时变更多个Zone

容量调度问题

【1】流量上涨,Zone A扩容成功率下降(其他系统正在扩容等),需要降低Zone A流量比例,扩容成功率恢复后,需要恢复流量比例关系;

【2】Zone流量比例发生倾斜,如果单个Zone故障,ZoneCapacity会比非倾斜时高,需要主动触发提前扩容Node;

【3】混合云场景,私有云Zone容量不足,将部分应用容量公有云Zone倾斜,过峰后,因成本因素,恢复原有状态;

方案:

【1】Autopilot监听各Zone的资源用量、容量、扩容成功率以及SRE运营规则;

【2】Autopilot生成流量调度结果,并下发调度;

【3】HPA感知负载变化进行扩缩;

【4】Autopilot根据当前各Zone用量更新Capacity,并指导提前Node扩容;

多机房库存问题

用户的请求保证在同一机房内完成闭环,但部分场景并不适合划分单元化,比如多机房库存扣减问题。面对多机房库存扣减问题目前的策略如下:

【1】业务扣库存逻辑不调整,还是同步扣库存,但事先根据流量分配好每个机房库存;

【2】增加库存调配机制,当库存不足时触发库存调配,从有多余库存的机房进行调配;

【3】增加监控和库存不足告警通知,除了自动资源调配,对活动上线后进行机房间的库存情况实时观测和实时手动调配;

相关推荐
neoooo7 小时前
🍃Spring Boot 多模块项目中 Parent / BOM / Starter 的正确分工
java·后端·架构
菜鸟的迷茫7 小时前
为了防雪崩加了限流,结果入口先挂了
java·后端·架构
No芒柠Exception7 小时前
从开发到上线的CI/CD 完整流程
后端·面试·架构
攀登的牵牛花8 小时前
前端向架构突围系列 - 框架设计(四):依赖倒置原则(DIP)
前端·架构
lizhongxuan8 小时前
Manus: 上下文工程的最佳实践
算法·架构
小酒星小杜8 小时前
在AI时代,技术人应该每天都要花两小时来构建一个自身的构建系统-Input篇
前端·程序员·架构
幻云20108 小时前
Next.js指南:从入门到精通
开发语言·javascript·人工智能·python·架构
直率阿明8 小时前
从L0-L4五层到云-边-端三层:工业控制架构的演进与重构
重构·架构·工业4.0·isa95
信创天地9 小时前
核心系统去 “O” 攻坚:信创数据库迁移的双轨运行与数据一致性保障方案
java·大数据·数据库·金融·架构·政务
李少兄9 小时前
B/S 架构:现代 Web 应用的核心架构模式
前端·架构·b/s