深势科技基于 Serverless 容器为科研人员打造高效的开发平台

news/2024/5/20 7:16:48 标签: 科技, serverless, 云原生, Kubernetes

作者:李样兵、刘杉、木环、玖宇、鼎岳

云端的科学研究,AI for Science 新范式

以往科学家们的科研工作需要经过大量实验的重复验证、复杂数学计算,以及长年累月的不断试错和苦苦探索。云计算基础服务的发展和人工智能技术 AI 的兴起,也给科研领域带来了新转变。

2019 年,事件视界望远镜(EHT)团队公布了首张黑洞照片,这是全球 30 多个科研机构在云端协作的结果;团队成员可在全球调用各类云资源,数据处理周期从原本的数周压缩到数天。

哥伦比亚大学在云上进行气候科学研究,构建复杂的地球系统模型(ESM)模拟来理解模式并进行预测。利用卫星、无人机和传感器监测大陆、海洋和大气的不断增长的环境数据,来预测自然灾害和评估地球的状态。

北卡罗来纳大学教堂山分校和芬兰 Techila 合作将图形重建的时长从一个月缩短到 18 小时,原来本地个人电脑上需要进行一到两周的 MATLAB 40GB 的数学实验,转移到云上 100 个节点进行后只需要两三个小时。

深势科技很早就认准了 AI for Science 赛道, 开创性地提出了「多尺度建模+机器学习+高性能计算」的革命性科学研究新范式,自研的计算平台服务为药物、材料领域带来极具突破性的计算模拟及设计工具。

深势科技科学计算平台——Bohrium® 科研云平台,致力于为科研人员提供开箱即用的计算环境,同时支持基于命令行和图形界面的任务提交方式。通过提供兼具速度与效率的微观模拟工具,Bohrium® 帮助研发人员进行光学、电学、磁学、力学的物理性质计算,并细致研究材料微观结构组分与作用机理。合金、电池、半导体、催化等材料的高通量理性设计正在 Bohrium® 平台中成为现实。

图片

Bohrium® 提供开箱即用的计算环境,同时支持基于命令行和图形界面的任务提交方式。Bohrium® 实现了对多云、多超算计算资源的高效池化,兼具云上的高弹性与超算的高性能等特点。通过对任务的智能调度,平台为用户提供“多、快、省”的计算体验。

深势科技开发平台之难点与技术概览

Borhrium® 科学计算平台自 2018 年在阿里云构建,任务训练部分的技术架构方案基于 ACK Serverless 容器升级改造并平稳运行。随着业界对 AI for Science的认知与使用不断发展,深势科技希望能够对开发调试部分升级迭代,并实现一体化开发-训练流程。

图片

在技术指标上,深势科技希望开发平台可以支持成百上千科研人员同时开启在线实验研究,至少具备以下四方面重要能力:

  • 支持 2000+ 人同时启用,且秒级快速开机关机能力;
  • 如遇到实验机异常,可以继续实验而不需要重新开始;
  • 平台无需大量支持人力投入、实现零技术支持与零运维成本;
  • 同时兼顾业务安全和主机安全。

最初,开发平台容器 AI 技术架构采用的是经典的容器服务 ACK 集群纳管云服务器 ECS 方式,而非 Serverless 容器模式。旧版方案存在两大问题: 一方面,因为科研人员的开发周期较长,在过程中会数次开机关机,为了便于下次打开继续实验,需要通过容器镜像打包的方式保存环境,但是这样的关机时间过长且镜像会不断膨胀变得过大;另一方面,存在低概率的意外宕机情况,除非客户恰好在宕机前手动保存,否则信息、数据全部丢失,亟需能够帮助广大用户做到随时的自动保存。

总结而言,深势科技需求如下:

图片

对应而言,其技术难点挑战是:

  • 大规模资源高并发请求

    开发机支持快速启停和关机(秒级),最高希望支持 2000+ 位科研人员同时在线使用。开发机申请云端 CPU、GPU 资源,需要支持跨可用区、垮地域调度/重启,并且做到用户无感知。

  • 中途退出的环境保存

    用户关机时能够释放实例资源,但需要保留用户容器数据和临时数据,以便于回溯。同时,由于用户误操作导致的容器重启甚至开发机实例被释放,也要保留重启/释放前容器环境和临时数据。支持重新启动开发机,并能继续进行之前中止的实验。

  • 镜像数据膨胀

    解决传统开发机方案的数据增加问题,传统方案关机保存镜像,开机使用关机镜像恢复环境,多次开关机之后,镜像层数大小不断增加,带来额外成本。

  • 业务数据联动与自动管理

    基于 ECI 的开发机不但需要访问阿里云的 NAS 还需要支持第三方的 JuiceFS 存储,并且需要支持两个存储之间自动的数据拷贝。

  • 多租环境的强隔离与稳定性

    开发机和开发机之间要做到强数据、资源隔离;某一台开发机故障,或底层节点宕机,不影响其他开发机。

  • 运维便捷性

    开发机支持不断迭代升级,并支持自动镜像缓存制作。

基于 Serverless 容器打造高效的科研开发平台

经过多次深入沟通,阿里云与深势科技共同敲定了如下的 Serverless容器解决方案:

整体架构设计上,开发机采用了跨地域多 K8s 集群方案,在确保整体的可靠性与容灾性的同时,能更大范围调度不同地域的算力资源;在 K8s 管控侧,选用阿里云容器服务 Serverless版( ACK Serverless ),可以免除很多运维负担,如无需维护节点池、无需预先缓存镜像、无需维护 K8s 组建托管等,底层 ECI 弹性容器实例相比传统云服务 ECS 可以快速启动与关闭,并且遵循 Serverless 按需使用、按需付费的理念;在应用镜像、AI 模型文件等制品管理上,选择阿里云容器镜像仓库企业版(ACR EE)一站式解决方案,可实现全球同步加速、大规模/大镜像分发加速,且与容器服务 ACK 无缝集成。

更值得一提的是,阿里云独家提供的 ACK Fluid 方案可以无缝接入第三方存储挂载,并提供多用户数据安全共享隔离功能。 同时,ACK Fluid 还实现了数据管理的自动化,进一步提升了系统的效率和易用性。

图片

科研开发平台的 Serverless 容器方案架构图

对于重启/释放后异常点可恢复的诉求,即仍保留容器环境和临时数据以便于查看或者再继续实验,可以参考如下的 CRD 生命周期设计。在开发机的生命周期中,开机、关机和重启均可以做到 20s 内,同时,通过 ACK Fluid 支持数据挂载到 ECI 的时长缩短到 5s 以内(包括阿里云 NAS 和第三方存储)。

图片

经过两方的配合和沟通,最终基于 Serverless 容器的 AI 开发平台方案实现了如下效果:

  • 大规模 POD 弹性能力,同时开启 2000+ 台开发机
  • 资源利用率提升 30%,按需付费,提供丰富可用的资源
  • 异常后,恢复宕机时间点数据
  • 基于 ECI 实现秒级随用随开,支持环境保存
  • 相较传统的 K8s 形态,ACK Serverless 无需维护服务器与镜像缓存
  • 通过 ACK Fluid 无缝数据接入第三方存储方案,同时支持多用户数据安全共享隔离,以及定时不同存储系统间的数据同步

未来,怀梦前行

目前开发机的 Serverless 容器方案已经基本满足预期,后续运营期还需要持续关注和提高整体项目的健壮性:优化整体项目的上下游瓶颈依赖(比如 API 调用频率和流控),构建完善的异常情况兜底方案。

深势科技技术架构师李样兵说道: “感谢阿里云团队的专业的技术实力和敬业精神:针对业务痛点,共克技术难关,探索前沿技术方案,结合 Serverless 容器架构, 打造了行业领先的科研开发平台。”

此外,进一步探讨尝试云原生架构下的多地/多类型资源统一管理与效率优化,实现基于 K8s 的统一管理、调度多种集群资源,并给予 Fluid Dataset 实现统一接入云原生存储、加速和管理异构/异地的数据方案。

如今,Bohrium® 科研云平台运行平稳,已经为很多科研人员提供了良好支撑:

武汉大学与南方科技大学的研究团队,在液态金属领域取得重要进展,为新型材料高熵合金的原子级可规模化、可定制化的精准制造打下基础。

中国科学院地球化学研究所理论团队与合作者基于 Bohrium® 探索地球内核各向异性新机理,为内核复杂的各向异性和不均一结构成因提供了全新解释。

北京大学数学科学学院和材料科学与工程学院、北京科学智能研究院、深势科技联合宁德时代 21C 创新实验室采用深度势能方法研究硅基负极在脱嵌锂过程的相变和结构演化,并取得重要进展。

深势科技继续为 “AI for Science” 革命性科学研究新范式而不懈努力,运用人工智能和多尺度的模拟仿真算法,结合先进计算手段求解重要科学问题,为人类文明最基础的生物医药、能源、材料和信息科学与工程研究打造新一代微尺度工业设计和仿真平台。


http://www.niftyadmin.cn/n/5090641.html

相关文章

CocosCreator 面试题(十二)Cocos Creator Label 的原理以及如何减少Drawcall

在Cocos Creator中,Label是用于显示文本的组件。它的原理是通过将文本渲染到纹理上,并将纹理贴图显示在屏幕上来实现。 一、Label组件的工作原理 字体加载:首先,Label组件需要加载所需的字体文件。可以通过在编辑器中设置字体资源…

一场直播脚本的策划及话术怎么写?

一场直播脚本的策划及话术参考 直播流程安排示范:120 分钟直播流程设计(过款型) 标准化直播话术单元(单款产品话术模板) I 直播 120 分钟标准化流程 I 分解为 4 个 30 分钟直播单元 I 30 分钟前期介绍 2-3 个款作为起步 每款持续时长 10 分钟,10 分钟的时间里 ①卖点引出 2 …

Devos勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复

导言: Devos勒索病毒是网络安全威胁的一个严峻问题,它通过加密文件并勒索赎金,危及个人和组织的数据。本文91数据恢复将介绍Devos勒索病毒的特点,如何解密被其加密的数据文件,以及关键的预防措施,以保护您…

sql 常用命令-----增删查改

创建表格 CREATE TABLE table_name(字段一,字段,.......);删除表格 DROP TABLE table_name; 增 INSERT INTO table_name VALUES(字段一值,字段一值,.......); 查 查找字段 SELECT 字段 FROM 表名; 查找表格所有内容 SELECT * FROM 表名; 按条件查找 SELECT * FROM…

【LeetCode刷题(数据结构)】:另一颗树的子树

给你两棵二叉树 root 和 subRoot 检验 root 中是否包含和 subRoot 具有相同结构和节点值的子树。如果存在,返回 true ;否则,返回 false 二叉树 tree 的一棵子树包括 tree 的某个节点和这个节点的所有后代节点。tree 也可以看做它自身的一棵子…

解密人工智能:KNN | K-均值 | 降维算法 | 梯度Boosting算法 | AdaBoosting算法

文章目录 一、机器学习算法简介1.1 机器学习算法包含的两个步骤1.2 机器学习算法的分类 二、KNN三、K-均值四、降维算法五、梯度Boosting算法和AdaBoosting算法六、结语 一、机器学习算法简介 机器学习算法是一种基于数据和经验的算法,通过对大量数据的学习和分析&…

go语言包管理和变量保护

文章目录 包、模块、工作空间变量保护 go语言教程: 安装入门➡️for循环➡️数组、切片和指针➡️switch和map函数进阶➡️结构体、接口、面向对象本文代码:go语言包管理测试代码 包、模块、工作空间 每个Go语言程序,都以package xxx开头&…

相似性搜索:第 5 部分--局部敏感哈希 (LSH)

SImilarity 搜索是一个问题,给定一个查询的目标是在所有数据库文档中找到与其最相似的文档。 一、介绍 在数据科学中,相似性搜索经常出现在NLP领域,搜索引擎或推荐系统中,其中需要检索最相关的文档或项目以进行查询。在大量数据中…