袋鼠:云原生底层系统探索和实践

简介: 随着云计算的发展,云原生概念已经开始成为一种被广泛接受的开发理念。本文将概述我们面向云原生场景在底层技术方面做的探索以及实践。文章根据云栖大会系统软件专场内容整理,演讲者:韩伟东

本文根据云栖大会系统软件专场内容整理
演讲者:韩伟东


随着云计算的发展,云基础设施已经成为很多企业以及用户基础设施重要的组成部分,部分企业甚至会将自己的全部业务都托管在公共云环境上。而伴随着这些基于云计算基础设施进行开发、运维业务体量的扩张,云原生的概念也开始悄然进入人们的视线,并逐步发展壮大。

_

从2013年开始正式被提出,到2015年CNCF建立并至今,云原生的概念在一直不断地发展完善,虽然现在我们仍无法给云原生一个严格明确的定义,但是其特征已经相对比较明显,比如容器化、serverless化等等。然而可以看到的是,面向云原生更多目光还是聚焦在应用定义、编排管理、runtime等软件栈上,很少有人会去关注底层系统的实现,大家都天然地将这部分领域交由云厂商去解决,那么在这一块云厂商是否就能够轻松应对了呢?

当然不是。

首先,相较于传统的业务形态,云原生业务对于资源需求类型有了变化,从传统云时代获取虚拟机资源(虚拟化硬件)到获取虚拟OS资源(容器)到获取虚拟运行时资源(FaaS),用户对于资源的抽象层级以及粒度有了更高的要求。

_

同时,云原生业务天然伴随着对快速弹性的需求以及短时运行等特征,会要求云基础设施提供在短时间内快速地提供资源的能力,并且能够承受资源频繁创建、销毁的压力。

传统的云服务向用户提供的还是大粒度的资源(VM),用户拿到资源之后,依然需要自己做资源的拆分以及抽象。同时,传统云服务依然有厚重的软件分层,并为了兼容传统业务模型引入的大量复杂的功能,这与云原生业务需求的轻量、弹性、精简的模型是不匹配的。使用老的底层架构去支撑云原生场景,除了会给自身架构带来巨大的流量冲击之外,提供的服务效果也会大打折扣,甚至成为云原生业务的瓶颈。

阿里作为云原生的积极践行者,我们需要去思考,一个优秀的云原生基础底座应该拥有什么样的能力,如何才能打造一个新的底层系统。本文会介绍一下我们的思考以及探索。
首先,从云原生场景特点出发,我们认为需要从3个维度对底层系统进行设计,分别是资源、执行单元、系统能力,只有做到这3个层次的抽象才能够完整的支撑云原生业务。在此思考上,我们推出了袋鼠,打造出属于阿里的云原生底层系统。

_

在执行抽象层面,我们推出了推出了极致轻量、阿里云安全沙箱(Alibaba Cloud Sandbox),实现

  • 云上多租户安全
  • 上层透明无感知,原生容器体验
  • 云原生标准和生态兼容、无缝对接


在实现上,我们采用硬件虚拟化技术隔离,更精简轻量的实现减小攻击面。同时我们也在构建enclave级的可信执行环境的支持。

在资源抽象方面,我们追求极致的轻量,融合不同层次间的重复部分,精简不需要的功能,实现极简设备模型,最小化内核等。通过这些轻量化实现,目前安全沙箱实例内存消耗小于2.5MB,启动速度已经远远小于500ms,且单机并发创建速度达到了200个/s,已经可以比较好地满足云原生业务的快弹、高密等诉求。
在性能方面,我们也做了很多探索。云原生场景,用户更专注于应用逻辑,更多的技术栈内容下沉到基础设施,服务边界的上移。这样就给底层系统更多的施展空间,因为原有一些分层边界可以被打破,可以融合和垂直优化。在袋鼠系统中,我们基于不同层次融合的全栈优化思路实现高性能。

_

基于以上思路,我们在Redis以及Dragonwell(阿里云JDK发行版)都进行了全栈优化的实践探索,可以看到不错的效果:Redis在袋鼠上的吞吐性能相比传统VM场景性能提升超过1倍,Dragenwell在袋鼠上运行相比传统VM场景能提升JVM的协程调度效率和降低CPU资源利用率(10%左右)。

袋鼠已经对接和支持多个阿里云云原生产品,包括弹性容器实例ECI、容器服务ACK以及Serverless应用引擎SAE。

_

云原生不仅仅是上层应用开发、交付、运维的变化,同时也要求底层系统进行升级演进。云原生时代大幕已经拉开,阿里已经在全方面的构建云原生能力,并结合自身业务的云原生化进行大规模的实践,会持续不断的为阿里云用户提供更多更好的云原生产品和服务。

目录
相关文章
|
24天前
|
Kubernetes Cloud Native 安全
云原生机密计算新范式 PeerPods技术方案在阿里云上的落地和实践
PeerPods 技术价值已在阿里云实际场景中深度落地。
|
1月前
|
资源调度 Kubernetes 流计算
Flink在B站的大规模云原生实践
本文基于哔哩哔哩资深开发工程师丁国涛在Flink Forward Asia 2024云原生专场的分享,围绕Flink On K8S的实践展开。内容涵盖五个部分:背景介绍、功能及稳定性优化、性能优化、运维优化和未来展望。文章详细分析了从YARN迁移到K8S的优势与挑战,包括资源池统一、环境一致性改进及隔离性提升,并针对镜像优化、Pod异常处理、启动速度优化等问题提出解决方案。此外,还探讨了多机房容灾、负载均衡及潮汐混部等未来发展方向,为Flink云原生化提供了全面的技术参考。
114 9
Flink在B站的大规模云原生实践
|
1月前
|
Cloud Native 安全 Linux
龙蜥操作系统:CentOS 谢幕之后,国产云原生系统的崛起之路
龙蜥操作系统(Anolis OS)是 CentOS 停止维护后,由阿里云等企业联合发起的开源项目。它以双内核架构和全栈优化为核心,提供无缝替代 CentOS 的方案,兼容主流生态并针对云计算场景深度优化。其技术亮点包括 RHCK 和 ANCK 双内核、性能优化、全栈安全及国密算法支持。龙蜥适用于云原生基础设施、企业级应用部署及开发环境,社区已吸引 200 多家单位参与。未来规划涵盖 AI 框架优化、RISC-V 架构适配及桌面环境构建,正重新定义云时代的操作系统边界。
225 0
|
2月前
|
人工智能 Cloud Native 容灾
深圳农商银行三代核心系统全面投产 以云原生架构筑牢数字化转型基石
深圳农商银行完成第三代核心系统全面上云,日均交易超3000万笔,峰值处理效率提升2倍以上。扎根深圳70余年,与阿里云共建“两地三中心”分布式云平台,实现高可用体系及全栈护航。此次云原生转型为行业提供可复制样本,未来将深化云计算与AI合作,推动普惠金融服务升级。
257 17
|
2月前
|
资源调度 Kubernetes 调度
网易游戏 Flink 云原生实践
本文分享了网易游戏在Flink实时计算领域的资源管理与架构演进经验,从Yarn到K8s云原生,再到混合云的实践历程。文章详细解析了各阶段的技术挑战与解决方案,包括资源隔离、弹性伸缩、自动扩缩容及服务混部等关键能力的实现。通过混合云架构,网易游戏显著提升了资源利用率,降低了30%机器成本,小作业计算成本下降40%,并为未来性能优化、流批一体及智能运维奠定了基础。
161 9
网易游戏 Flink 云原生实践
|
3月前
|
Cloud Native Serverless 流计算
云原生时代的应用架构演进:从微服务到 Serverless 的阿里云实践
云原生技术正重塑企业数字化转型路径。阿里云作为亚太领先云服务商,提供完整云原生产品矩阵:容器服务ACK优化启动速度与镜像分发效率;MSE微服务引擎保障高可用性;ASM服务网格降低资源消耗;函数计算FC突破冷启动瓶颈;SAE重新定义PaaS边界;PolarDB数据库实现存储计算分离;DataWorks简化数据湖构建;Flink实时计算助力风控系统。这些技术已在多行业落地,推动效率提升与商业模式创新,助力企业在数字化浪潮中占据先机。
234 12
|
3月前
|
运维 Cloud Native 测试技术
极氪汽车云原生架构落地实践
随着极氪数字业务的飞速发展,背后的 IT 技术也在不断更新迭代。极氪极为重视客户对服务的体验,并将系统稳定性、业务功能的迭代效率、问题的快速定位和解决视为构建核心竞争力的基石。
|
4月前
|
存储 人工智能 缓存
AI变革药物研发:深势科技的云原生实践之路
阿里云助力深势科技推出创新的玻尔Bohrium®科研云平台和Hermite®药物计算设计平台,并持续完善。这两项先进的工业设计与仿真基础设施成果通过AI技术赋能科学研究和工业研发,不仅大幅缩短了药物研发周期,降低了成本,还显著提高了研发成功率,为生物医药行业带来了前所未有的变革,这是AI for Science领域的重大突破。
304 38