Partition架构

ops/2024/11/2 4:23:18/

优质博文: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】增加监控和库存不足告警通知,除了自动资源调配,对活动上线后进行机房间的库存情况实时观测和实时手动调配;


http://www.ppmy.cn/ops/130324.html

相关文章

C++ 复习记录(个人记录)

1、构造函数(constructor)是什么 答:类里面定义一个函数, 和类名一样, 这样在我们生成一个对象之后,就会默认调用这个函数,初始化这个类。 子类B继承父类A的情况, 当你调用子类的对…

vue3 Teleport的说明及用法

1、定义&#xff1a; https://cn.vuejs.org/guide/built-ins/teleport#basic-usage <Teleport> 是一个内置组件&#xff0c;它可以将一个组件内部的一部分模板“传送”到该组件的 DOM 结构外层的位置去。 2、基本用法&#xff1a;​ 有时我们可能会遇到这样的场景&am…

STM32HAL库定时器无法进入中断问题

HAL_TIM_Base_Start(): 该函数启动定时器但不会开启中断。它适用于不需要中断处理的定时器配置&#xff0c;仅用于定时器计数功能。使用它时&#xff0c;定时器会启动并在设置的周期内计数&#xff0c;但中断标志不会触发 CPU 中断。 HAL_TIM_Base_Start_IT(): 该函数不仅启动定…

在React项目中使用SpreadJS实现在线Excel表格功能

在React项目中使用SpreadJS实现在线Excel表格功能&#xff0c;可以让你的应用程序具备强大的表格编辑能力。以下是使用React和SpreadJS来创建一个在线Excel表格的基本步骤&#xff1a; 1. 初始化React项目 如果你还没有React项目&#xff0c;可以使用create-react-app脚手架快…

某小型CMS漏洞复现审计

SQL注入 漏洞复现&#xff1a; 登陆后台&#xff0c;点击页面删除按钮&#xff0c;抓包&#xff1a; rid参数存在sql注入&#xff0c;放入sqlmap检测成功&#xff1a; 代码分析&#xff1a; CtrlShiftF检索路由&#xff1a; 定位具体代码&#xff0c;为删除功能&#xff1a; …

OKHTTP断点续传

OKHTTP断点续传 文章目录 OKHTTP断点续传HTTP断点续传知识点RangeContent RangeEtag&If-Range&#xff08;文件唯一标志&#xff09; OKHTTP断点下载OKHTTP 简单短断点下载代码示例 Android 断点续传一直是面试的高频问点&#xff0c;这里从HTTP断点续传知识和Android续传思…

嵌入式web开发:boa、lighttpd

嵌入式web开发&#xff1a;boa、lighttpd https://blog.csdn.net/m0_37105371/category_10937068.html BOA服务器的移植-CSDN博客 【第1部分&#xff1a;boa服务器部署到ubuntu里】 http://www.boa.org/boa-0.94.13.tar.gz tar xvzf boa-0.94.13.tar.gz cd boa-0.94.13/src/ a…

Spring Boot实战:构建校园社团信息管理系统

1系统概述 1.1 研究背景 随着计算机技术的发展以及计算机网络的逐渐普及&#xff0c;互联网成为人们查找信息的重要场所&#xff0c;二十一世纪是信息的时代&#xff0c;所以信息的管理显得特别重要。因此&#xff0c;使用计算机来管理校园社团信息管理系统的相关信息成为必然。…