Microsoft should write an ingress controller for Azure? Not sure how you can get into a vendor lock-in situation with k8s. Maybe Microsoft extends the API with its own blackbox controllers and force that instead of kube primitives?
Step one: “We love Kubernetes! Run it on Azure! It’s great”
Step two: “Kubernetes experience on Azure is best enjoyed using Microsoft Enterprise Ingress, Microsoft Custom Resources for Business, and developing in Visual Studio. Use those!”
Step three: “Oh, the CTO wants to migrate workloads to AWS instead? Too bad you used so many of of our custom and proprietary add ons, that’s going to make migrating incredibly expensive. Just stay on Azure and everything will be just fine...”
K8S does help a bit in this regard, but all three of the cloud big cloud players have reasons, products, policies, and strategies to lock you in.