管理EdgeX Foundry多网关实例的Web Console
前言
当新用户初次接触EdgeX Foundry项目时,可以根据EdgeX Foundry项目的官方文档,很快地成功运行起EdgeX Foundry服务来。但是因为缺乏一个直观的Web Console,有可能就不知道如何进行下一步了,这也是我本人初次接触EdgeX Foundry时所遇到的问题。我的办法是通过Http Client工具调用它的Restful API来熟悉功能。但是针对设备CRUD操作所涉及的关联操作并不简单,过程也不是那么顺畅,也踩了很多坑。那时就有设想要给EdgeX Foundry做一个简单的Web Console:用户只需要在页面中操作,而不用手工敲带很多参数的命令行,那样就轻松多了。后来很欣喜地发现EdgeX Foundry社区也把管理多网关实例的Web Console列在了功能路线图中,所以我就开发了一个EdgeX Foundry的简单Web Console,计划贡献给社区。
在本文中,我将详细地介绍引入EdgeX Foundry Web Console的开发动机、设计思路和技术实现,希望通过它能帮助新用户快速地了解和使用EdgeX Foundry项目,也鼓励更多同行贡献到EdgeX Foundry社区。
1. 为什么需要Web Console
当用户给网关添加新设备,没有Web Console,就必须直接调用EdgeX Foundry的REST API来操作。但是EdgeX Foundry是基于微服务架构设计并实现,复杂的数据结构以及依赖关系会导致操作繁琐,对于新手来讲不大容易理解。比如添加一个Device,首先相关的Device Service、Device Profile和Device Address需要存在,如果不存在,需要先创建这些实例