一条龙! 有关基于 OpenStack 如何部署HPC

2018-04-08  本文已影响0人  开源村osv

毫无疑问,OpenStack 是一个令人兴奋的项目,也是领先的开源基础设施即服务平台。在过去的几年中,笔者为多个客户和用例构建并部署了数十个 OpenStack 云。而在过去的一年中,笔者一直在研究 OpenStack 上高性能计算( HPC )的用例。

本文列出的是一些有关托管高性能和高吞吐量工作负载的注意事项。

首先,让我们从在 OpenStack 上托管 HPC  工作负载时可以使用的三种体系结构开始:

1、在 OpenStack 上虚拟化 HPC (在此架构中,HPC 集群的所有组件都在 OpenStack 中虚拟化)

2、OpenStack 上的裸机 HPC ( HPC 的所有组件都使用 OpenStack Ironic 部署在裸机服务器中)

3、虚拟化的头节点和裸机计算节点(头节点(调度器、主节点和登录节点)在 OpenStack 中虚拟化,计算节点使用OpenStack Ironic  部署在裸机服务器中 )

现在你已经对可以在 OpenStack 中部署HPC 软件的三种体系结构有了大概了解。

下面将讨论一些托管这类型工作负载的 OpenStack 最佳实践。

网络

对于 OpenStack 的网络方面,有两个推荐的配置选项:

—— provider 网络: OpenStack 管理员创建这些网络并将其直接映射到数据中心( L2 )中的现有物理网络。由于直接连接到  L2  交换基础设施, provider  网络不需要使用 OpenStack 控制平面来路由 L3 流量,因为它们应该在 DC 网络拓扑中具有 L3 网关。

—— SRIOV : 建议基于性能要求的 HPC 工作负载使用 SRIOV / SR-IOV (单根输入/输出虚拟化)。SR-IOV 使 OpenStack 能够通过使用可用的 SRIOV NIC  虚拟功能(  VF  )将物理 NIC 的功能直接扩展到实例。另外,对 IEEE 802.1br 的支持允许虚拟NIC 与物理交换机集成并由其管理。

需要提到的是,在各个供应商进行的测试中,结果显示 SR-IOV 可以在单个虚拟机/实例的 CPU 开销成本较低的情况下实现接近线速的性能。

实施 SRIOV 时,你需要考虑两个基本限制:无法对使用 VF 设备和绕过 OpenStack 的安全组的实例使用实时迁移。

存储

对于 HPC 体系架构,有两个主要的存储类别需要考虑:

——OpenStack 存储:镜像( Glance )、临时存储( Nova )和卷( Cinder )

——基于 HPC 集群文件的数据存储:由 HPC 集群用于存储数据

基于这两个类别,下面是在设计集群时需要考虑的一些建议:

OpenStack 存储:

—— Glance 和 Nova :对于 Glance 和 Nova 存储,笔者推荐 Ceph 。Ceph  的重要优势之一( 除了与 OpenStack 的紧密集成之外 )是你可以在实例创建时获得镜像拷贝提供的性能优势。临时工作负载的另一个优点(在这种情况下不使用  SRIOV )是在计算集群成员之间进行实时迁移的能力。

—— Cinder :对于此 HPC 用例中的 Cinder 后端,我推荐使用 Ceph (与前一点相同的优势)以及支持 Cinder 驱动程序的 NetApp 、EMC VNX 和类似系统的 NFS / iSCSI 后端。

基于 HPC 集群文件的数据存储:

HPC 中常用的并行文件系统(如 Lustre、GPFS、OrangeFS )应通过专用的 SRIOV / Provider 网络访问。另一个推荐的后端是  Ceph ,也提供直接从SRIOV /Provider 网络访问以获得更好的性能。

重要信息:

一般来说,Ceph 提供了非常灵活的后端。体系架构良好的 Ceph 集群可以在不同配置/体系结构中让多种类型的工作负载受益,例如:

——基于以太网的连接可通过前端的更高吞吐量NIC接口和后端存储流量( 10/25/40/50/100 Gbps )提高性能,以及可增加可用带宽量的 LACP 配置。

——存储服务器组件可以是 NVMe、SSD、SAS 和 SATA 的组合。通过量身定制提供所需的 IO 性能。

——该技术的分布式特性提供了一个灵活且有弹性的平台。

接下来要考虑的是在 OpenStack 上自动部署 HPC应用程序。为此,可以使用多种工具:来自编排系统的 Heat、Ansible 或 API 调用。

上一篇下一篇

猜你喜欢

热点阅读