
This hands-on Azure Kubernetes Service workshop guides you to deploy a production-ready microservice rating app on a Kubernetes cluster, with ingress, cert-manager, SSL, and autoscaling.
Sign in to the Azure portal to start a free trial and verify your identity, then create a Western Europe resource group and a private container registry.
Explore the high-level Kubernetes architecture, where the master orchestrates clusters and nodes run pods with containers created by deployments, sharing an IP address, port space, and volumes.
Create an Azure Kubernetes Service cluster and configure node pools for up to 100 nodes. Enable system assigned managed identity for Azure Container Registry access and RBAC.
Explore AKS networking options: Kubernetes networking vs container native interface, configure virtual networks, subnets, and IP ranges, and integrate Azure Monitor and container registry to deploy your cluster.
Learn how to test your Azure Kubernetes Service cluster, install and use Azure CLI and kubectl, fetch credentials, view cluster details, and create a namespace.
Hint: the helm command arguments changes depends the version of the mongodb installed. Make sure to run the command "helm show chart bitnami/mongodb" and check the version of the mongodb, and check the documentation for the updated args names "https://hub.helm.sh/charts/bitnami/mongodb".
For example, Authentication parameters are reorganized: mongodbUsername, mongodbPassword and mongodbDatabase are now auth.username, auth.password, auth.database
Create a Kubernetes secret to store the MongoDB connection details (username, password, database, port) securely using kubectl create secret generic in the rating-app namespace; verify with kubectl describe secret.
Clone the GitHub projects, install git, build images with Azure Container Registry, and push the rating web and rating API images to the registry.
Deploy and verify the rating api in a Kubernetes cluster with the rating app namespace, and resolve image pull issues by granting access to Azure Container Registry via role assignment.
Create a Kubernetes service to expose the rating API pod inside the cluster by using a selector, mapping external port 80 to internal port 3000 for TCP communication.
Explore how the Kubernetes horizontal pod autoscaler scales pods and the Azure Kubernetes Service cluster autoscaler adds nodes, using kubectl and YAML manifests to manage CPU utilization-based scaling.
See how the cluster autoscaler increases node counts to meet pod demand. Compare manual and auto scaling of node pools, adjust deployment resources, and restore the original configuration.
Deploy and manage an application on Azure Kubernetes Service, provision container registry and Mongo database, monitor with Azure Monitor, and secure traffic with TLS and Azure AD.
This is a hand’s on workshop for implementing state of the art end-to-end microservice docker based architecture using k8s on top of Azure Kubernetes Service [AKS]. The workshop will takes you through the steps of creating a Kubernetes cluster, deploying a Mongo DB & microservices-based application, load balancing and securing inbound traffic, scaling option in aks and how can you monitor your cluster in production environment.
At the end of this workshop you will understand AKS inside out, and will be able to design and implement production ready Kubernetes clusters.
The K8s cluster will be hosted on AKS and integrated with azure container register for hosting the container images. AKS RBAC and Azure Active directory will be used to authenticate and authorize access to the AKS cluster and Azure monitor will be used to monitor the cluster.
Any application can be hosted on this cluster, but for the sake of this workshop, we will be using a ready-made sample application from github. A rating website.