⚠️ Deprecation notice

This preview integration of IoT Edge 1.x and Kubernetes will not be made generally available, and is no longer supported. The recommended way to run IoT Edge 1.x on Kubernetes is noted in the product's official docs

Known issues

Some capabilities available on IoT Edge with Docker on a single device are not available in IoT Edge on Kubernetes.

Not all Docker API createOptions are translated

Only a subset of Docker options are translated to Kubernetes. This subset is determined by what is translatable in Kubernetes environment and customer usage scenarios.

Environment variables with colons in their name cannot be used

Replace : with _ to conform to Kubernetes environment variable naming requirements.

Only a single module in a deployment can be started on the host network

Since every module has a sidecar proxy listening on locahost ports, currently only one module in the edge deployment can be started on the host network. However, a module on the host network can communicate with other modules on the cluster internal network without any other changes.

On Docker-based systems, edgeAgent has logging-related direct methods that enable experiences such as troubleshooting from IoT Hub Portal. These direct methods and experiences are not available when running on Kubernetes.

Built-in metrics from edgeAgent are not available

On Kubernetes, the edgeAgent does not emit built-in metrics. Therefore some of the curated visualizations are not available.

Node.js modules do not start

IoT Edge modules running on Kubernetes based on Node.js IoT SDKs are currently not able to successfully retrieve credentials from iotedged and so cannot start.