阿里巴巴 张瓅玶 - 阿里巴巴调度与集群管理系统Sigma

ItsMyLife

2017/12/18 发布于 技术 分类

ArchSummit全球架构师峰会是InfoQ中国团队推出的面向高端技术管理者、架构师的技术大会,参会者中超过50%拥有8年以上的工作经验。 ArchSummit秉承“实践第一、案例为主”的原则,展示新技术在行业应用中的最新实践,技术在企业转型中的加速作用,帮助企业技术管理者、CTO、架构师做好技术选型、技术团队组建与管理,并确立技术对于产品和业务的关键作用。

文字内容
1. 阿里巴巴调度与集群管理系统 Sigma Liping Zhang 张瓅玶 Principal Engineer, Alibaba 阿里巴巴
5. Liping Zhang 张瓅玶 Alibaba Principal Engineer 阿里花名谷朴。2017年加入阿里巴巴。阿里巴巴系统软件部研究员,调度系统首 席架构师。 之前在Google的基础设施事业群的集群管理部门工作了5年多,并领导了资源管 理和优化调度团队,负责Borg以及基础存储资源的优化,负责了FlexBorg, Autoscaling等多个产品。加入Google前在加州大学伯克利分校从事智能系统的 研究工作。本科和博士毕业于清华大学。
6. 调度系统业界现状 •  开源领域:Kubernetes,Docker Swarm, Mesos, Yarn等 •  闭源,基于开源的改造或者开源兼容系统:Borg,Fuxi,Sigma等 •  在线和离线任务混部:已知主要是Borg •  资源利用率状况:Borg领先 真正的挑战? 在实际工程中落地,实现资源效率和运维效率的提升
7. •  Sigma调度系统整体架构和历史演进 •  架构和实现的特点 •  调度及资源优化 •  展望
8. 阿里调度系统整体架构和历史演进 •  历史状况 •  各个部门资源池独立 •  独立研发,多套调度系统 •  容器演进:T4->Pouch 历史状况 BU1! T4‫ړ‬ᕟ1ҁCPU:1'>CPU:1%҂! T4‫ړ‬ᕟ2ҁCPU:20'>CPU:20%҂! …..! BU2! T4‫ړ‬ᕟ1ҁCPU: 0.5%҂! ᇔቘ๢‫ړ‬ᕟ1! …..! ٌਙBU…! ‫ړ‬ᕟ1,2,3,4…! ᇔቘ๢..! …..! 宿主机物理资源各BU⾃⾏彼此割裂使⽤ ⼤量各种形式的T4分组集合(含 蚂蚁)+ 众多物理分组
9. 阿里调度系统整体架构和历史演进 l 问题: ü 规模:各T4分组规模不一,大部分都是小规模:资源碎片化。 ü 调度:T4分组内小规模调度,核心应用打散受限。 ü 资源分配:双11期间参差不齐: ² 交易相关CPU充分售卖,无空闲CPU。 ² 但众多T4分组,宿主机尚未分配容器实例。 ü 资源利用率非常不均衡: ² 部分分组CPU满负载运行(高达45-50%) ² 但相当多的分组CPU几乎完全空闲
10. 系统整体架构和历史演进 l 改变:云化架构,混合云 ü 规模:统一大资源池模式。 ü 调度:大资源池下,Sigma调度对核心应用的各 种策略保障,得以更充分地发挥价值。 ü 资源分配:双11充分使用了所有资源,没有闲 置。 ü 资源利用率:资源充分均衡使用 ü 离线和在线任务开始混部 Sigmaጱ‫݌‬11! ᕹӞᩒრ࿰! ٌਙӫંᩒრ࿰! Իฃ᭦ᬋ‫܄‬ऒ! ‫ول‬᭦ᬋ‫܄‬ऒ! ӫአᩒრ࿰1! ӫአᩒრ࿰2! Sigma统筹物理资源 收拢统⼀资源池
11. Sigma系统整体架构和历史演进 Ŏ  ّ਻.XEHUQHWHV$3,҅޾୏რ ᐒ‫و܄‬ୌ Ŏ  ᯻አᴨ᯾3RXFK਻࢏ҁّ਻2&, ຽ‫ٵ‬҂KWWSVJLWKXEFRP DOLEDEDSRXFKz %RVV +RVW 8&3 &,&' 3XEOLVK 2SHUDWLRQ 6LJPD0DVWHU $SL6HUYHU 6FKHGXOHU $OJRULWKP0/ 3HUVLVWHQW 6WRUH 6LJPD6ODYH $JHQW 3RXFK 3RXFK 1& 11&&  $OLNHUQHO 'LVWULEXWH ,PDJH 0DQDJHU &0'% ,3$0 '&
12. Sigma系统整体架构和历史演进 Ŏ  ӱ‫ۓ‬ຝ຅ᇙᅩғӱ ‫ۓ‬ग़໏۸ Ŏ  ӱ‫࣋ۓ‬ว॔๥
13. •  Sigma调度系统整体架构和历史演进 •  架构和实现的特点 •  调度及资源优化 •  展望
14. Sigma架构和实现特点 •  灵活可配置的调度策略 •  双11给Sigma调度系统带来的挑战以及Sigma的解决方案 •  复杂约束下的批量调度优化 •  精确高水位排布 •  大规模快速建站
15. 灵活可配置的调度策略 •  支持多样化的应用场景:电商交易、中间件、广告、搜索、数据库、日 常测试容器 •  调度优选模型的建立 •  以插件化的方式基于外部输入实时调控集群打分模型 •  可配置的优化调度策略,解决资源碎片率高和扎堆严重的问题
16. 灵活可配置的调度策略 •  业务团队开发出新的策略,可立即配置生效,不需要代码发布 •  所有调度策略可配置 •  支持的策略: •  应用部署:亲和、互斥、独占、P0M0(最重要优先级应用) •  其他策略:资源需求,容器创建特殊需求,Ip隔离需求 •  CPU精细调节:CPUSet独占、均衡、SameCore等策略
17. Sigma系统整体架构和历史演进 ᩒრԻ՞᱾᪠ Ŏ  ᧣ଶᔮᕹጱຝ຅ ޾ᦡᦇჿ᪃ӱ‫ۓ‬ ࣋วᵱᥝ 用户发起资源需求 ᩒრᵱ࿢ള‫ف‬1! Sigma᧣ଶ Sigma ApiServer! Sigma Master! ETCDᵞᗭ ᩒრԻ՞! Sigmaᒽኼ᱾᪠ 用户录入资源需求 Sigma运维录入应用规则 ᥢ‫ڞ‬୯‫޾ف‬ᖌಷ! ᥢ‫ڞ‬ᛔۖ‫ྍݶ‬ᛗETCD ଫአ! ‫!௳מز‬ ᒽኼ᧛‫ ݐ‬ٟ‫ ف‬ᖫᬋ ‫ڢ‬ᴻAPI! ଫአ! च๜ᵱ࿢! ଫአ! ṛᕆᒽኼ! ଫአᳵ! ॔๥ᒽኼ! SigmaຽᓋᲫ‫؀‬ጱᕹӞᓕቘ! CPU! ᔜᕡᒽኼ!
18. Sigma架构和实现特点 •  灵活可配置的调度策略 •  双11给Sigma调度系统带来的挑战以及Sigma的解决方案 •  复杂约束下的批量调度优化 •  精确高水位排布 •  大规模快速建站 •  混合云+弹性
19. 双11给调度带来的挑战 •  复杂约束下的批量调度优化 •  目标:通过批量优化,达到比顺序调度更加优化的效率 •  实现方式:Scheduling optimization module
20. 复杂约束下的批量调度优化 •  通过模拟器和线上数据回 放,对批量建站请求进行 仿真模拟,并优化方案
21. 复杂约束下的批量调度优化 •  调度优化效果:分配率从 不到70%提升到80%到 90%
22. 大规模快速建站 ᩒრԻ՞᱾᪠ጱܴၥӨ‫ق‬᱾᪠௔ᚆս۸ Ip‫ړ‬ᯈᓕቘ! ᳒‫؟‬ଚ‫ݎ‬ӥ᫹҅਻࢏‫ڠ‬ୌ MetaData! ᳒‫!ݎړ؟‬ Sigmaᵞᗭ Sigma ApiServer! Sigma Master! 数据与策略 ETCDᵞᗭ 数据与策略 ऒ‫!ݷ‬ ਻࢏޾ਾԆ๢ᇫ ாᓕቘ! Sigma上下游全链路性能优化: l  Sigma APIServer的并发扩容的优化控制。 l  Sigma调度核心master的性能保证。 l  ETCD的性能保证和优化。 l  镜像下载:蜻蜓的优化。 l  镜像落盘:调度模拟与宿主机亲和。
23. 大规模快速建站 镜像下载与镜像落盘的优化: l 日常扩容仅预热基础镜像。 l 大促建站预热基础镜像。 l 大促建站针对性预热最热门的应用 镜像。 l 大促建站针对独占资源池:指定具 体的应用,提前镜像预热。 l Sigma模拟器:提前计算整单元的 部署结果,预热宿主机(基于宿主 机亲和的调度规则)。 ෭ଉᩒრԻ՞! चᏐ᳒‫؟‬ᶼᅾ! ᳒‫؟‬ᛔۖႴቘૡٍ! 下载或P2P分发 ᳒ࣈ‫؟‬ऒ‫ړ‬᮱‫ݎ‬ᗟ᩻҂ᕆ! ᜓᅩᵞਫձᗭ෸‫ۓ‬ҁ‫᧣ړ‬ೲᇆ๢಄౲ ଶ๋҅ս ጱӥ᫹᪠ ஆ!
24. 大规模快速建站 य़‫׏‬ୌᒊᩒრԻ՞! ᳒ ୌᒊ࣋วғय़ ܴၥ࣋วғ‫ ݒ‬ୌᒊ࣋วғ ‫؟‬ ᥢཛྷୌᒊҁ‫ڡ‬ ত۸҂! ܴᬟ୨! ᇿ‫ܛ‬ଫአ᮱ ᗟ! ൉ ‫ڹ‬ ៧ ཛྷ೙࢏ғਾԆ ๢ଫአՅ޾! ๋ᅾᳪଫአ᳒‫؟‬ᶼᅾ! ፏ! ᇿ‫ܛ‬ᩒრ ࿰ғᶼ᮱ᗟ चᏐ᳒‫؟‬ᶼᅾ! ੒ଫᇿ‫ܛ‬ଫ አ᳒‫!؟‬ ᳒‫؟‬ᛔۖႴቘૡٍ! ᩻ᕆ ᜓᅩ ൉‫ڹ‬ ᶼᅾ ૡٍ! 下载或P2P分发 ᳒‫ݎړ؟‬᩻ᕆᜓᅩᵞᗭҁೲ๢಄౲ࣈऒ᮱ᗟ҅൉‫ڹ‬ी ‫ے‬᩻ᕆᜓᅩ਻ᰁ҂! ਫ෸‫ړ‬ᇆձ‫᧣ۓ‬ ଶ๋҅սጱӥ᫹᪠ ஆ!
25. •  Sigma调度系统整体架构和历史演进 •  架构和实现的特点 •  调度及资源优化 •  展望
26. 调度和资源优化 ᩒრ࿰‫ړ‬ව! • ᩒრᏦᇆ۸! • ӧ‫׎‬ԭႰ᮱! ᧣ଶഭ૲පሲ! • ഭ૲පሲӧṛ҅ Stranded resources! • ഭ૲පሲғ॔አ! ᩒრᥢ‫޾ښ‬ᶼ ᕅ! • ԅશ‫؀‬ᵱ࿢‫כ‬ኸᩒ რ! • ӧᏟਧ௔౮๜!
27. 调度和资源优化 ᩒრ࿰‫ړ‬ව! • ᩒრᏦᇆ۸! • ӧ‫׎‬ԭႰ᮱޾॔አ! ᕹӞᩒრ࿰޾ବ੶᧣ଶ! ࣁᕚᐶᕚձ‫ۓ‬Ⴐ᮱!
28. 6LJPDӨ)X[LႰ૲ຝ຅ Ŏ  ᭗ᬦ6LJPD޾)X[Lਠ౮ࣁᕚ̵ᐶᕚ ‫ݱ‬ᛔጱ᧣ଶ҅ᐶᕚ‫و‬Ձ᩻‫ܕ‬ 6LJPD0DVWHU /HYHO &RQWUROOHU /HYHO 'DWD )X[L0DVWHU Ŏ  ᭗ᬦᵭ੶ፘ԰‫᧣ܐ‬ᩒრᯈྲ؉Ⴐ૲ ٬ᒽ҅᭗ᬦٖ໐ᥴ٬ᩒრᒋԩᵍᐶ ጱᳯ᷌ Ŏ  ંԭ‫و‬Ձᇫா VKDUHGVWDWH ጱ‫૲ړ‬ ୗ᧣ଶKWWSZZZƉUPDPHQWLR EORJVFKHGXOHU DUFKLWHFWXUHVKWPO /HYHO $JHQW 6LJPD$JHQW )X[L$JHQW 5XQ& 5XQ9 5XQ/;& 3RXFK 3RXFK 3RXFK 3URG-REV -2% -2% 1RQSURG-REV
29. Ⴐ᮱‫ى‬Ძದ๞ Ŏ  ٖ໐ᩒრᵍᐶ Ŏ  &38+7ᩒრᵍᐶғ1RLVH&OHDQٖ໐ᇙ௔҅ᥴ٬ࣁ̵ᐶᕚ᩻ᕚᑕᩒრԩಶᳯ᷌ Ŏ  &38᧣ଶᵍᐶғ&)6चᏐӤी‫ے‬7DVN3UHHPSWᇙ௔҅൉ṛࣁᕚձ‫᧣ۓ‬ଶս‫ض‬ᕆ Ŏ  &38ᖨਂᵍᐶғ&$7҅ࣁ̵ᐶᕚӣᕆᖨਂ //& ᭗᭲ᵍᐶ %URDGZHOO݊զӤ  Ŏ  ٖਂᵍᐶғ&*URXSᵍᐶ220ս‫ض‬ᕆҔ%DQGZLGWK&RQWURO‫ٺ‬੝ᐶᕚᯈ᷐ਫሿଃ਼ᵍᐶ Ŏ  ᗑᕶ4R6ᵍᐶғᓕഴ಑ຽԅᰂᇈҔࣁᕚ಑ຽԅᱷᇈҔᐶᕚ಑ຽԅᱞᇈ҅‫ړ‬ᕆ‫כ‬ᵑଃ਼
30. Ⴐ᮱੒‫ڥ‬አሲ൉‫܋‬ Ŏ  ᭗ᬦႰ᮱҅&38෭࣐‫ڥ‬አሲ՗൉‫ک܋‬
31. 调度和资源优化 •  List 1 •  List 2 ᧣ଶഭ૲පሲ! • ഭ૲පሲӧṛ҅ Stranded resources! • ഭ૲පሲғ॔አ! ࣁᕚձ‫ۓ‬ս۸ഭ૲! ‫ړ‬෸॔አ!
32. ୨௔᧣ଶ޾ᩒრ‫ړ‬෸॔አ ᐶᕚಘ਻ ࣁᕚᖽ਻ ᐶᕚᖽ਻ ࣁᕚಘ਻ Ŏ  ᕮ‫ړݳ‬෸॔አ҅‫ڥ‬አ ሲ‫ݢ‬զᬰӞྍ൉‫܋‬ Ŏ  ೴౴ғ Ŏ  ਻ᰁᶼၥ Ŏ  ಘᖽ਻ᑞਧ௔ Ŏ  6/2‫כ‬ᵑ
33. •  Sigma调度系统整体架构和历史演进 •  架构和实现的特点 •  调度及资源优化 •  展望
34. ઀๕ Ŏ  ᩒრ๋ս Ŏ  Ⴐ‫ݳ‬ԯຝ຅ᬰӞྍ‫҅઀ݎ‬Ⴐ‫ݳ‬ԯႮଶᘶۖ҅ਫ෸‫و‬Ձᩒრ Ŏ  ᭗ᬦय़ᥢཛྷႰ᮱̵ս‫ض‬ᕆ૧୑۸൉‫܋‬ᩒრֵአපሲ Ŏ  ฬᚆ۸᧣ଶғๅঅጱఽᎣଫአጱ6/$ᵱ࿢̵‫ٺ‬੝ଫአᳵଗಟ Ŏ  ᭇଫ୑຅ᦇᓒᵱ࿢҅ԅ୑຅ᦇᓒս۸
35. 感兴趣继续讨论? 加入我们一起挑战?