Download presentation
Presentation is loading. Please wait.
1
Command Microservice Deep Dive
Tech Talks – Session 6
2
Agenda Command's general purpose and background
Why a separate micro service for commands Command’s makeup – including technologies/libraries/tools used REST API outline (categorizing the APIs by purpose) Command relationship to Device Profile With Demo!! Configuration settings Brief project status/update (what’s going on) Q&A
3
Jim White Dell Distinguished Engineer & Senior Software Architect
From Dell End User Computing (EUC) CTO Chief Architect and lead developer of Fuse I wrote code line #1 Fuse => EdgeX Foundry
4
Big Picture and Command
5
Command’s Role Also known as the Command and Control micro service
Enables the issuance of commands or actions to devices and sensors on behalf of: other microservices within EdgeX Foundry (for example, a local edge analytics or rules engine microservice) other applications that may exist on the same system with EdgeX Foundry (for example, a system management agent that needs to shutoff a sensor) To any external system that needs to command those devices (for example, a cloud-based application that had determined the need to modify the settings on a collection of devices) Exposes the commands in a common, normalized way to simplify communications with the devices. Commands to devices are made through the command GET, a request for data from the device or sensor, and the command PUT, a request to take action or receive new settings or data from EdgeX Foundry. Command does not act alone It gets its knowledge about the devices and sensors from the Metadata service It relays commands and actions to the devices and sensors through the Device Service It never communicates directly to a device or sensor.
6
Why have a Command Microservice
Couldn’t other microservices or applications talk directly to device services? Yes, but… Command can provide a layer of protection around devices and sensors It provides security services a means to not allow unwarranted interaction with the devices and sensors through the Device Service It could aggregate and organize requests to multiple device/sensors Allowing for synchronization and/or ordering of requests (shutoff the electricity, and then open the access panel) It could filter command requests All features envisioned for future releases
7
Command Makeup Created with Java/Spring Framework/Spring Boot
Uses Spring MVC for REST communications Command has no database – it gets all its information from other microservices Dell is creating a Go Lang Command Data replacement
8
Command Retrieve available commands
9
Command Put (but same for Get)
10
Command REST APIs Get all devices (and commands) Get Commands by
/api/v1/device/name/{name} Get Commands by Device id /api/v1/device/{id} Device name /api/v1//device/name/{name} Issue command /api/v1/device/{id}/command/{command id} GET & PUT (depending on data request or actuation)
11
Command REST APIs (continued)
Set the admin state /api/v1/device/{id}/adminstate/{adminState} Can also be done by device name Set the op state /api/v1/device/{id}/opstate/{opState} Ping the service /api/v1/ping
12
Demo It can sometimes be difficult to see how actuation commands are reflected through the profile and then the various microservices Metadata Device Service Command Let’s see a demo (using virtual device service) See the original Device Profile (and its commands) See how Meta data’s provides those commands through its APIs See how the commands are exposed through the device service See how Command offers the same commands through its APIs
13
Command Config Options
Nothing extra-ordinary in Command Other standard config options Service port Location of associated micro services Log levels Read limits
14
Project Status and Significant Updates
60 companies now enrolled in EdgeX Barcelona Release (the first community release) Due Oct 3rd Shown at IoT Solutions World Congress in Barcelona See Wiki for feature list Next tech community meeting held simultaneously there (Oct 5th) Working Groups all working toward Barcelona MVP Processes and documentation filling Build and test facilities filling in
15
Upcoming Tech Talks Are these talks still useful
Are there suggestions you can make on how to improve Consul and Config/Registry micro service Export micro services Using the SDK to generate a device service me other suggestions
16
Questions and Answer Time
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.