了解容器相对于虚拟机的关键优势,对于了解基于容器的应用程序成功运行所需的存储功能至关重要。

作者:Scott Sinclair来源:企业网D1Net|2020-08-03 10:53 收藏 分享
现代企业的成功取决于以数据为中心的规划速度和效率。数据提供了一种战略优势,为开发人员提供正确的工具和数据对于满足业务需求至关重要。

因此,企业正在迅速认识到容器相对于虚拟机的优势,以实现ITOps和DevOps实践的现代化。在对IT存储管理员最近的一项调查中,Enterprise Storage Group(ESG)公司发现,41%的受访者表示将容器用于生产应用程序,另外33%的受访者表示将容器用于测试/开发活动。

容器相对于虚拟机在存储方面的优势_第1张图片

人们通常将容器与虚拟机进行比较,尽管容器规模更小并且需要的开销更少。这两种应用程序可以采用相同的基础设施,这一点很诱人。实际上,容器与虚拟机有很大不同。如果目标是使基于容器的应用程序环境的价值最大化,那么了解这些差异如何影响IT基础设施设计是至关重要的。

容器与虚拟机之间的主要区别

与虚拟机不同,容器持续的时间是短暂的,它们会自动启动和关闭。但是像虚拟机一样,容器需要访问持久性存储,以在生产环境中发挥其全部潜力。如果没有持久性存储,则在容器关闭时数据会“死亡”。基于容器的应用程序的企业级存储基础设施必须提供功能强大的持久存储。但这只是一个开始,为了更好地发展,容器环境需要支持容器具有轻量、移动和短暂特性的存储生态系统。

容器相对于虚拟机的优势

企业在设计强调容器与虚拟机相比具有优势的存储生态系统时,首先要确定与虚拟机不同的容器的关键方面:

(1) 容器轻量化意味着更大的移动性。容器是为移动性而设计的,这与可以移动但主要是为固定状态的虚拟机不同。因此,容器更有可能使用公共云服务进行部署,并在混合云和多云环境之间移动。

在ESG公司对基于容器的应用程序环境的研究中,70%的受访者表示,他们更喜欢将公共云和私有数据中心结合用于基于容器的应用程序。而在对支持容器环境的存储管理员的另一项调查中,超过三分之一的受访者表示,在混合云或多云环境中管理容器存储是他们与存储相关的最大挑战之一。对于虚拟机,有可能进出云平台。对于基于容器的环境具有这种移动性是人们所期望的。

(2) 容器的短暂特性要求具有更高的性能。与虚拟机相比,容器的另一个优点是它们的短暂特性。具有即时性的容器必须迅速运转起来,而传统的IT流程不能减慢短暂的、加速的应用程序环境。

例如,没有时间提交故障单让存储管理员人工配置卷。容器在大多数情况下必须自动配置大量资源:重构当今的许多应用程序可能会导致数百个(甚至数千个)微服务同时运行。支持的存储环境必须能够快速一致地处理对新存储资源的大量请求。

这一要求不仅提高了对使用容器的良好存储性能的需求,而且还意味着存储基础设施必须更好地交付数据服务,例如调配新的卷。在ESG公司进行的一项研究中,超过三分之一的支持容器环境的存储管理员认为,存储性能是他们与存储相关的最大的持久性难挑战之一,将近三分之一的存储管理员将存储资源调配的速度视为最大的挑战。

专注于存储灵活性、一致性和性能,以使基于容器的应用程序获得最佳结果。

企业需要的存储功能

考虑到这些特性,重点关注几个存储基础设施功能以最大限度地利用基于容器的应用程序是很重要的。在设计企业存储基础设施以支持容器时,需要关注以下四个特征:

(1) 提供一致、标准化和抽象的存储环境的能力。尽管Kubernetes的大多数实现方式提供了一些共性,但其余的变化可能会增加复杂性。开发人员需要在Kubernetes的各种迭代(或其他容器编排框架)之间建立标准化的抽象层,以便这些迭代可以轻松且无缝地相互通信。实现这种必要的标准化的一种方法是容器存储接口(CSI)开源项目,该项目提供了一种标准化的机制,用于跨Kubernetes、Mesos和Docker等不同容器编排系统进行存储。在考虑存储选项时,需要寻找为容器环境提供容器存储接口(CSI)驱动程序的存储选项。

(2) 在混合云环境中进行一致的管理、监视和控制。标准化可以减轻开发社区的负担,但是管理员需要在整个基于混合或基于多云容器的应用程序环境中建立一致的存储功能和管理。优先考虑为单个存储终结点提供一致的工具集和一致的用户体验的存储技术,以应对内部部署工作负载。

(3) 下一代性能。任何支持基于容器的应用程序的存储环境都应使用闪存设备。基于NVMe的存储架构以及旨在支持存储级内存的架构也可以提高整体存储性能。但是,性能要求超出了以低延迟满足高水平的读取和写入请求的能力,企业必须准备好存储环境来处理成千上万个微服务同时启动的潜力。

在评估容器的存储技术时,需要考虑存储性能的所有方面:延迟、带宽、提供和执行数据服务的能力以及可扩展性。存储技术必须能够快速传输数据,而且还必须能够快速地提供数据服务。IT部门必须能够快速有效地将持久性存储连接到那些微服务,并且存储设备必须能够随着需求的增长而扩展其性能。

(4) 规模和硬件灵活性。人工配置存储环境所需的时间和精力对于容器而言并不现实。应用程序开发团队需要一种可以快速扩展的方法,尤其是在将新应用程序或微服务移入生产环境时。该环境应该能够轻松扩展存储资源,而几乎不需要管理员干预。目的是确保开发人员不必等待数小时、数天或数周的时间即可满足请求,并加快开发速度。

容器的存储环境应该跨多种硬件类型和多代产品工作,集成新技术、扩展性能或增加容量都不需要拆掉并更换硬件。这些环境必须能够以尽可能大的灵活性进行扩展。

在考虑容器相对于虚拟机的优势时,具有创造力很重要。构建存储基础设施环境以使应用程序开发人员、IT组织和企业能够最大程度地发挥基于容器的应用程序的潜力,这将需要一种不同的方法。专注于存储灵活性、一致性和性能可以实现最佳结果。

【责任编辑:赵宁宁 TEL:(010)68476606】