Welcome to the third and final part of our Zero Touch Provisioning (ZTP) blog series. In the previous article, we discussed how the application ecosystem plays a vital role in ZTP. Today, we'll shift our focus to the crucial provisioning steps that occur earlier in the device lifecycle.
Cloud Platform Integration: A Crucial Element of ZTP
Many connected products rely on services provided by major cloud platforms, such as Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform. These services often require device-by-device provisioning to enable their use, a process that can quickly become complex and resource-intensive at scale.
Incorporating Cloud Provisioning into ZTP
While not necessarily obvious, cloud provisioning is a core element of a ZTP workflow. Why? Put simply, ZTP isn't just about delivering the configuration to the device at the right time; it also involves preparing the correct configuration. In this context, information that is essential for the device's operation is created when the device is created. Let's examine a relatively simple use case and its consequences for our ZTP workflow.
In this example, a connected product sends data to an AWS IoT shadow, which is then used to feed the application logic. Working backwards in our workflow, we realize that the certificates, credentials, and other data are required by the connected product to connect to AWS. This data needs to be part of the configuration. We obtain the data when the AWS thing is created. However, we have one challenge, how do we know when the AWS thing is created? We need to orchestrate the device creation in our Connected Device Platform with the creation of the AWS thing and other services to collect all the relevant data. The following workflow is a version of that process in EdgeIQ.
Orchestrating Device and Cloud Service Provisioning
To facilitate this process, EdgeIQ orchestrates the creation of devices in our Connected Device Platform with the corresponding creation and provisioning of cloud services. When a new device is registered, a workflow is triggered that:
1. Creates the corresponding device representation in the cloud platform.
2. Provisions additional services required for that device.
3. Collects all relevant data, such as certificates and credentials.
4. Packages this data into the ZTP configuration for delivery upon the device's first connection.
In EdgeIQ, there are workflows designed specifically for this use case with each of the hyperscalers. When a device is created in the platform, a workflow is triggered that creates the corresponding device in the hyperscaler, provisions additional services for that device, and collects all relevant data to be passed to the device at the time of first connection.
Conclusion
In this 3-blog series, we've discovered that the end-to-end workflow for ZTP is broader than we may have originally considered. The process starts when a device is created in the Device Ops platform and the remaining process includes:
- The creation and provisioning of cloud services.
- Collection of data from cloud services and other parts of the application ecosystem.
- The timely delivery of a templated configuration package based on the customer, device profile, and use case.
By understanding and implementing these ZTP workflows, IoT device deployment can be made more efficient and tailored to specific requirements. This enables connected product manufacturers to ensure the vital first customer experience at connection is a positive one, and do it at scale.