Support for Windows containers

Linkerd supports meshing workloads that run on Windows nodes. This means that a user is capable of running a hybrid cluster that has both Linux and Windows nodes. In such an environment meshed workloads that are scheduled on Windows nodes can be part of the mesh just like the rest of workloads that run on the Linux nodes.

Here are some important considerations that need to be taken into account when this feature is being considered.

Need for hybrid cluster

The Linkerd control plane is capable of running on Linux systems only. This means that your cluster needs to have Linux nodes in addition to the Windows nodes.

CNI mode for Windows nodes

At the moment Windows workloads in Kubernetes have no support for running in privileged mode. As a result of that, the proxy-init container that configures the proxy network cannot run as part of the Windows pod. This poses the constraint that Windows nodes must work in CNI mode. Therefore, we have created a CNI plugin that is specifically targeted at Windows systems. It is perfectly fine for your Linux nodes to run in non-CNI mode while your Windows nodes are running in CNI mode.

Maturity

This is a feature that is actively been worked on. The current status of the CNI plugin is alpha. Futhermore, this feature has been tested on Azure AKS clusters only.

Learning more