裸金属架构、应用场景和趋势解析
裸金属云,也被称为裸机云,顾名思义就是同时拥有物理机级别的性能和云的弹性。
裸金属架构就是直接在硬件上面安装虚拟化软件,再在其上安装操作系统和应用,依赖虚拟层内核和服务器控制台进行管理。
如今Openstack在虚拟化管理部分已经很成熟了,通过Nova我们可以创建虚拟机、枚举虚拟设备、管理电源状态、安装操作系统等。但是有时候虚拟机无法满足要求,比如以下几种情况需要直使用物理机:
-
高性能的计算集群。
-
计算任务需要访问无法虚拟化的硬件设备。
-
数据库主机(有些数据库在hypervisor中运行效率很差)。
-
单租户、专用硬件、安全性、可靠性和其他控制要求。
-
快速部署云基础设施。
但是在裸金属简称Ironic, (英文:Bare Metal Provisioning)诞生之前,物理机管理上一直没有成熟的解决方案。它可以解决物理机的添加,删除,电源管理和安装部署。裸金属(Ironic)提供了一系列常用的驱动,同时提供了插件的机制让厂商可以开发自己的Driver,这让它支持几乎所有的硬件。
另外,在不同行业,基础设施虚拟化技术只是一个云计算要求。但事实上,Bare Metal和虚拟化基础设施非常适合构建云。两种类型的基础设施都可以满足云计算的特征,包括资源池、计量消费、自助服务、和弹性。那么,真正的问题是如何虚拟化和裸机云是不同的。
新兴的Bare Metal为云市场提供了一种方法来补充或替代与专用服务器虚拟化的云服务环境。换句话说,这是一个云服务映射到一个专用的物理服务器。业务可以访问和利用最原生的特性平台,包括访问内存和存储子系统。
Bare Metal适合的应用主是对性能延迟和密集I/O敏感的业务,工作负载等大数据系统、备份和恢复服务等。
但是,没有什么技术是完美的。不同的应用程序对云基础设施会有不同要求。有些应用程序仅仅适合运行在本地环境,不想和其他人共享。云服务提供商是为了满足不同客户的需求,为用户提供多种方案,帮助用户解决IT问题。 今天我们要讨论的就是Bare Metal,云计算的另一种基础架构。
Bare Metal是直接将物理主机通过API云化,让用户可以自助式租用。目前,主要采用Openstack的裸金属(Ironic)服务进行部署。
在概念上,部署物理机跟部署虚拟机对Nova来说是一样,都是Nova通过创建虚拟机的方式来触发,只是底层Nova-Scheduler和Nova-Compute的驱动不一样。虚拟机的底层驱动采用的Libvirt的虚拟化技术,而物理机是采用裸金属(Ironic)技术,裸金属(Ironic)可以看成一组 Hypervisor API的集合,其功能与Libvirt类似。
裸金属(Ironic)技术架构和原理解释,请参考笔者历史发文“详解OpenStack 裸金属(Ironic)管理物理计算资源”。
Bare Metal的概念最早出现在Nova里,物理机和虚拟机管理有很多地方非常相似,比如物理机和虚拟机都需要开机、关机,安装部署,添加和删除,为了避免重复造轮子,他们在Nova中实现了一个物理机的Driver,这样把物理机管理做为计算 资源管理的一个子集了。
后来发现这样做有些问题。
早期Bare Metal作为一个Driver,有着自己的数据库,同一个项目中有两套数据库并不合适。在部署和管理Bare Metal的过程中,有很多需要存储的信息是和部署管理虚拟机是不同的。
更重要的是Bare Metal需要一些比较特殊的行为,比如Discovery,Hardware RAID Configuration,Firmware Updates,Burn-in等这些操作不适合放在Nova里面。比较好的办法是当这些操作完成以后向Nova去注册,作为Nova中的可用的资源并通过Nova Boot去调用这些资源。
经过很多次讨论,开始社区把Bare Metal分离出来了,命名为裸金属(Ironic),从Icehouse版开始进入项目孵化,并在Juno版与Nova进行集成。在Kilo版开始正式的集成到OpenStack项目中来,通过Nova调用裸金属(Ironic)的API来实现对物理机资源的管理和控制。
传统的Hypervisor一般包括创建虚拟机、枚举虚拟设备、管理电源、加载操作系统等功能,与之对应,裸金属(Ironic)可以集成多个厂商驱动并提供一套Hypervisor API帮助物理机实现类似操作,所以,裸金属(Ironic)可以看成提供给Nova的一个Hypervisor驱动。
在架构上对比发现,Bare Metal相对于Virtual 架构具有很多优势,如Consistent Performance (规避虚拟内存和vCPU的OverCommit,CPU和内存独享),安全隔离,定制化,稳定性等。
在IaaS层面,云服务提供商既可以提供专用云主机服务,也可以提供虚拟机服务,但针对信息系统稍具规模的用户而言,就如传统的数据中心服务一样,关键的业务与若干其他一般性业务、应用混杂在某一台或是几台(通过虚拟机的动态迁移,可以实现虚拟机在若干物理机之间的迁移)主机上,可能总是不会让客户十分放心。
而Bare Metal则可以一机独用,也可以视情况分担几个业务应用的负载,可获得独享带宽,而带有云计算标签的服务能力,更可以短时间内完成配置。
迅速响应的速度、灵活的支持、更加低廉的价格、完善方便的管理的有点,将更有可能让专用Bare Metal成为已经初具规模的企业用户所青睐的对象。
既然Bare Metal作为一种云服务。
那么,在商业模式上,它的计费模式是怎么的呢?
-
计费方式和以与Virtualization的架构的云服务计费方式基本一致。
-
对于标准硬件,主要采用按使用时间计费。
-
对于定制的硬件,主要采用包月的计费形式。
-
有些厂商,对存储和网络资源单独按使用量计费。
在方案设计和实践部署中,Bare Metal应用场景主要集中在哪里呢?
-
计算、网络、存储性能要求高的应用
-
尚未实现虚拟化的应用
-
数据敏感的应用
-
主机托管迁移
Bare Metal主要玩家包括公有云的厂商和托管设备厂商,当然,目前很多云服务厂商都提供Bare Metal计算服务和存储专属于服务器(如蜗牛vps)。
Bare Metal服务器的大致分为单处理器多核、双处理器多核、四处理器多核等,但需要综合评估应用需求,匹配规格配置。IO的增加,同时也需要处理器个数的增加。
在服务目录和云特性上,Bare Metal能提供的云服务包含哪些?
-
提供标准规格硬件,同时用户可以根据需求定制服务器
-
丰富的定制能力,包括硬件的基本选项到高级选项,同时提供Pass层的软件应用
-
多样的商业计费模式
-
提供镜像工具
-
快速克隆和重装服务器的能力,在物理和虚拟环境之间实现无缝迁移
在云基础设施未来趋势方面,云服务提供商提供Bare Metal的发展方向?
-
定制化硬件的提供,包括,处理器,内存,存储,网络,以及PCIe,GPU等主流硬件的全面覆盖。
-
对于标准硬件,提供适合该配置的应用场景推荐。
-
提供多种操作系统的支持。
-
缩短环境部署以及配置的时间。
-
服务迁移、高可用性、弹性伸缩等。
评论