Nutanix Xi IoT:面向开发者的概述





0/5 (0投票)
边缘设备的异构性使得部署应用程序变得困难。Nutanix Xi IoT 为开发者提供了一个环境,让他们能够专注于自己最擅长的事情:创建将数据转化为决策的应用程序。
Nutanix Xi IoT 平台降低了部署边缘计算解决方案的复杂性。它通过 Docker 容器提供简单的部署、灵活的数据管道、可重用的数据转换函数、可插拔的机器学习架构以及易于使用的应用程序编程接口 (API),从而缩短了应用程序大规模部署到边缘的开发和部署时间。
为多样化的物联网开发
与互联网本身一样,物联网 (IoT) 包含各种各样的边缘设备,它们具有不同的配置、使用不同的通信协议并具有不同的物理接口。
跨设备以一致的形式获取数据本身就可以是一项复杂的任务。在许多情况下,来自这些设备的数据流必须转换为应用程序可用的格式。跟踪所有这些设备、数据流以及处理它们(的应用程序)可能是一项艰巨的任务,而这项任务主要落在开发者的肩上。
此外,捕获、传输、处理和响应边缘设备数据的延迟会产生滞后。这种滞后会影响及时响应事件或信息的能力。如果数据在云端进行管道传输和处理,那么本可用于采取行动的时间窗口可能已经过去。
通过将问题的计算部分分布到边缘,我们可以以有限的延迟执行检测-决策-操作逻辑。例如,即时检测可能意味着一个有缺陷的产品永远不会离开生产线,更不用说到达客户手中了。收到有缺陷的物品的后果可能从不方便到灾难性不等。如果是服装,可能需要退货。这虽然会对企业产生各种负面影响,但与飞机部件出现缺陷所造成的后果相比,则微不足道。
Nutanix Xi IoT 改变了边缘部署模型
来自物联网边缘设备的数据进行边缘计算显然可以使企业受益,但正如我们之前提到的,随着设备数量和多样性的增加,试图为这些设备编写应用程序的开发者的工作量也在增加。配置设备、联网设备、管理设备和数据流……这些任务都会分散开发者的注意力,让他们无法专注于主要任务:创建使用物联网数据来满足您业务需求的应用程序。
下图显示了传统的物联网部署。传感器将数据发送到物联网网关。物联网网关提供了一系列服务,例如通信协议翻译、安全性和数据过滤。所有基于决策的数据处理都发生在云端,而开发者通常负责在物联网设备、网关和云资源上编写解决方案。
在下图中描绘的边缘计算模型中,计算能力被部署到边缘平台。需要低延迟的数据处理和分析在边缘运行的应用程序内执行。数据也会传递到云端,在那里可以与其他数据源集成,例如其他物联网设备,或者通过其他数据处理工作流进行丰富,以开发新知识。
Nutanix Xi IoT 简化了应用程序到边缘的部署
Nutanix Xi IoT 平台从根本上改变了开发人员创建物联网边缘应用程序的方式。上图描绘了 Xi IoT 解决方案的部署。它包含以下组件:
- 数据源
- 数据存储
- 数据管道
- Application
Xi IoT 平台使用运行在云端的基础设施和应用程序管理控制面板部署到边缘。该仪表板通过用户友好的界面能够将应用程序部署到数千个边缘位置(作为虚拟机或裸机服务器)。您还可以通过 Xi IoT API 推送容器化应用程序。
开发者的常见任务是配置边缘设备以获取数据流。Xi IoT 基础设施和应用程序生命周期管理仪表板简化了这项任务。开发者无需编写代码,只需通过选择适当的参数即可配置边缘平台。Xi IoT 使用这些参数来组装数据流。
Xi IoT 还提供流式数据的存储,以便数据管道或容器化应用程序可以对其进行操作。通过在开发者和环境之间创建抽象层,Xi IoT 简化了开发者的任务。
开发者使用 Xi IoT 解决方案的数据管道部分来指定使数据可供应用程序使用所需的转换。为此,开发者可以创建自定义转换函数,或者使用 Xi IoT 库中已有的函数。Xi IoT 支持使用 Python、Go 或 JavaScript 编写的函数。
转换函数可以以小增量创建,然后链式连接,从而允许构建、测试和维护低代码解决方案。转换可以重用、克隆和特化,从而为开发者提供进一步的效率。
作为一项高级选项,开发者还可以将转换创建为容器化应用程序,并直接部署到边缘位置。
数据管道将适当的数据提供给 Xi IoT 仪表板中定义的函数或在边缘运行的容器化应用程序。数据可以保留在您的私有数据存储中(可能用于合规性跟踪),或者轻松连接到外部云服务,例如 AWS Kinesis,以便与机器学习或其他分析技术集成。
Nutanix 利用 Kubernetes 创建一个环境,使开发者能够在边缘运行容器化应用程序。开发者使用流行的 Docker 容器技术创建容器化应用程序。容器化应用程序本身执行所有必要的数据转换和分析,并通过 Xi IoT 部署容器。因此,如果开发者知道如何创建容器,他们很快就能知道如何运行 Xi IoT 上的应用程序。
Xi IoT 的关键在于,它通过减少开发者在部署本身中的参与来简化应用程序到边缘的部署。相反,开发者可以将大部分精力集中在支持其业务目标的关键数据转换上。
Xi IoT 边缘应用实例
边缘计算的一个典型应用场景是使用摄像头和图像分析,而 Xi IoT 在这方面表现出色。示例场景包括检测制造缺陷或零售线路拥堵、停留时间或显示器流量分析。Xi IoT 的优势在于它将架构方面的考虑从应用程序和数据转换中移除。Xi IoT 允许将单个应用程序包部署到多个不同的环境中。
例如,开发者可以创建一个应用程序,该应用程序检查时间序列数据流——它摄取实时视频流,将流转换为图像,分析图像,并根据分析执行一些额外的操作。如果产品存在缺陷,它可以更改生产;提醒销售人员客户需要帮助;或者仅仅将图像分类以供其他应用程序管道进一步处理。
让我们深入探讨这个示例应用程序的细节:开发者希望将实时视频流转换为图像,然后选择图像中的特定区域进行进一步分析。数据从摄像头和其他源流向边缘平台。数据通常需要经过一些转换才能被应用程序使用。
在传统的边缘应用程序中,数据可能会被流式传输到中心存储。应用程序服务获取视频数据,将其转换为图像,并将图像保存到另一个存储位置。另一个服务分析图像,启动更多工作流服务,并可能进行额外的存储。开发者负责指定、配置、部署和管理所有这些服务……以及开发、部署和管理。
通过 Xi IoT,开发者使用基础设施和应用程序生命周期仪表板中选择的参数来配置边缘平台。设置边缘平台通常就像点击几个按钮一样简单。用于图像处理的视频馈送由 Xi IoT 处理,并以标准格式提供。如果需要自定义应用程序,可以将其配置为标准的 Docker 容器并通过 Xi IoT 进行部署。
数据转换在 Xi IoT 数据管道中执行。这是开发者将花费大部分时间的地方,而 Xi IoT 大大简化了开发过程。开发者只需编写和部署处理数据转换所需的特定函数。在这种情况下,开发者只需处理图像分析。在开发过程中,这些函数将成为用于执行数据转换的可重用代码模块库。无需进一步的应用程序服务器配置或部署。
处理后,数据管道用于将数据传递到公司选择的任何云存储。Xi IoT 可以通过标准 API 将数据传输到各种云类型,包括 AWS、GCP 以及托管/本地私有云。将数据传输到存储的细节再次由 Xi IoT 抽象,因此开发者无需执行其他开发任务。
在此场景的 Xi IoT 版本中,开发者的时间几乎完全集中在开发实际的图像分析代码上。此外,所有处理都在边缘平台完成,这意味着您可以获得低延迟边缘计算的优势,而无需为单个设备配置和部署应用程序。
简化边缘计算
边缘设备的异构性使得部署应用程序变得困难。Nutanix Xi IoT 为开发者提供了一个环境,该环境可以处理这些复杂性,并将它们简化为仪表板上的选择——让开发者能够专注于自己最擅长的事情:创建将数据转化为决策的应用程序。