High-Level AKS Workflow
-
User/DevOps Engineer interaction
-
You use
kubectl, Azure CLI, Terraform, or the Azure Portal to submit a request (e.g., deploy a pod, scale replicas, expose a service). -
The request goes to the Kubernetes API Server (running in the AKS control plane).
-
-
Control Plane Processing
-
API Server validates the request and stores the desired state in etcd (the cluster database).
-
Scheduler checks for available resources (CPU, memory, taints, affinities) across worker nodes and decides where to place the pod.
-
Controller Manager ensures the cluster continuously matches the desired state.
-
Example: If you ask for 5 replicas but only 3 exist, it will create 2 more.
-
-
Worker Node Execution
-
The Kubelet on the chosen worker node receives instructions from the API server.
-
Container Runtime (containerd) pulls the required container image (from ACR, Docker Hub, etc.) and runs the container inside a pod.
-
Kube-proxy updates networking rules so the pod can communicate with other pods and services.
-
-
Networking & Service Exposure
-
If the pod is only internal, it gets a private IP (from Azure CNI or Kubenet).
-
If exposed outside the cluster:
-
Service of type LoadBalancer → Azure automatically provisions an Azure Load Balancer with a public IP.
-
Ingress Controller (like NGINX or App Gateway) handles advanced routing, SSL, domains, etc.
-
-
-
Storage & Data
-
If the pod needs persistent data, it mounts a Persistent Volume Claim (PVC).
-
This PVC is dynamically backed by Azure Disk (single pod) or Azure Files (shared).
-
-
Security & Identity
-
Pods can use Managed Identities to access Azure services (Key Vault, Storage, SQL).
-
RBAC + Azure AD ensures only authorized users can perform actions.
-
Network Policies control which pods/services can talk to each other.
-
-
Monitoring & Feedback Loop
-
Metrics and logs are sent to Azure Monitor / Container Insights.
-
Autoscaler or DevOps engineers can act based on health and performance:
-
Horizontal Pod Autoscaler (HPA) → scales pods up/down.
-
Cluster Autoscaler → adds/removes worker nodes.
Comments
Post a Comment