定位

Murano是一个基于云的IoT软件平台,提供安全、可扩展的基础设施,支持端到端的生态系统,帮助客户安全、可扩展地开发、部署和管理应用、服务以及联网产品。

功能

  • Murano平台简化了整个IoT技术栈,可视为集成在一起的多个云软件层。
  • Murano提供IoT基础设施、开发环境和功能集成,包括设备连接、产品管理、数据路由、服务集成(如data store/告警/第三方分析平台)、应用开放API、用户认证/角色/权限和应用托管。
  • Murano允许与第三方软件集成,开发者只需要关注用户应用和设备应用。
  • Murano能够使开发者快速创建整个IoT系统,同时保持灵活性,允许添加新功能和自定义功能。

架构

产品层

Murano中的产品层表示联网设备的类型,它提供工具和接口,以便管理产品定义,允许开发者使用通用API进行设备部署、业务开通、数据路由定义、现场升级和配置。开发者可使用已集成的仪表盘原型快速创建设备并验证设备行为。

产品层功能

  • 设备管理:管理设备状态、部署固件及升级、版本控制。
  • 设备连接&安全:使用TLS标准协议创建加密连接通道,开发者可快速连接设备并进行数据通信。
  • 设备开通:安全、可扩展的开通接口满足OEM厂商在设备生产状态和运行状态下的灵活开通需求。
  • 开放访问:兼容大多数嵌入式硬件配置。
  • 仪表盘工具:快速创建、配置和部署仪表盘,以便可视化设备数据。
  • 嵌入式SDK:ExositeReady™ 嵌入式SDK能够向大多数Wi-Fi和以太网嵌入式平台进行移植。
  • 网关引擎:Exosite的网关引擎框架功能包括自动开通、设备管理、现场固件升级,以加速网关设计。
  • 开发资源:具备C、 C++ 、 Python 、 Java 、 .NET 、 Node 、 Go等语言的开源库。
  • 数据模型:基于设备元数据、数据源、设备分组、访问策略、流程环节、事件和告警,能够灵活地开发、维护和升级复杂的数据模型。

解决方案层

  • Murano中的解决方案层表示应用逻辑、用户接口、应用API。利用设备数据,在数据路由、服务集成、自定义API、用户认证/角色/权限和应用托管的基础上,提供开发和部署应用及服务的工具,使开发者创建解决方案模板,包括整个部署到最终用户的应用功能,以及产品的自定义API。

解决方案层功能

  • 角色&权限管理:已集成的用户服务提供权限模型,包括认证、管理和角色定义等。
  • 自定义API:可自定义web-service API,根据设备数据,定义每个解决方案的上下文环境、应用逻辑和设备/用户访问。
  • 应用托管:静态应用文件托管使整个应用托管在Exosite上,Exosite提供技术支持和7*24监控。
  • 服务数据路由和事件逻辑:使用事件逻辑系统设置门限,调度服务通过短信、电子邮件或者HTTP发生告警。
  • 应用程序库:丰富的应用程序库便于设计、配置和部署原生应用。
  • 数据存储:带有时间戳的Key-Value存储,所有数据在不同服务器上存有副本。
  • 分析引擎:提供实时数据流处理和自动处理,易于解析原始数据包及格式转换。
  • 融合方案:利用Exosite的合作伙伴方案,或者自定义cloud-cloud连接,集成其它云服务。
  • IoT超市:访问大量的已集成的合作伙伴方案,加速IoT部署,所有的服务插件由Exosite托管。

业务层

  • Murano将联网产品和方案完全转型为数据驱动业务。使用企业级的功能特性,Murano无缝集成业务系统,释放IoT的真正价值,加速企业转型。

业务层功能

  • 管理控制台:易于使用的管理工具,设定数据层面的方案配置。
  • 系统使用报表:分析、优化和理解资源使用模型,提供实施方案监控。
  • 方案模板:垂直应用模板用于产品定义、数据路由、用户角色定义和应用内容,加速上市。
  • 业务软件集成:使用第三方软件,如:Salesforce、Twilio和其它CRM软件,业务报表、分析工具和基于云的调度和数据服务。
  • 方案监控:提供端到端的跨方案业务洞察,整体性能的深度可视。
  • 数据发现:使用数据浏览、可视化和导出工具,获得业务知识和运营洞察。
  • 访问控制:决定谁能够查看和访问不同账户层次的信息,快速和安全地创建层级结构和展示选项。
  • 安全管理:管理SSL证书和DNS,集成监控服务到Murano中,平滑和安全地进行IT运维。
  • 标准化工具:集成源码控制工具,重用公共组件。

安全-多重防护

  • 集成领先的安全框架,在所有敏感接口上采用银行级的SSL加密方式
  • API端点使用socket层安全协议(SSL/TLS),防止数据窃取、篡改、伪造。
  • 用户界面和Web应用使用HTTPS加密通信,保护数据交换的隐私和完整性。

安全-数据存储

  • 多层次安全模型保证数据存取安全策略的执行
  • 限制数据服务器的物理访问,现场监控物理设施,提供多重身份认证和安全日志
  • 用户数据访问受到严格控制,每次请求必须通过认证,访问与用户数据进行隔离。

安全-用户认证

  • 用户认证严格控制平台访问,权限分层易于多维度信息访问授权,基于用户权限级别生成API临时秘钥。
  • 安全存储敏感用户信息、密码和令牌。

安全-设备认证

  • 禁止没有授权情况下平台和终端的任何数据交换。
  • 所有设备使用私钥与平台进行数据交换。
  • 配置时为防止欺骗,现场设备在受控的时间窗口内,使用加密的API通信(DTLS和TLS),与平台建立认证。
  • 一旦设备通过认证,建立其拥有权和权限层级。

设备SDK

为减少开发时间,ExositeReady™ 嵌入式SDK提供商业级终端软件快速安全地连接硬件设备。

设备SDK功能

  • 设备移植:ExositeReady SDK提供将现有配置向新硬件平台的移植。
  • 示例程序:浏览Demo查看移植方法。
  • 支持的硬件平台: ExositeReady认证的硬件包括开发指南、示例程序和二进制编码文件。
  • 集成API:提供易于集成的应用级API。
  • 库级API: ExositeReady认证的硬件预置连接Exosite云平台的功能。
  • 安全连接: ExositeReady认证的硬件采用了最新的安全标准。
  • 开源:ExositeReady SDK是开源软件,基于Apache 2.0许可完全免费。
  • 代码可移植性:使用C99编写,ExositeReady SDK可使用在任何嵌入式平台上。

设备网关引擎

ExositeReady™ 网关引擎是一个软件包,便于快速安全地在终端节点、网关和Murano平台之间通信。

设备网关引擎功能

  • 应用托管:开发和监控自定义网关应用、版本控制、重启和失败定义、调试日志存取。
  • OTA升级:使用安全可靠的OTA引擎,远程安装和升级网关固件和应用。
  • 网关数据采集:监控重要的网关信息,如硬盘使用率、文件系统元数据、移动网络数据流量使用,易于调试和预测潜在问题。
  • 消息队列:使用灵活的存储-转发式的HTTP服务,避免断电或不可靠连接引起的数据丢失。
  • 过程和日志管理:通过开源的流程管理工具和监控系统,记录重启过程和日志文件。
  • API库:使用安全和已验证的API库,加速开发Python应用。
  • 模块化传感器接口:利用内置的传感器驱动,或添加和扩展I/O接口,满足实际需求。
  • 可插拔式服务接口:使用内置的云模块,将设备数据路由至Murano平台,易于集成其它现场业务管理系统。

设备HTTP API

  • 设备固件和应用必须使用此API开通业务,以及与平台进行交互。

时间序列数据类API:

  • Write:向一组资源写入数据
  • Read:从一组资源读取最新数据
  • Hybrid Write/Read:先写入一组资源,然后读取一组资源
  • Long-Polling:当有资源更新时,及时发出通知

设备开通类API:

  • Activate:激活设备并获取设备CIK
  • List Available Content:获取设备内容文件列表
  • Get Content Info:获取设备内容文件的元数据
  • Download Content:下载设备内容文件

工具类API:

  • Timestamp:获取当前unix格式时间戳

Murano脚本

  • Murano平台是一个事件驱动型系统,使用脚本路由数据,并执行应用逻辑和规则。
  • Murano脚本:
    • 具有丰富的功能,用于存取设备数据至时间序列数据库、执行设备任务、处理方案应用API请求等操作。
    • 可访问所有Murano服务。
    • 使用Lua语言编写,运行在LuaJIT虚拟机。
    • 可使用管理控制台或者命令行接口添加至解决方案。

Murano脚本相关概念

  • 服务调用:Service Call
  • 脚本执行和事件处理:Script Execution & Event Handlers
  • API端点脚本:API Endpoint Scripts
  • Websocket脚本:Websocket Scripts
  • 脚本模块:Modules
  • 脚本环境:Script Environment

Murano服务

Murano服务可被脚本访问,由2种不同的组件构成:操作和事件。

  • 操作Operations:可在脚本中调用的方法
  • 事件Events:可触发脚本执行

Murano服务列表

通信类:

  • Device:设备网关服务
  • Email:Email服务
  • Twilio:Twilio服务(短信和电话)
  • Webservice :网关服务自定义API
  • Websocket : WebSocket网关服务

核心类:

  • Tsdb:时间序列存储服务
  • Keystore :键值存储服务

其它类:

  • Config :方案配置服务
  • Timer :计时服务API
  • User :用户管理服务

国外物联网平台初探(五) ——Exosite Murano的更多相关文章

  1. 国外物联网平台初探(二) ——微软Azure IoT

    平台定位 连接设备.其它 M2M 资产和人员,以便在业务和操作中更好地利用数据. 连接 IoT 设备 将所有设备连接到云,从这些设备接收大规模数据,以及管理这些设备的授权和限制. 在将设备连接到云和处 ...

  2. 国外物联网平台初探(六) ——Electric Imp

    公司背景 Electric Imp成立于2011年,公司设立在美国加利福尼亚州洛斯阿尔托斯和英国剑桥 公司投资者包括:富士康技术集团.PTI创投.Rampart资本.Redpoint创投 定位 Ele ...

  3. 国外物联网平台初探(四):Ayla Networks

    定位 Ayla企业软件解决方案为全球部署互联产品提供强大的工具 功能 Ayla的IoT平台包含3个主要组成部分: (1) Ayla嵌入式代理Ayla Embedded Agents (2) Ayla云 ...

  4. 国外物联网平台初探(三) ——IBM Watson IoT

    平台定位 提供全面管理的云托管服务,旨在简化并从 IoT 设备中获得价值. Watson IoT Platform 提供对 IoT 设备和数据的强大应用程序访问,可快速编写分析应用程序.可视化仪表板和 ...

  5. 国外物联网平台初探(一) ——亚马逊AWS IoT

    平台定位 AWS IoT是一款托管的云平台,使互联设备可以轻松安全地与云应用程序及其他设备交互. AWS IoT可支持数十亿台设备和数万亿条消息,并且可以对这些消息进行处理并将其安全可靠地路由至 AW ...

  6. 国外物联网平台(5):Exosite Murano

    国外物联网平台(5)——Exosite Murano 马智 定位 Murano是一个基于云的IoT软件平台,提供安全.可扩展的基础设施,支持端到端的生态系统,帮助客户安全.可扩展地开发.部署和管理应用 ...

  7. 国内物联网平台初探(八):移动云OneNET

    国内物联网平台初探(八)——移动云OneNET 平台架构 数据模型 使用场景示意图 服务 IOT Paas 基础服务 为IoT开发者提供智能设备自助开发工具.后台技术支持服务,为您提供物联网专网.短彩 ...

  8. 国外物联网平台(1):亚马逊AWS IoT

    国外物联网平台(1)——亚马逊AWS IoT 马智 平台定位 AWS IoT是一款托管的云平台,使互联设备可以轻松安全地与云应用程序及其他设备交互. AWS IoT可支持数十亿台设备和数万亿条消息,并 ...

  9. 国外物联网平台(8):Telit

    国外物联网平台(8) ——Telit 马智 定位 We Bring IoT to Life Telit提供世界上最全面的高性能物联网模块.连接服务和软件. 产品体系 模块 Telit提供丰富专业的物联 ...

随机推荐

  1. Redis学习笔记(三)-数据类型之string类型

    string是redis最基本的类型,而且string类型是二进制安全的.意思是redis的string可以包含任何数据.比如jpg图片或者序列化的对象.从内部实现来看其实string可以看作byte ...

  2. javascript中执行环境和作用域(js高程)

    执行环境(execution context,为简单起见,有时也成为“环境”)是javascript中最为重要的一个概念.执行环境定义了变量或函数有权访问的其他数据,决定了它们各自的行为.每个执行环境 ...

  3. windows和linux无法访问VMware中linux的tomcat主页问题

    1.一定确定自己的tomcat服务器是启动的.(为了确保保险可以在测试前重新shutdown,startup一次) 2.确定自己访问的ip地址和端口号是正确的 如果是VMware外部windows的话 ...

  4. Architecture:话说科学家/工程师/设计师/商人

    从使命.目的.行为的不同,可以归类人群到科学家.工程师.设计师.商人等等.使命分别是:1.携带当下社会的财富对未来探索,希望引发变革:2.掌握工程全貌.完成整个工程的圣经周期:3.在工程的设计层面做文 ...

  5. 读书笔记之:C++ Primer (第4版)及习题(ch01-ch11) [++++]

    读书笔记之:C++ Primer (第4版)及习题(ch01-ch11) [++++] 第2章 数据和基本类型 1. 整型 2. 习题:左值和右值 3. C++关键字/保留字和操作符替代值 4. 声明 ...

  6. Vue: axios 请求封装及设置默认域名前缀 (for Vue 2.0)

    1. 实现效果 以get方法向http://192.168.32.12:8080/users 发起请求.获取数据并进行处理 this.apiGet('/users', {}) .then((res) ...

  7. WPF动态折线图

    此项目源码下载地址:https://github.com/lizhiqiang0204/WpfDynamicChart 效果图如下: 此项目把折线图制作成了一个控件,在主界面设置好参数直接调用即可,下 ...

  8. golang入门-defer

    package main import "fmt" func main() { i := 5 tmap := make(map[string]int, 5) tmap[" ...

  9. js 中this到底指向哪里?

    其实js的this指向很简单.我们记住下面3种情况. this 指向的是浏览器中的window.代码如下: function fn(){ this.name='yangkun'; this.age=2 ...

  10. font-size:0消除元素间距

    容易发现,inline-block元素之间会有间距, <!DOCTYPE html> <html> <head> <title></title&g ...