在本文中,我们将与广大读者朋友们共同研究关于私有云的关键要求和组件——其中包括容器平台的使用,以及在数据中心存储中使用私有云所带来的影响。
对于大多数人来说,云服务通常都意味着公共云服务基础设施,例如由亚马逊网络服务(AWS)和微软的Azure所提供的基础设施。
而相比之下,私有云倾向于通过在企业内部部署相应的基础设施,来提供与公共云服务类似的功能特征,通过基于服务的交付模型来提供对资源的访问。
那么,构建一款私有云将会涉及到什么呢,同时其又将对企业数据中心的存储产生怎样的影响呢?
而在我们深入了解如何部署和实现私有云服务之前,我认为我们应该先花一点时间来回顾一下关于云服务的一般性通用特性。
云服务,无论其是私有云服务还是公共云服务,都应符合以下条件:
弹性——具备能够根据用户的需求横向或纵向进行规模化缩放的功能。从用户的角度来看,云资源通常被视为是“无限制的”,尽管在私有云服务中往往会存在预算方面的限制,这使得无限的概念很可能受到约束限制。
基于服务的——云服务资源作为服务提供,借助服务定义,并从使用这些服务的硬件提供抽象。请求是针对虚拟实例的——而不是服务器——或基于性能和延迟需求的存储容量。
多租户——基础设施架构需要能够支持多用户,而且,这些用户不会在同一平台上感知到彼此或影响到其他用户。
按需访问——具备通过门户或应用程序编程接口(API)进行自动请求和配置资源的能力。
计费结算和报告——具备可以报告使用情况的统计信息,按照高级别的细粒度(通常是每小时或每天)进行计费结算的功能(请注意,公共云服务提供商按照每小时收费,这对于私有基础设施可能是不切实际或不合适的)。
对于私有云服务而言,某些在公共云服务中所见到的某些功能特征并不一定是必需的。
例如,一些企业组织可能选择不实施计费(或甚至退款),因为用于这些企业组织可能不存在直接为业务部门计费的财务机制。
“无限”这一概念通常不是私有云服务的要求,因为企业的IT预算通常是受到限制的,无论是业务部门或IT部门的支出都是受限的。
私有云业务流程
私有云服务的一大关键部分是根据客户请求提供资源协调的框架。这些包括开源平台(如OpenStack和CloudStack),专有工具(如VMware的vRealize Suite云管理平台和即将推出的Azure堆栈),微软公共Azure的内部部署自动化套件。
还有一些平台,如Mesosphere,Kubernetes和Docker Swarm,它们能够提供开源解决方案,均能够部分的实现私有云服务。
最后,我们应该提及供应商,如Zerostack和Platform 9,这些供应商们都在寻求优化我们上文已经提到的一些工具。
私有云存储
当我们查看这些平台使用存储的方式时,我们会看到各种各样的部署方式。
而其中最成熟、且最容易理解的存储选项便可能是VMware。
VMware vSphere是vRealize Suite套件的核心组件,支持一系列现有的block块(光纤通道,iSCSI)和基于文件(NFS)的系统。供应商的支持是广泛的,一旦将存储配置到基础架构中,就可以作为虚拟机创建的一部分自动配置。
OpenStack有一系列的存储支持选项,称为项目,包括了块存储(Cinder)、文件存储(Manila)和对象存储(Swift)。每个项目定义了供应商可以编码的一组API,并通过OpenStack平台自动配置,映射存储平台到实例(虚拟机)。
相同水平的应用编程接口支持也可在Kubernetes中获得,实现为容器实例的持久性的存储配置。
这可以包括传统的协议(如iSCSI和NFS),而且可以扩展存储,如GlusterFS和Ceph。还有一个假设,用户需要人工手动管理存储(也许只是局部的JBODs),但存储硬件供应商已经开始加入Kubernetes卷的支持。这方面的一个例子便是NetApp的Trident项目的自动化存储配置。
Docker部署倾向于使用存储配置,在主机上运行容器,这些容器可以是本地的文件系统或安装到服务器的块设备。 Flocker是一款开源工具,通过一组API为供应商提供支持,从而从块设备到容器实现自动化的配置供应。借助其EMCCode,Dell EMC公司支持将其许多现有的存储平台连接到Docker系统。这项工作大部分是最好的,但只提供社区支持,因此也许不适合关键的生产环境。
向私有云添加存储
我们可以从私有云消费存储的方式看到,必须考虑一定的差异。最明显的是自动化。存储器应该以一种方式插入到业务流程框架中,以便于通过业务流程工具自动配置逻辑单元号(LUN)和文件共享。
而这种自动化代表了两个问题。
首先,有安全性的问题。是从资源池提供存储,还是业务流程平台可以访问整个存储阵列或环境?
第二,有什么控制来限制存储资源的消耗?我们可以设想一种场景,在这种场景下,私有云的按需能力可能耗尽可用的存储容量。
这个问题需要我们考虑维护的问题。 存储解决方案的可扩展或更换到底有多容易?
通常,企业会为消耗大量资源的大项目部署存储迁移。但这不是作为公共云环境中的问题出现的,其中存储问题从客户方面被模糊化了。
在私有云中如何管理存储迁移?
当实例被创建或销毁时,可以从新的存储容量中配置新的应用程序。这使得现有实例的迁移得以处理。这些可能必须离线迁移或通过某种快照过程迁移。无论采用哪种方式,都需要以对服务的影响最小的方式,实现新的存储平台的引入。
值得注意的是,上述大多数问题尚未得到充分解决。因此,整个存储平台可以提交到云解决方案,而不是与其他用户共享,因为所需的安全控制不存在。这在大型环境中可能是实用的,但在较小的IT企业组织则可能导致问题。
选择合适的云服务供应商
选择一家供应商或一款存储产品需要考虑业务流程平台和存储供应商的可支持性。
较旧的(更可能被归类为传统遗留的)的平台将更难以集成整合,因为它们通常没有本地自动化功能。这些往往是以后添加的。
NetApp SolidFire是能够提供本机API的存储平台的一个示例,支持集成到所有通用配置平台。
另一种方法是选择横向扩展的存储解决方案,无论是开源平台还是SDS提供商的解决方案。Ceph是一个直接集成到OpenStack中的解决方案,可以提供对象、块和文件支持。
还有横向扩展的解决方案,如StorPool(块存储),StorageOS(专用于容器),来自EMC的ScaleIO,来自HPE的StoreVirtual以及来自VMware的本地Virtual SAN。
使用这些平台的优点是存储可以被部署为服务器的一部分,而不是具有专用的存储软件。例如,Virtual SAN等集成整合的解决方案在vSphere中直接支持,从而为虚拟实例启用了基于策略的存储配置。
构建私有云和持久存储的选项范围广泛,并且初看起来可能会造成混乱。但请记住遵循公共云服务(弹性,按需,多租户和基于服务)的主要原则,是为了帮助为您的私有云基础架构选择最合适的解决方案提供良好的基础。
好文章,需要你的鼓励
Blackwell GPU的生产制造工作量达到Hopper GPU的两倍有余,但带来的收入仅增加至约1.7倍。
由AMD驱动的El Capitan超级计算机(现位于美国劳伦斯利弗莫尔国家实验室(LLNL))成为世界上速度最快的超级计算机。