(接上篇)
部署端部分—— E dge X Foundry
EdgeX Foundry是一个由Linux Foundation托管的、供应商中立的开源项目,用于为IoT边缘计算系统构建通用的开放框架。该项目的核心是一个互操作性框架。该框架可以托管在与硬件和操作系统无关的平台上,以实现即插即用组件的生态系统,从而加速IoT解决方案的部署。本节将对EdgeX Foundry的部署方式进行系统梳理,并对部署方式中的相关注意事项进行详细说明,具体如表2-9所示。
表2-9 KubeEdge的部署方式和注意事项
| 部署方式 | 部署平台 | 部署原理 | 备注 |
|---|---|---|---|
| 容器化部署 | docker-compose | 将EdgeX Foundry的各组件容器化,并通过docker-compose对其进行部署、编排 | 目前,该部署方式是官方提供的部署方式之一 |
| Kubernetes | 将EdgeX Foundry的各组件容器化,并通过Kubernetes对其进行部署、编排 | 目前,官方不提供该部署方式的相关说明 | |
| KubeEdge | 将EdgeX Foundry的各组件容器化,并通过KubeEdge对其进行部署、编排 | 目前,官方不提供该部署方式的相关说明 | |
| 系统进程部署 | 支持EdgeX Foundry运行的各种操作系统 | 将EdgeX Foundry的各组件以系统进程的方式进行部署 | 目前,该部署方式是官方提供的部署方式之一 |
需要说明的是,在本书云、边、端协同的边缘计算系统中,作为端解决方案的EdgeX Foundry是通过KubeEdge对其进行容器化部署的。但是,目前官方没有提供通过KubeEdge对其进行容器化部署的相关说明,所以笔者根据本书的部署环境针对KubeEdge开发了一套yaml文件。
1)该yaml文件托管在GitHub 上(GitHub.com/WormOn/edge…
2)通过Kubernetes对EdgeX Foundry进行容器化部署,与通过KubeEdge对其进行容器化部署原理相同,读者也可以参考该yaml文件完成通过Kubernetes对EdgeX Foundry的部署。
系统进程部署 EdgeX Foundry
以系统进程部署EdgeX Foundry,即将EdgeX Foundry的各组件以系统进程的方式进行部署。本节对该方式进行展开说明。
(1) 获取EdgeX Foundry源码,命令如下:
#git clone GitHub.com/EdgeX Found…
(2) 基于源码构建EdgeX Foundry各组件的binary。
进入edgex-go源码根目录,命令如下:
#cd edgex-go
源码编译edgex-go,命令如下:
#make build
构建EdgeX Foundry各组件的binary,具体如图2-13所示。
图2-13 构建EdgeX Foundry各组件的binary
由图2-13可知,会在./cmd下各组件子目录里生成相应的可执行文件,比如config-seed的可执行文件会在./cmd/config-seed目录下,具体如图2-14所示。
图 2-14 源码编译edgex-go生成的可执行文件
(3)运行EdgeX Foundry的各组件
通过make一键运行edgex,命令如下:
#make run
edgex-go 一键启动命令和输出结果如图2-15所示。
图2-15 edgex-go 一键启动
由2-15可知,make run是通过执行#cd bin && ./edgex-launch.sh将EdgeX Foundry的各组件以系统进程的方式运行起来的。下面看一下edgex-launch.sh的具体内容。
「未完待续……」 点击下方标题可阅读技术文章