0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于DPU的OpenStack裸金属服务快速部署及存储解决方案

DPU高性能云异构算力解决方案 来源:DPU高性能云异构算力解决 作者:DPU高性能云异构算 2024-09-29 14:24 次阅读

1 方案背景和挑战

Openstack作为开源云计算领域的领军项目,凭借其强大的功能、灵活的架构以及活跃的社区支持,在全球范围内得到了广泛的采用。通过Openstack,企业和云服务提供商可以更加高效地管理和利用计算资源、存储资源和网络资源,实现业务的快速部署和灵活扩展,从而赢得市场竞争的先机。

Ironic作为Openstack的关键组件,提供了对裸金属服务的全面管理。通过Ironic,用户可以在云环境中直接控制和管理实体硬件,实现裸金属服务器的自动化部署、管理和监控。

wKgaombxPdKAVzMCAABN2EWUqdQ990.png

原生的Ironic 采用本地物理盘进行启动,其首先将远程镜像下载并写入到本地物理盘中,然后再从本地盘启动进入系统。过程如下:

可以看到,其重点是通过方案具有以下问题和挑战:

a. 部署启动周期长(20分钟左右),业务敏捷性低,用户体验差

(1)两次启动:在部署裸金属服务器时,首先会通过PXE启动一个小的、临时的系统环境,IPA会启动并执行部署任务。部署完成后,服务器会从已安装的操作系统启动。这两次启动过程增加了整体部署时间。

(2)镜像下载:IPA需要从Glance下载完整的用户镜像到内存中或临时存储,这个下载过程取决于镜像的大小和网络条件,可能会非常耗时。对于大型镜像或网络条件不佳的环境,这个步骤可能成为瓶颈。

(3)镜像写入本地盘:下载完镜像后,IPA还需要将这个镜像写入到服务器的本地磁盘上。这个过程也取决于磁盘的写入速度和镜像的大小,可能会进一步增加部署时间。

b. 消耗大量带宽,影响整体网络应用性能

全量下载系统镜像会消耗大量的网络带宽,尤其是在多节点部署或频繁更新镜像的场景下。这不仅增加了网络负载,还可能影响其他网络应用的性能。

c. 系统盘无法扩容,敏捷性和弹性低

在当前部署模型中,用户镜像被直接写入到服务器的本地磁盘上,并且通常是作为一个固定的分区或文件系统来配置的。这意味着如果后续需要增加系统盘的容量(例如,因为数据量增长或应用需求变化),可能需要重新部署整个服务器,这既耗时又复杂。

d. 依赖外部组件,增加系统复杂度和成本

部署过程依赖于多个外部组件,如PXE、TFTP、DHCP等,这些组件需要正确配置和维护。任何一个组件的故障都可能导致部署失败,增加了系统的复杂性和维护成本。

2 方案介绍

2.1 整体架构

为了解决OpenStack Ironic裸金属服务方案的问题,中科驭数基于DPU开发了ironic裸金属服务解决方案,整体架构图如下:

wKgaombxPd2APccyAAGSanaUx2U254.png

在本方案中,DPU支持裸金属服务器的网络和存储资源虚拟化,使得物理服务器能够像虚拟机一样灵活配置,动态添加或删除网卡、硬盘等资源。这为裸金属服务器提供了类似云服务的弹性,同时保持了物理机级别的性能。另外,DPU能够管理远程存储资源,如云盘,使得裸金属服务器可以使用云存储服务,同时通过DPU加速存储I/O,提高读写性能,使得云盘接近本地存储的体验。

本方案主要涉及glance、cinder、nova、neutron、ironic模块。仍然使用ironicnode资源管理裸金属实例。在开源ironic组件(ironic-api、ironic-conductor)之外,自研了ironic-dpu-agent组件,运行在每个裸金属节点的DPU Soc中,用于管理裸金属实例的存储、网络资源。本方案主要包含以下系统组件:

  • Nova:对接ironic,为裸金属提供和虚拟机一致的操作。
  • Ironic-api:裸金属rest api服务。
  • Ironic-conductor:裸金属实例的任务控制服务,负责裸金属开关机、重启、部署等任务。
  • Ironic-dpu-agent:运行在DPU Soc上,与ironic-conductor通过RPC通信,负责管理本节点裸金属实例的存储、网络资源。在裸金属部署阶段,接收ironic-conductor下发的部署指令,在DPU内连接云盘并挂载到host。在裸金属运行时,接收ironic-conductor下发的添加、删除磁盘指令,为host动态添加、删除磁盘。
  • Volume-attacher:负责裸金属磁盘的挂载、卸载操作。
  • Neutron:OpenStack网络服务,为裸金属实例提供network、subnet、port管理功能。
  • Cinder:OpenStack块存储服务,为裸金属实例提供云盘创建、删除等管理功能。
  • Glance:OpenStack镜像管理服务,为裸金属实例提供镜像上传、下载功能。

2.2 方案描述

在基于DPU的OpenStack裸金属服务方案下,实现了裸金属的部署启动、云盘热插拔、cloudinit、冷迁移等常用功能,以下对主要部分做详细描述,并和传统ironic方案进行部分对比。

2.2.1 基于DPU的无盘启动方案

在基于 DPU 的方案中,我们采用直接挂载云盘系统的方式,不使用本地盘,过程如下:

wKgZombxPemARwH-AAA9orOCVFw534.png
  • nova-api接收到创建裸金属实例请求,调用nova-scheduler调度出ironic node。
  • nova-scheduler调用nova-compute孵化裸金属实例。
  • nova-compute根据指定的镜像,调用cinder创建出系统盘volume,cinder调用后端存储以快照方式克隆镜像卷,并不是完整拷贝,速度很快,一般在数秒内完成。
  • nova-compute的ironic virt driver根据指定的cinder volume在ironic中创建node的volume target,作为裸金属实例的云盘。之后调用ironic-api部署node。
  • ironic-conductor的dpu deploy driver调用node所对应的ironic-dpu-agent执行部署任务。
  • ironic-dpu-agent根据volume target在dpu内调用spdk映射云盘,给host侧挂载对应的系统盘。
  • 系统盘挂载完成后,ironic-conductor通过BMC重启裸金属节点,此时BIOS能扫描到系统盘,启动进入系统,裸金属启动完成。

和 Ironic 传统方案相比,没有PXE过程,也只需启动一次。

2.2.2 存储对接

Ironic 原生存储对接方案:

ironic的存储对接在host侧,host网络需和存储网络连通,且host中需安装相关组件,如下图:

wKgZombxPfKAKi_VAAC0Z5zwj1Q473.png

为了完成云盘的挂载/卸载,host 中需要安装一个 ironic-agent,其调用 iscsi-initiator 或相应的存储客户端完成云盘的挂载/卸载操作。Ironic 的 StorageDriver 会配置好存储服务端,并调用 ironic-agent 完成云盘的操作。

基于DPU的存储对接方案:

在基于DPU 的方案中,系统盘和数据盘统一使用云盘,云盘由volume-attacher组件进行分配挂载。裸金属上看到的盘,是DPU 上的 spdk 通过 PCIE 模拟的设备。存储网络也是由 ovs 连接的和配置的。如下图所示:

wKgaombxPfqAZuEoAAC6_n5Dmxw449.png

相比于 Ironic 方案,DPU 方案有以下优势:

  • 存储网络统一走DPU侧,隐藏了存储网络的细节,并可利用 DPU 进行网络加速;
  • 兼容cinder后端存储,存储系统无需适配。云盘是通过cinder创建的,volume-attacher配置spdk连接云盘,模拟出对应的磁盘给到裸金属。

2.2.3 硬盘热插拔

如Ironic存储对接方案中所示,Ironic 中的 StorageDriver 调用 host 中的 ironic-agent 完成硬盘热插拔,用户镜像需安装相关依赖。

在基于DPU 的方案中,由于裸金属上的盘是 DPU 通过PCIE 模拟的,因此,通过动态调整 DPU 上的 spdk 配置,即可实现硬盘的热插拔。

3 方案测试结果

3.1 创建裸金属实例

与创建虚拟机流程类似,选择裸金属的flavor和镜像进行创建。

wKgaombxPgaAdVuLAAEatckPxtk539.pngwKgaombxPgqANTdwAAEgppGnswY769.png

可以看到bm01、bm02两个裸金属实例,均为active状态。通过nova创建裸金属实例,ironic node中会关联instance uuid。

3.2 部署启动时间

我们定义裸金属的部署启动时间为:下发创建裸金属实例的命令,到裸金属实例网络IP可以ping通的时间。

在联创万通 LCWT R7220 服务器上,镜像 OS 为 Ubuntu 22.04 Server,内核版本为5.15.0-106-generic 时测得的启动时间:从创建到可 ping 通共耗时 161 秒(2min41s)。

基于 DPU 的裸金属服务方案启动时间在 2-3min 内,具体耗时取决于服务器类型和镜像版本。相比之下,我们测试传统 Ironic 本地盘方式在 20min 以上。

3.3 添加磁盘

添加磁盘前,裸金属系统内看到的磁盘列表:

wKgaombxPhGAWw2bAAKKPR_MSfc517.png

添加磁盘后,裸金属系统内看到的磁盘列表,nvme2n1是新添加的磁盘:

wKgZombxPheAa453AALSnQQmIrQ242.png

3.4 删除磁盘

删除磁盘前,裸金属系统内看到的磁盘列表:

wKgaombxPh2AVxq0AAKPK9RQC9I366.png

删除磁盘后,裸金属系统内看到的磁盘列表,nvme2n1被删除:

wKgZombxPiSAL7uGAALNphd2YZA768.png

3.5 存储 iops 和吞吐

测试结果如下:

分类 测试项 写iops 写吞吐 读iops 读吞吐
随机读写 NVMe-OF+DPU+NVMe盘 682k 2662MiB/s 736k 2868MiB/s
NVMe本地物理盘 684k 2667MiB/s 980k 3849MiB/s
顺序读写 NVMe-OF+DPU+NVMe盘 682k 2667MiB/s 705k 2761MiB/s
NVMe本地物理盘 686k 2673MiB/s 991k 3892MiB/s

各测试项说明:

  1. 测试项中的NVMe-OF均指NVMe-OF over RDMA
  2. NVMe-OF+DPU+NVMe盘:基于 DPU 通过NVMe-OF协议连接Target,Target 后端是 NVMe物理盘
  3. NVMe物理盘:直接对NVMe物理盘进行测试

可以看到,基于NVMe-OF的卸载方式下,DPU可以达到和NVMe本地盘近似的性能,几乎没有性能损耗。

4 方案优势

基于DPU的方案相较于传统的Ironic裸金属方案,在多个方面展现出了显著的优势。以下是这些优势的详细描述:

a. 交付效率显著提升,大幅改善最终用户体验

云盘启动加速:传统Ironic方案多采用本地盘启动方式,这一过程涉及到镜像的下载、安装及配置,耗时较长,通常需要20分钟左右。而基于DPU的方案采用云盘启动,通过预先配置好的云盘镜像,可以极大地缩短启动时间至2-5分钟。这种快速启动能力对于需要快速部署和扩展的云环境尤为重要,能够显著提升资源交付的效率和灵活性。

b. 存算分离,提升服务敏捷性和弹性

基于DPU的方案实现了存储与计算资源的分离,这种设计使得计算和存储资源可以独立扩展和优化。当业务需求变化时,可以迅速调整计算或存储资源,而无需对整个系统进行大规模的调整,从而提升了服务的敏捷性和弹性。此外,存算分离还有助于实现资源的更高效利用,避免了资源瓶颈和浪费。这种特性对于需要快速响应市场变化和灵活调整业务规模的云环境尤为重要。

c. 控制面与数据面分离,提升安全性和资源利用率

控制面与数据面下沉至DPU:通过将控制面和数据面处理任务下沉到DPU,不仅减轻了Host CPU的负担,还实现了对存储网络和后端存储细节的隐藏。这种设计提升了系统的安全性,防止了潜在的安全威胁,还使得Host侧的资源能够完全专注于业务处理,从而提高了资源利用率。

不侵入用户镜像:基于DPU的方案不依赖于用户镜像进行功能实现,避免了因镜像更新或修改导致的兼容性问题,同时也简化了用户镜像的管理和维护工作。

d. 架构简化,降低复杂度和维护成本

不依赖PXE等组件:传统Ironic方案可能需要依赖PXE(预启动执行环境)等组件来实现网络启动和镜像部署。而基于DPU的方案则通过内置的网络和存储功能,实现了更为简洁的架构设计,降低了系统的复杂度和维护成本。

e. 性能优化,接近本地盘体验

硬件加速利用:DPU内置了多种硬件加速功能,能够充分利用这些特性来提升云盘的性能表现。从测试数据中可以看到,在基于DPU的方案中,云盘性能可以达到接近甚至等同于本地盘的性能水平,为用户提供了更加流畅和高效的数据访问体验。

综上所述,基于DPU的方案在交付效率、存储支持、安全性与资源利用率、架构简化以及性能优化等方面均展现出了显著的优势,为裸金属云服务的发展提供了新的动力和方向。

本方案来自于中科驭数软件研发团队,团队核心由一群在云计算、数据中心架构、高性能计算领域深耕多年的业界资深架构师和技术专家组成,不仅拥有丰富的实战经验,还对行业趋势具备敏锐的洞察力,该团队致力于探索、设计、开发、推广可落地的高性能云计算解决方案,帮助最终客户加速数字化转型,提升业务效能,同时降低运营成本。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 云计算
    +关注

    关注

    39

    文章

    7637

    浏览量

    136819
  • 存储
    +关注

    关注

    13

    文章

    4140

    浏览量

    85347
  • 服务器
    +关注

    关注

    12

    文章

    8750

    浏览量

    84653
  • DPU
    DPU
    +关注

    关注

    0

    文章

    350

    浏览量

    24049
  • OpenStack
    +关注

    关注

    1

    文章

    68

    浏览量

    18882
收藏 人收藏

    评论

    相关推荐

    基于DPU的云原生金属服务快速部署存储解决方案

    的云计算解决方案,它成功地融合了传统云主机的灵活性、便捷性与物理服务器的强大性能与独立性。作为一类特别设计的计算类云服务金属
    的头像 发表于 06-27 10:41 2152次阅读
    基于<b class='flag-5'>DPU</b>的云原生<b class='flag-5'>裸</b><b class='flag-5'>金属</b><b class='flag-5'>服务</b><b class='flag-5'>快速</b><b class='flag-5'>部署</b>及<b class='flag-5'>存储</b><b class='flag-5'>解决方案</b>

    基于DPU的云原生计算资源共池管理解决方案

    项目,它提供了部署和管理大规模计算、存储、网络等基础设施的一整套软件堆栈。在OpenStack技术栈中,Nova服务主要负责管理虚拟化云主机,而Ironic
    的头像 发表于 07-09 11:52 887次阅读
    基于<b class='flag-5'>DPU</b>的云原生计算资源共池管理<b class='flag-5'>解决方案</b>

    《数据处理器:DPU编程入门》DPU计算入门书籍测评

    实践 最后一部分是数据加速应用的落地: 基于各个平台的算力解决方案 推荐的存储解决方案 边缘计算方案 网络平台与融合加速技术 本书不能帮你完全入门DOCA和相关的
    发表于 12-24 10:54

    太原linux内核驱动培训之OpenStack开发

    “中国开源云联盟”,联盟中的企业和单位将积极扩大成员规模 ,整合参与成员的资源,致力于OpenStack开发、操作系统支持、性能优 化、规模部署 ,针对不同领域探索OpenStack解决方案
    发表于 10-23 14:01

    【产品介绍】“弹性金属服务器”到底有那些特性?

    金属服务能够做到和虚拟机一致的使用体验和业务敏捷。所以,“弹性金属服务器”应该具备如下八个关键特征: 特征一:分钟级交付云
    发表于 05-18 21:42

    【产品场景】弹性金属服务服务于市场的技术概要分析

    摘要: 弹性金属服务服务于市场的技术概要分析混合云和第三方虚拟化软件部署伴随着公有云的高速发展,混合云打通客户线下专有云和线上公有云资源
    发表于 05-18 22:26

    一种快速、自动部署OpenStack云平台的解决方案

    提出了一种快速、自动部署OpenStack云平台的解决方案,以提高OpenStack部署效率。
    发表于 12-28 14:05 0次下载
    一种<b class='flag-5'>快速</b>、自动<b class='flag-5'>部署</b><b class='flag-5'>OpenStack</b>云平台的<b class='flag-5'>解决方案</b>

    金属云基础设施的需求不断增长,爱立信解决方案简化部署

    如今,5G推出正如火如荼,云原生概念也风头正盛。然而,云原生部署需要更高效、更灵活的云基础设施。因此,许多企业IT团队把目光投向了金属云基础设施。那么,什么是
    的头像 发表于 06-18 15:19 1548次阅读

    NVIDIA BlueField DPU加速UCloud金属物理云产品,成本降低34.4%

    以前基于网关的金属物理云解决方案存在过于昂贵,部署不够灵活,不支持计算、存储分离等限制,从2018年起,UCloud 开始积极探索基于NV
    的头像 发表于 12-15 12:02 3386次阅读

    基于NVIDIA BlueField DPU金属服务解决方案

    NVIDIA BlueField DPU 实现金属的弹性扩展、自动部署与极致性能。
    的头像 发表于 01-21 09:36 1694次阅读

    网易数帆推出NVIDIA BlueField DPU金属服务

    那么网易数帆的金属服务解决方案必定会面临不小的挑战,因为其既需要满足以上市场普遍的特性,又需要将
    的头像 发表于 01-24 10:22 1229次阅读

    NVIDIA BlueField-2 DPU金属服务提供飞跃式性能提升

    UCloud 采用 NVIDIA BlueField-2 DPU 在公有云中提供金属服务,提供极致的计算性能、完全的网络卸载和强大的云盘存储
    的头像 发表于 08-16 09:23 1898次阅读

    网易数帆基于NVIDIA BlueField DPU 构建完备的金属服务解决方案

    最终,网易数帆金属服务解决方案选择了 OpenStack 云管理软件架构。此外,还选择了 Ironic 与
    的头像 发表于 02-14 10:06 671次阅读

    星云智联为金山云打造金属服务DPU解决方案,助力高端用户实现更强大更高效的上云体验

    国内领先的DPU和智能网卡芯片与解决方案提供商星云智联近日宣布,与中国知名云服务商金山云共同开发了基于星云智联NebulaMatrix DPU解决方
    的头像 发表于 02-20 09:06 512次阅读

    基于DPU的云原生金属网络解决方案

    金属服务器是云上资源的重要部分,其网络需要与云上的虚拟机和容器互在同一个VPC下,并且能够像容器和虚拟机一样使用云的网络功能和能力。
    的头像 发表于 06-22 10:38 413次阅读
    基于<b class='flag-5'>DPU</b>的云原生<b class='flag-5'>裸</b><b class='flag-5'>金属</b>网络<b class='flag-5'>解决方案</b>