This is great for the dev flow of getting up and running on Azure. When you are ready to do something in production on Azure, you should also have a look at this project <a href="https://github.com/Microsoft/bedrock" rel="nofollow">https://github.com/Microsoft/bedrock</a>, which provides a model for operationalizing a Kubernetes cluster with a GitOps workflow.
This looks like a great article and not highly specific to Azure. It is a tutorial for Azure AKS, sure, but while you do use AKS for the cluster management and Azure services for a few things like DNS, you've taken us all the way through installing nginx-ingress and are not using or even mention the ingress addon from Azure.<p>I don't mean this as critical feedback! I love the article and will go over it reading in a bit more detail later, but that one thing I noticed off the top of my head made me want to ask why not use the provided nginx-ingress addon?<p>(I can think of a few reasons why myself, but if you are OP, I thought it might be better to ask why _you_ did this rather than just throwing in my own $0.02.)
I prefer aks engine to aks. <a href="https://github.com/Azure/aks-engine" rel="nofollow">https://github.com/Azure/aks-engine</a><p>- Azure control nodes have problems all the time, running my own is easy
- With aka engine multiple nodepool support is easy and not a “preview”
- we use low priority nodes and those are not supported in stock aks, and it won’t probably for a year
I'm curious why the author used AKS. From my experience, I noticed that is the slowest to provision. I have personally experienced etcd nodes becoming unhealthy in lightweight test clusters which concern me with using AKS in production. Is AKS becoming the more popular of the three hosted k8s offerings?