摘要:CCE Turbo是华为云推出的一款革命性容器集群。

5月31日,在华为云Techwave云基础设施技术专题日上,华为云容器批量计算首席架构师马达对CCE Turbo的技术内幕进行了深度解读,CCE Turbo是华为云推出的一款革命性容器集群,在华为开发者大会(Cloud)2021上正式发布,通过计算、网络、调度的全方位加速,为企业应用创新提速。

软硬协同,为计算加速

为了解决集群服务器性能无法完全发挥的问题,华为云基于擎天架构的软硬协同能力,推出了业界独家的容器卸载技术,并应用到CCE Turbo,让集群资源100%用于业务处理。同时,通过对引擎进行瘦身、优化内部执行逻辑及核心模块重写,如基于Rust语言重写了 shimv2 和 agent,减少了进程数量、通过代码优化减少内存消耗,提升容器启动性能和Cgroup管理能力,同时结合擎天卡的高能性处理能力,将集群整体性能提升40%,资源使用成本节省30%。

Trunkport,为网络加速

网络连通速度、转发效率一直是业务应对大流量时所面临的挑战,华为云基于云原生2.0“IN Cloud”理念,打造了全新的云原生网络,利用Trunkport技术为网络全面加速。

Trunkport技术使得容器可直通VPC网络,将原有的“容器网络 + 虚拟机网络“的两层模型变为一层,网络资源连通时间缩短一半,有效支撑业务30秒内扩容1000容器实例,轻松应对流量浪涌,同时也将网络通信时延降低了40%,让应用访问更流畅;

CCE Turbo还率先在业界实现了为容器配置独立安全组和QoS,相比目前其它厂商容器与集群节点共享安全组的方案,不仅增强了容器通信安全性,还提升了大流量的转发效率。此外,CCE Turbo还基于CRD机制扩展了Kubernetes对象,用于实现各种复杂安全隔离诉求,并进一步简化容器安全组的配置。

Volcano,调度加速

企业核心业务全面云原生化后,如何提升调度效率、提升集群利用率,是困扰很多企业的难题。CCE Turbo基于Volcano实现了三大核心调度能力:

  • 在线离线混合调度:CCE Turbo将企业离线和在线业务在同一集群中混合部署,相比之前不同业务分集群部署,极大的降低了运维工作量,同时,根据在线、离线业务的不同需求进行灵活调度,如:当在线业务访问量低时,CCE Turbo可将空闲资源用来运行离线计算业务(如离线分析、模型训练等),而当业务高峰来临前,会自动释放离线业务占用的资源,保障在线业务对资源的诉求;
  • 应用感知智能调度:为了进一步提升混合部署后的集群利用率,通过感知应用模型(如web类应用、Tensorflow的PS和worker、Spark的Driver和executor等),针对不同应用模型对资源的诉求、应用负载情况,通过资源按需抢占、分时复用等机制,减少集群资源的空闲比例;并通过感知任务间拓扑结构,将各任务调度到最佳节点上,减少因网络瓶颈、数据跨节点传输等带来的时间损耗,进而可以将集群利用率提升2倍;
  • 大规模分布式调度:为了保障业务混合部署后,海量任务并发调度的难题,CCE Turbo推出了分布式架构的任务调度器,提升吞吐能力,并通过调度算法剪枝,减少寻址深度和广度,同时结合调度决策复用机制,可将调度寻址时间缩短10倍以上,实现每秒1万容器的大规模并发调度。

CCE Turbo为VIPKID音视频业务全面提速

VIPKID作为CCE Turbo的早期用户,已充分享受到CCE Turbo三大加速为业务带来的价值,本次专题日上,VIPKID后端研发高级专家慈轶恒在分享中表示,“使用CCE Turbo后,VIPKID音视频业务在各方面的指标都得到了不同程度的优化,同等规格集群性能较之前提升了40%,业务交互时延降低了40%,使得用户体验进一步提升,整个业务成本节省43%左右,很好的控制了业务高速增长期的IT成本增长速度。”

作为最早一批投身云原生技术的厂商,华为云是云原生计算基金会(CNCF)在亚洲唯一的初创成员,社区代码贡献和Maintainer席位数均位居亚洲第一,并贡献首个云原生智能边缘项目KubeEdge和批量计算项目Volcano,在华为开发者大会 2021(Cloud)上,华为云还联合多家企业开源了云原生多云容器编排项目 Karmada,持续引领云原生技术发展方向;在产品创新方面,华为云自2016年起相继在业内首发一系列云原生产品与解决方案,在Forrester的产品能力评估中,连续两年获得满分,且容器软件市场排名已位居中国第一;在繁荣产业方面,华为云不仅联合中国信通院发布了云原生2.0白皮书,全面诠释云原生2.0核心理念,还与CNCF、中国信通院联合构建了全球化的云原生交流平台——创原会,华为云将联合各行业云原生精英一起,共同探索前沿云原生技术、共享产业落地实践,用云原生技术全面赋能企业数字化转型。

点击关注,第一时间了解华为云新鲜技术~

解读革命性容器集群CCE Turbo:计算、网络、调度全方位加速的更多相关文章

  1. 【MySQL】容器集群支持数据库实践

    京东容器数据库系统,管理1800台物理计算节点,生产1W+ 多MySQL Docker容器实例.架构简单可靠,Docker容器计算平台与MySQL集群管理平台解耦处理.为描述方便,京东容器化数据库系统 ...

  2. 容器、容器集群管理平台与 Kubernetes 技术漫谈

    原文:https://www.kubernetes.org.cn/4786.html 我们为什么使用容器? 我们为什么使用虚拟机(云主机)? 为什么使用物理机? 这一系列的问题并没有一个统一的标准答案 ...

  3. Kubernetes容器集群管理环境 - Prometheus监控篇

    一.Prometheus介绍之前已经详细介绍了Kubernetes集群部署篇,今天这里重点说下Kubernetes监控方案-Prometheus+Grafana.Prometheus(普罗米修斯)是一 ...

  4. 重磅!容器集群监控利器 阿里云Prometheus 正式免费公测

    Prometheus 作为容器生态下集群监控的首选方案,是一套开源的系统监控报警框架.它启发于 Google 的 borgmon 监控系统,并于 2015 年正式发布.2016 年,Prometheu ...

  5. Kubernetes——容器集群

    kuberneteskubernetes(k8s)是google的容器集群管理系统,在docker的基础之上,为容器化的应用提供部署运行.资源调度.服务发现和动态伸缩等一系列完整的功能,提高了大规模容 ...

  6. 打造云原生大型分布式监控系统(四): Kvass+Thanos 监控超大规模容器集群

    概述 继上一篇 Thanos 部署与实践 发布半年多之后,随着技术的发展,本系列又迎来了一次更新.本文将介绍如何结合 Kvass 与 Thanos,来更好的实现大规模容器集群场景下的监控. 有 Tha ...

  7. 大规模 IoT 边缘容器集群管理的几种架构-0-边缘容器及架构简介

    ️Reference: IoT 边缘计算系列文章 什么是边缘容器? 边缘容器的概念 边缘容器是分散的计算资源,尽可能靠近最终用户或设备,以减少延迟.节省带宽并增强整体数字体验. 可以访问互联网的设备数 ...

  8. 大规模 IoT 边缘容器集群管理的几种架构-1-Rancher+K3s

    前文回顾 大规模 IoT 边缘容器集群管理的几种架构-0-边缘容器及架构简介 ️Reference: IoT 边缘计算系列文章 Rancher + K3s 简介 Rancher: Kubernetes ...

  9. 大规模 IoT 边缘容器集群管理的几种架构-2-HashiCorp 解决方案 Nomad

    前文回顾 大规模 IoT 边缘容器集群管理的几种架构-0-边缘容器及架构简介 大规模 IoT 边缘容器集群管理的几种架构-1-Rancher+K3s ️Reference: IoT 边缘计算系列文章 ...

  10. 大规模 IoT 边缘容器集群管理的几种架构-3-Portainer

    前文回顾 大规模 IoT 边缘容器集群管理的几种架构-0-边缘容器及架构简介 大规模 IoT 边缘容器集群管理的几种架构-1-Rancher+K3s 大规模 IoT 边缘容器集群管理的几种架构-2-H ...

随机推荐

  1. Vue源码学习(十二):列队处理(防抖优化,多次调用,只处理一次)

    好家伙, 本篇讲的是数据更新请求列队处理 1.一些性能问题 数据更新的核心方法是watcher.updata方法 实际上也就是vm._updata()方法, vm._updata()方法中的patch ...

  2. Unity EditorWindow GUI裁剪

    Unity2017,想在编辑器自己实现一个类似TreeView的东西 public void OnGUI(Rect rect) { // ... for (int i = 0; i < 100; ...

  3. Kafka 在分布式系统中的 7 大应用场景

    Kafka 介绍 Kafka 是一个开源的分布式流式平台,它可以处理大量的实时数据,并提供高吞吐量,低延迟,高可靠性和高可扩展性.Kafka 的核心组件包括生产者(Producer),消费者(Cons ...

  4. [Python急救站课程]斐波那契数列的计算吧

    斐波那契数列的计算 a, b = 0, 1 while a < 1000: # 输出不大于1000 的序列.while表示循环 print(a, end=',') a, b = b, a + b

  5. C#操作Microsoft.Office.Interop.Word类库完整例子

    使用Microsoft.Office.Interop.Word类库操作wor文档 一.准备工作 首先在工厂中,引用[Microsoft.Office.Interop.Word],本地安装了world, ...

  6. Windows 使用 keytool 导入证书到 jdk 密钥库

    确定 java 安装路径, 一般情况下存在于 C:\Program Files\Java\jdk_xxx,根据自身电脑安装情况而定. 管理员权限打开终端 cmd ,进入C:\Program Files ...

  7. 3. Shell 条件判断

    重点: 条件测试. read. Shell 环境配置. case. for. find. xargs. gzip,bzip2,xz. tar. sed. 1)Shell 的配置文件 Bash Shel ...

  8. 【Javaweb】Servlet四 | ServletConfig类|ServletContext类

    ServletConfig类是Servlet程序的配置信息类. ServletConfig类的三大作用 1.可以获取Servlet程序的别名servlet-name的值 System.out.prin ...

  9. lua面向对象(类)和lua协同线程与协同函数、Lua文件I/O

    -- create a class Animal={name = "no_name" , age=0 } function Animal:bark(voice) print(sel ...

  10. SpringCore完整学习教程6,入门级别

    本章从第7章开始: 7. Task Execution and Scheduling 在上下文中没有Executor bean的情况下,Spring Boot会自动配置一个ThreadPoolTask ...