Here, you learn a bit about the AKS architecture, some of its benefits, and a bird’s-eye perspective on using AKS in Azure.
Developers don’t necessarily start containers because they’re fun to use; developers start containers because they’re practical. Containers host application components such as web servers or database servers and then form application solutions. Therefore, try to relate the words container and application from now on.
Azure Kubernetes Service architecture
The image below shows the basic elements of AKS:- Master node: Microsoft abstracts the control plane (called the master node in Kubernetes nomenclature), so you can focus on your worker nodes and pods. This hosted Platform as a Service (PaaS) platform is one reason why many businesses love AKS. The master node is responsible for scheduling all the communications between Kubernetes and your underlying cluster.
- Worker node: In AKS, the worker nodes are the VMs that make up your cluster. The cluster gives you lots of parallel computing, the ability to move pods between nodes easily, to perform rolling updates of nodes without taking down the entire cluster, and so on. One option is using ACI to serve as worker nodes.
The below image also shows ACR, from which AKS can pull stored images. Isn’t all this Azure integration compelling?
- Pod: The pod is the smallest deployable unit in the AKS ecosystem. A pod may contain one Docker container, or it might contain a bunch of containers that you need to stay together, communicate with one another, and behave as a cohesive unit.
Azure Kubernetes Service administration notes
Now, let’s take a look at how developers and administrators interact with AKS. From a control-plane perspective, you have AZR, with which you can protect your AKS cluster with role-based access control, upgrade your Kubernetes version, scale out the cluster, add or remove worker nodes, and so on.From the application-plane perspective, Microsoft wanted to ensure that customers don’t have to learn a new tool set to work with containers in AKS.
kubectl command-line tool
Most Kubernetes professionals use the kubectl (generally pronounced KOOB-see-tee-el, KOOB-control, or KOOB-cuttle) to interact with their Kubernetes cluster and its pods programmatically. If you have Azure CLI installed on your workstation, you can install kubectl easily by issuing the following command:az aks install-cli
In fact, Azure CLI seems to borrow quite a bit from kubectl syntax in terms of the app context command workflow. To list your running pods (containers) with kubectl, for example, run
$ kubectl get pods READY STATUS RESTARTS AGE azure-database-3406967446-nmpcf 1/1 Running 0 25m azure-web-3309479140-3dfh0 1/1 Running 0 13m
Kubernetes web UI
The Kubernetes web UI is a graphical dashboard that gives administrators and developers a robust control surface. This image shows the interface.
Once again, you should use Azure CLI to connect to the dashboard; doing so isn’t possible from the Azure portal. Here’s the relevant command:
az aks browse --resource-group myResourceGroup --name myAKSCluster
The az aks browse
command creates a proxy between your workstation and the AKS cluster running in Azure; it provides the connection URL in its output. The typical connection URL is http://127.0.0.1:8001.