您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[腾讯]:全生命周期高可用,打造应用管理的稳定底座与灵活引擎 - 发现报告
当前位置:首页/其他报告/报告详情/

全生命周期高可用,打造应用管理的稳定底座与灵活引擎

2024-09-10腾讯c***
全生命周期高可用,打造应用管理的稳定底座与灵活引擎

应用管理的稳定底座与灵活引擎 全生命周期高可用的云原生应用平台 TKEAppFabric 主讲人:何鹏飞 开发现状:面向集群管理应用,稳定性和灵活性亟待提升 对集群资源敏感,容灾难,利用率低 •应用创建时,难以控制资源在不同物理位置的分布比例,不满足容灾要求 •应用维护过程中,需要随着集群资源的动态变化,不断地被动调整应用部署方式 •集群利用率低,升级、下线等操作,上层用户有感 应用面向多集群部署 Failed Succeeded Succeeded Cluster1 Cluster2 Cluster3 广州三区 广州四区 广州七区 HPA 70&utilization 80%utilization HPA 95%utilization HPA 应用资源分散,管理效率低 •管理大量K8S资源,既要熟悉K8S又要熟悉多集群组件,使用门 槛高 •资源间没有归属关系,相互关联,缺乏统一的应用状态、资源视图 应用是一系列K8S资源对象的集合 Service Configmap HPA ... Workload Localization Globalization Subscription 应用管理的稳定性和灵活性亟待提升 面向多集群工具管理K8S资源对象 面向可用区管理应用 DeclarativeApplicationOrchestration Fleet Fleet cluster1(zone1/2)cluster2(zone1/2)cluster3(zone2/3) cluster1(zone1/2)cluster2(zone1/2)cluster3(zone2/3) 面向多集群 •集群容量敏感,资源利用率高 •集群拓扑敏感,可以高可用部署 面向K8S资源 •管理大量K8S资源对象,研发运维效率低 面向可用区 •集群容量敏感,资源利用率高 •集群拓扑敏感,可以高可用部署 面向K8S资源 •只管理应用资源对象,面向更易于理解的可用区部署,研发运维效率高 regionMulti-AZratio Wheretodeploy Multi-ClusterSchedulingwithClusternet User User Multi-ClusterSchedulingwithClusternet 管理K8S资源对象 cluster1(zone1/2) cluster2(zone1/2) User cluster3(zone2/3) 面向单集群 •集群容量敏感,资源利用率低 •集群拓扑敏感,难以高可用部署 面向K8S资源 •管理大量K8S资源对象,研发运维效率低 行业做法:如何提升应用管理的稳定性和灵活性 service worklaod configmap HPA Whattodeploy workload service config HPA service worklaod configmap HPA service worklaod configmap HPA service worklaod configmap HPA service worklaod configmap HPA service worklaod configmap HPA service worklaod configmap HPA service worklaod configmap HPA service worklaod configmap HPA TKEAppFabric:应用管理的稳定底座与灵活引擎 面向可用区部署更符合用户需求的资源分布模式 面向应用声明式编排更符合用户习惯的应用管理模式 指定可用区 等比例 可用区个数可扩展 指定比例 模糊可用区 按容量 Pod数量可容忍 广州三区 广州四区 广州七区 Resourcepool Resourcepool Resourcepool Cluster1Cluster2Cluster3 Cluster4 Cluster5 Cluster6 Application component Scaling Config Traffic Alert service service service Container zone1(cluster1) zone2(cluster2) zone3(cluster3) worklaod configmap HPA worklaod configmap HPA worklaod configmap HPA 优势 •更符合用户资源位置要求 •应用不直接感知集群,集群维护用户无感 •集群资源共用,集群利用率更高 特色 •按可用区拓扑调度,支持单集群多zone模式 •支持设定副本在各个可用区的分布比例 •精细化的资源容量感知能力 •支持设置容忍度,容错率更好 优势 •应用视角,更特近应用维护场景,易于观 测、运营 •声明式编排,符合云原生规范 •仅需学习应用如何编排,使用门槛低 特色 •多可用区部署、分布、扩缩容、流量治理 •支持变更分批、暂停、回滚,确保不影响线上服务 •提供应用级的状态汇聚、事件汇聚、拓扑感知,可管理性更强 资源和容量管理 标准化和批量管理 特征分组 接入与维护 舰队管理 稳定性提升 应用标准化 流量管理 多可用区容灾 多重集群类型支持 插件标准化 资源重平衡 差异化资源分发 TKEAppFabric:全生命周期高可用的云原生应用平台 服务应用高可用 •全生命周期的应用高可用能力 •应用视角的运维管理 •基于最佳实践的应用稳定性增强 强大的多集群引擎 •统一的集群接入和舰队管理 •集群标准化和基于特征的分组 •资源差异化分发,容量再均衡 拓扑可视化 增强的工作负载 巡检&自愈 资源编排模板 部署策略模板 参数规范 多集群四/七层接入 就近访问 故障切换 可用区动态选择 指定可用区 多可用区灰度发布 挑战 •饱受资源短缺困扰:应用面向集群部署,由于单集群资源常常不足,需要根据集群容量变化动态调整部署集群和资源副本量 •难以有效地高可用部署:由于集群拓扑位置不可控,难以控制应用资源在真实可用区的分布比例,导致实际容灾能力受限 •应用管理效率低:资源分散在多个集群,难以统一观测和控制 Gateway 解决办法 •容灾部署:使用平台提供的多可用区部署能力,指定3可用区等比例部署 •路由控制:基于平台内置的北极星服务,配置可用区级的就近访问、容灾切换能力,满足应用正常情况下流量可用区内闭环,异常情况下可跨可用区容灾的要求 •灰度发布:使用平台内置的按可用区灰度发布能力,应用先在单可用区完成灰度验证之后再全可用区发布,降低发布风险 行业最佳实践:基于TKEAppFabric实现应用高可用 zone1 zone2 zone3 app1 app1pods app1pods app1pods Failover app2 app2pods app2pods app2pods app3 app3pods app3pods app3pods Roadmap 20 Q1Q3 20 Q4 20 Q1 内部打磨 •服务腾讯内部自研上云 邀测 •对限定用户开放 •可选功能插件化改造 正式开放 THANKS