From Azure IoT to Azure IoT Edge
The IoT edge, is the next generation IoT architecture in which decentralizing the current IoT Hub from cloud to multiple unit or location based installation.Started exploring Azure IoT edge today. Microsoft released Azure IoT edge to developers to break it. I think they have fixed the two major issues of the current design
1. "junk data transfer" from devices to the HUB (cloud)
2. Delay in coordination of Machine learning predictions reaching the device.
High Level Design Understanding
From high level they have implemented a container based "IoT hub" approach. The basics components like IoT HUB, Stream Analytics and Microsoft Machine-learning will be hosted in containers for each unit or plant. The data collection and Machine learning presumptive analytics will be done at micro level and then only valid or required data will be moved the central location.The Where's, How's and Who's
- Where the container will be hosted ? will the container be hosted in the cloud or in the on-premises
- How is the "Command and Device Control"- messages, "Dynamic Device Configuration" - Twins will be handled from the "Central Command Center"
- How is the orchestration and administration of the Container's will happen ?? from the central IoT Hub or there will be different communication channel.
- Who's network domain will the container be hosted, either client network or in Cloud Virtual network
Where the container will be hosted?
There are two possible scenario's of host the container
Scenario 1: Container hosted in the cloud
If the container is hosted in the cloud then there is no much difference between the centralized architecture and the unit based architecture, the data transfer to the centralized location will be reduced, but that will be mitigated by the Microsoft IOT billing of the each unit. There will be no difference in internet connectivity usage and data transfer between the remote location and the cloud.
Scenario 2 : Container hosted in on-premises
If the container is hosted on-premises. Is Microsoft coming out cloud , leave behind logic, design, etc... Microsoft has invested heavy on cloud . On-premises would be a right approach at this point of time until some Hands-on and business scenario's are handled.
How the Messages and Configuration routing going to be handled?
Based on the current IoT architecture a communication between the client(User) and device will happen through the "only" IoT Hub. Now if the IoT HUB is not the centralized version, how will the communication happen for each of the IoT hub. Will Microsoft has developed a centralized component or location to route the commands or messages to the respective IoT units or as usual it's developers headache.
How is the orchestration and administration of the Container's will happen??
Same as the previous questions, the containers needs to be orchestrated and administrated in which the IoT HUB is hosted. Will the Unit Level IoT hub get hosted in container clusters or will be standalone containers. First I need to do some hands-on in ACS(Azure Container service) and then start digging deeper into this.
Who's network domain will the container be hosted
The container needs a IP to host the modules. The questions is ? in which network domain will the modules be hosted. My current assumption is the hosting will be done on a Site-to-Site Virtual network configuration between the client and cloud.
Conclusion
Letz keep exploring................