BETA -- IoT Edge Deployment and the associated ECY Server Firmware are in beta.
Azure IoT Edge is a fully managed service built on Azure IoT Hub. It can be used to deploy Docker compatible containers to ECY-APEX controllers through Azure IoT Hub.
It can also access any other custom devices connected to Azure IoT Hub with the Azure IoT Hub device SDK. For more information, see the Understand and invoke direct methods from IoT Hub documentation.
In order to use an edge device with the Cloud Relay, the following requirements need to be met/installed:
You will need to ensure your ECY-APEX controller is connected to the internet. After logging into ECLYPSE user interface on the controller, select the Home Page. In the middle of the page you will see an entry labeled "Public IP Address". Below this you will see a statement that reflects your connection status to the internet. Please ensure you are connected to the internet before continuing with the rest of the instructions.
After verifying you internet connection navigate to the page labeled "IoT". At the top of this page you should see two selections. One for "IoT Hub" and one for "IoT Edge". The IoT Edge field will have the place holder "Connection String" listed. At this point your should see a red icon followed by the word "Disconnected" indicating that we are not currently connected to the IoT Hub as an edge device. Take note of this page since we will need it again in later steps.
The following steps will be completed through with a web browser. Log in to Azure IoT HuB. In the search bar at the top of the page search for iothub. From the results choose the IoT Hub assigned to you.
After navigating to the IoT Hub locate the selection labeled "IoT Edge" on the left hand side under the sub-heading "Automatic Device Management". On this page you will see an option at the top of the pane labeled "add an IoT Edge device".
You should now be on the "Create Device" window. Fill in the "Device ID" with a name that is unique within your IoT Hub and not used on another IoT Edge device. Leave all other parameters empty or at default. Select save and you should see your device listed in the table.
Select your new edge device and after the summary page for the device loads select "Set modules" near the top left of the summary page.
Select "Runtime Settings" under the sub-heading IoT Edge Modules
A pane labeled "Runtime Settings" will show up on the right side of your screen. Select the tab "Edge Hub". There are two settings here that need to be modified. The first setting is under the sub-heading Environment Variables you will need to create one entry. For the second setting you will need to modify the text in the "Container Create Options" box to only keep the following:
{
"HostConfig": {
"PortBindings": {
"5671/tcp": [{
"HostPort": "50071"
}]
}
}
}
Ensure that the "Environment Variable": httpSettings__enabled
is added before selecting "Save".
NAME: httpSettings__enabled
TYPE: Text
VALUE: false
Select "Review + create" at the bottom left of the page. Azure will attempt to validate your settings and present you with a summary screen for the next step.
This screen shows you what is about to be deployed to the edge device. If your controller is not yet connected it will be deployed once the controller successfully connects. Select "Create" from the bottom left of the page.
Return to the summary page for your Edge device. Copy the "Primary Connection String". We will need it for the next step.
Log back into your ECY-APEX controller. Select the IoT page. Ensure you are on the tab "IoT Edge". Paste the connection string you copied from the previous step in the field with the place holder "Connection String". Turn the toggle "IoT Edge" to "On". Now select "Apply". You will see the screen update a couple of times over the next five minutes. The deployment process can take a little time. Please be patient and wait for the full five minutes at which point you can refresh your screen and it should like like the example in the image below.
You are now ready to deploy a container to your ECY-APEX controller. Please review the article below which guides your throught the process.
Deploying Containers to ECY-APEX