《电子技术应用》
您所在的位置:首页 > 模拟设计 > 业界动态 > 技术贡献解读 浪潮云海OpenStack X版本技术贡献中国第一

技术贡献解读 浪潮云海OpenStack X版本技术贡献中国第一

2021-11-16
来源:电子创新网
关键词: 浪潮 云海 OpenStackX

  10月6日,OpenStack社区发布第24个版本 Xena(简称X版本),浪潮云海在Nova、Cyborg、Cinder、Masakari、Manila等核心项目的技术贡献排名再次获得“中国第一”、全球前三,已连续4个版本荣登社区技术贡献国内榜首,引领OpenStack重要技术发展。

  其中,浪潮云海OS技术团队向OpenStack社区贡献的可视化日志管理项目 -- Venus,是国内首个在智能运维领域贡献的开源项目。

  在此版本中,浪潮云海团队分别从以下四个方面做了大量技术贡献:

  一、GPU高级虚拟化功能增强及优化

  二、加密卷、文件等存储场景增强优化

  三、云平台上稳定性和持久内存的易用性增强

  四、基于Kolla的Venus项目集成实践,实现生产级镜像加速部署

  一、GPU高级虚拟化功能增强及优化

  AI技术快速发展,市场上对深度学习、图形图像处理及科学计算等多种场景的需求不断增加,但GPU价格昂贵,对云平台来说,如果一个GPU设备只能提供给一个虚拟机或物理机使用,GPU的利用率会大大降低。为满足客户多台虚拟机同时使用一个物理GPU,浪潮云海OS团队基于硬件加速设备管理项目Cyborg实现了对GPU/vGPU资源的精细化调度和管理功能,支持根据vGPU显存大小进行调度创建vGPU虚拟机,极大程度上提升GPU资源利用率。

  浪潮云海OS可支持GPU高级虚拟化(vGPU)功能,以支持一个GPU设备(即GPU:vGPU = 1: n(n≥1))启动多个高性能虚拟机,此时一个物理GPU设备可支持多台虚拟机运行,提升GPU对用户业务的并行处理能力。浪潮云海OS操作系统集云计算、大数据和人工智能于一体,作为云数据中心的“中枢神经系统”,实现了数据中心资源融合,资源管理及服务交付,同时支持GPU设备细粒度、精细化调度;支持根据GPU厂商、产品号、名称等属性调度所需的GPU或vGPU设备。

  

0.jpg

  vGPU设备管理架构

  浪潮云海OS通过GPU或vGPU设备为虚拟机提供了无与伦比的图形性能和应用程序兼容性,同时在多个工作负载之间共享GPU以带来成本效益和可扩展性。

  二、加密卷、文件等存储场景增强优化

  随着云平台规模的增大,如何保障云平台的高可用性成为了各个云厂商关注的热点话题。浪潮云海OS从真实客户需求出发,综合虚拟机、物理机等多种应用场景,为客户提供多平面感知的高可用能力,以下是在X版本贡献的多项核心技术:

  云海OS团队在文件存储Manila组件方面贡献了多个高级功能。例如增加文件存储回收站功能,通过软删除方式将Share放入回收站,回收站中的Share默认在七天之后被彻底删除,进一步提升文件安全性。支持用户对回收站内的Share进行查看、恢复以及彻底删除(暂不支持对Share更新、扩容、迁移等操作);管理员和普通用户默认支持使用回收站功能,在一定程度上提升了用户使用云平台的安全性,降低由于操作不规范、误删文件等带来经济损失的可能。

  

1.jpg

  纳管卷实现原理

  以OpenStack平台为例,浪潮云海技术团队优化了核心项目Cinder加密卷的处理逻辑,并将此优化推送到社区。具体来说,卷加密功能是基于LinuxLUKS架构,在卷挂载到虚拟机之前首先判断卷的数据格式。如果卷数据格式非LUKS格式,会将目标卷格式化为LUKS之后再映射给虚拟机使用。此种情况下,如果纳管存储上已经存在数据的卷,就可能出现数据丢失风险。另外如果目标卷是加密类型的,纳管时需要有密钥支持,无密钥则无法解析加密卷。

  

2.jpg

  卷上传镜像架构

  在对接iSCSI协议的存储时,卷映射虚拟机后,在宿主机上会生成SCSI相关协议的链路信息(Multipath、SCSI设备映射等)。在融合部署cinder-volume服务与nova-compute服务时,卷上传镜像操作在读取卷所使用的链路信息时,会与虚拟机使用的链路信息保持一致。如果上传镜像操作处理完时需要解除卷与虚拟机的映射信息,此时也会解除虚拟机所使用的链接映射,并造成虚拟机故障。

  针对此问题,浪潮云海针对此问题进行了深入研究,设计修复方案并完成开发,完成了对云海OS产品的优化,并将针对此问题的技术实现推送到OpenStack开源社区,得到了众多开源项目维护者及社区开发者的认可。

  三、云平台上稳定性和持久内存的易用性增强

  

3.jpg

  主机多平面故障检测

  当计算集群发生大规模故障时,计算资源急剧收缩,可能存在资源不足的情况,此时疏散可能给云平台造成更大的伤害。另外,计算节点上云主机根据承载的业务不同,有的业务应用实例价值高,有的就可能没那么重要。

  如何保障高价值的业务优先恢复?

  这就需要通过定义用户业务实例的优先级,然后通过排队、熔断、限流、降级重试等策略保障用户业务的可用性,从而保障云平台业务的稳定性。

  

4.jpg

  PMEM设备虚拟机离线迁移实现原理

  

5.jpg

  PMEM设备虚拟机离线迁移实现时序图

  浪潮云海技术团队和英特尔中国CESG ESS部门及英特尔中国OpenStack社区研发团队共同合作,对持久化内存(PMEM)进行了深入研究,完善并深度优化PMEM设备虚拟机的相关功能,例如支持PMEM设备虚拟机离线迁移,支持将已有的PMEM数据的虚拟机迁移到目标PMEM服务器节点上。

  

6.jpg

  PMEM设备管理

  为了更进一步实现异构加速器设备的管理,浪潮云海技术团队编写了PMEM设备的驱动程序,并将其贡献到OpenStack Cyborg社区,以支持通过智能加速器设备管理项目统一管理PMEM设备,支持PMEM设备的自动发现、自动上报、Nova创建虚拟机智能调度,更好支持虚拟机在创建时请求PMEM设备。

  四、基于Kolla的Venus项目集成实践,实现生产级镜像加速部署

  作为OpenStack平台部署项目,Kolla通过构建OpenStack容器化组件镜像,将不同的组件根据角色配置部署到不同的节点上,实现了生产级别的镜像加速部署,最大程度简化OpenStack部署和运维成本。

  

7.jpg

  Venus项目容器化部署实现原理

  Venus是浪潮云海技术团队提出的基于OpenStack云平台的可视化日志管理项目,且已成为OpenStack社区官方项目,提供了一站式日志采集、清洗、索引、分析、警告、可视化等能力。浪潮云海技术团队在Kolla项目中率先集成了Venus,通过Kolla项目分层模式实现Venus镜像构建,Kolla-ansible容器化实现Venus配置文件自动生成、数据注册、创建数据及启动容器化服务等,从而提升Venus项目的部署效率及后期运维能力。

  一直以来,浪潮云海通过在架构优化、权威基准测试、规模化应用、社区贡献、生态完善等方面的持续创新,构建了开放、融合、敏捷、智能的云操作系统,为各行各业提供数字转型、智能升级、融合创新的云基础设施;同时持续推动OpenStack等开源技术在中国及世界范围的发展,为打造创新技术引擎不懈努力着。

  未来,浪潮云海在不断推进OpenStack创新发展的同时,会努力为更多新兴业务提供安全可靠的云基础设施,为构筑云数智融合的智算底座不懈努力。




图片.jpg


本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。