盖蒂张照片

探索存储编排服务,福利,挑战

编排和自动化有助于存储管理。在这里,深入了解编排的技术细节,包括容器和kubernete,以及它如何提供帮助。

在编写编排时难以抵制的音乐模数,我想从玛丽雪尔利的Magnum Opus开始引用,《弗兰肯斯坦》,讲述了一组没有生命的人体部位的动画故事。我猜想她在写这段话时,总结了大多数编曲工具用户的感受:

11月的一个阴沉的夜晚,我看到了自己辛劳的成果。带着一种几乎相当于痛苦的焦虑,我收集了我周围的生命工具,希望我能给躺在我脚下的无生命的东西注入一点存在的火花。

自动化——编制的路径

我们都熟悉自动化- 使用技术和机器来承接人类不可能,重复或危险的任务。自动化有助于减少人类错误 - 和死亡 - 并急剧增加生产力。从18世纪的大部分工业革命都是在自动化上建立的,从使用蒸汽力量,使肌肉和肌肉布扎在纺织制造的纺织制造中的纺织吉恩斯。

今天的“软件机器人”执行类似的角色,从流程监控到自动化会计系统,几乎没有人参与或根本不存在。它们的无处不在证明了它们的功效。例如,他们可以启动一个web服务器,在墨水水平低时自动订购打印机墨水,或者将收到的电子邮件复制到特定的文件夹。

Orchestration与自动化有关,但它与已经自动化的IT流程和工作流程一起运行,并将它们带到了协调的整体中。在上面的任务或各个组件上方构建的组合物或级别,Orchestration在这些较小的部分中组成更大,更复杂的系统,可能跨多个系统。这也不仅能够建立复杂的工作流程和系统,而且允许以规模的构图,部署和管理这些系统。这样的事情往往是不可能手动完成的。

例如,编排可以帮助管理多个IT任务。就我们的打印机而言,编排不仅有助于订购墨盒,还可以知道墨盒何时到达,并让人来安装。除了自动化事件工作流之外,编排还可以调配服务器、根据传入的工作负载运行上下web服务、执行数据库调配和管理等。

存储编排的插图
通过编排,可以以巨大的尺度管理自动化部件。

编排工具

许多可用的编排工具都是开源的,而且有很多。这不是一个详尽的列表,但其中包括Kubernetes、OpenShift和Swarm。有些是完全商业化的产品,如AWS或Microsoft Azure提供的产品。

大多数采用声明式编程概念。命令式编程描述如何执行任务,而声明式程序则描述执行任务必须做什么。用音乐来比喻,乐谱是陈述性的,因为它告诉我们必须做什么,通过它对单个乐器和它们将要演奏的音符的陈述性描述。

这是实现高度协调(有时称为协调)的关键基础设施代码IaC)。在这里,我们可以使用定义文件或主要是声明性程序来管理构建在其上的物理和虚拟基础设施,而不需要物理配置硬件或使用交互式工具来实现我们的目标。一个软件可以为我们做这件事。

kubernetes和容器

现代应用越来越多地建造了微服务的概念。这些服务被描述为“细粒度”。它们通常提供许多应用程序可以重用的一个小功能 - 例如,问题票证的自动开放。与这些微服务通信的协议是轻量级的,例如普遍存在的HTTP。容器是由高效网络协议连接的小型可重复使用部件组成的应用程序,所有这些都与其依赖关系和配置一起打包。

库伯内特斯部署并执行任务管理这些容器按比例。它已成为这一领域的主导技术。它有一个由DevOps和最终用户组成的蓬勃发展的社区,因此我将使用它作为存储编排的海报。

应用程序通常会增长以跨越多个服务器部署的多个容器,并提高了管理的复杂性。Kubernetes通过管理和将Compute,Storage和其他资源进行管理和分配给容器和调度,在那些容器运行时和何时运行。容器实际上被分组成POD,Kubernetes的基本操作单元,然后缩放这些窗口以满足计算需求。

Kubernetes还管理服务发现(这个容器做什么?),处理负载平衡(容器是否对资源进行了最佳利用?),跟踪资源分配(我是否有足够的资源来满足需求?),并根据利用率进行伸缩(如果需求增加或减少,我应该多跑还是少跑?)它还监测资源的状态和健康状况。当出现问题时,它允许应用程序通过自动重新启动或复制容器来提供自修复功能。

集装箱存储

存储始终难以管理,因为它具有状态或持久性。鉴于发送到存储系统的数据流,它保证它将在将来的某些不确定的点处以表现方式返回相同的数据流。这是一个有时难以保留的承诺。

小型任务或流程的自动化实现了它们的高效管理。编排更进一步——自动化部件可以在超出人类能力的范围内进行协调和管理。

Kubernetes中的存储通过了容器存储接口(CSI),以与无关方式将块和文件存储系统连接到集装工地工作负载的标准。基本上,CSI允许声明和使用容器可用的存储接口。它提供了IAC的承诺。

最初,Kubernetes只允许短暂存储。只有在容器的一次执行期间才能保存和检索数据流。任何重新启动都会让你重新开始,而最后一次执行这个容器的存储就会被遗忘。

许多应用程序不那样工作。事实上,难以编写完全独立于数据变化的应用程序。例如,想象一下,例如,航空公司预订系统,不记得它销售的乘客票或者有座位3A的航班。

这需要一点时间,但现在,可以通过具有持久性的合适CSI驱动程序使用存储子系统。管理员现在也可以在容器之间共享存储。这种开发提高了支持有状态应用程序的能力。但是,它带来了一系列与存储的传统使用和管理相关的其他潜在问题,如备份和恢复、复制以及用于灾难恢复和一致性的检查点。

编制有帮助吗?

通常,规模是效率的敌人。在规模大的时候,管理就变得困难了,而第一个方法就是至少让我们能做到的那些部分自动化。小型任务或流程的自动化实现了它们的高效管理。编排更进一步——自动化部件可以在超出人类能力的范围内进行协调和管理。

IaC彻底改变了我们对物质资源的看法。软件定义的存储使我们能够在不引用硬件的情况下配置,部署,监视和管理存储。因此,CSI使存储易于管理运行时环境的其他软件定义的资源。

编配没有帮助的地方是当我们自动化的低效率;这不会让他们变得更好。效率,或者把正确的事情做好,并不等同于效率。正如一位不知名的智者所说:“自动化可能是一件好事,但不要忘记它始于《弗兰肯斯坦》。“商店仍然需要人力人力技能和专业知识,因为我们将”被“的”被“陷入生气的部分”。

关于作者
亚历克斯·麦克唐纳是独立顾问和董事长
存储网络行业协会(SNIA)云存储技术倡议,承诺促进云基础设施及其数据服务中存储的采用、增长和标准化,协调和管理,以及促进多云环境中数据的可移植性。

sn是由跨IT领域的成员公司组成的非营利组织。全球公认和可信的权威机构,SNIA的使命是在开发和促进供应商中立的架构、标准和教育服务,以促进信息的有效管理、移动和安全方面领先存储行业。

深入挖掘数据存储策略

搜索灾难恢复
搜索数据备份
搜索聚合基础设施
关闭
Baidu