As you’re away of the Container Based Applications are an important feature in our daily basis tasks and the environment we manage so I’ve decided to share some fundamental about it. Let’s dive into Azure!
Azure Kubernetes Service
Azure Kubernetes Service (AKS) manages your hosted Kubernetes environment and makes it simple to deploy and manage containerized applications in Azure. Your AKS environment is enabled with features such as automated updates, self-healing, and easy scaling. The Kubernetes cluster master is managed by Azure and is free. You manage the agent nodes in the cluster and only pay for the VMs on which your nodes run.
You can either create your cluster in the Azure portal or use the Azure CLI. When you create the cluster, you can use Resource Manager templates to automate cluster creation. With these templates, you specify features such as advanced networking, Azure Active Directory (AD) integration, and monitoring. This information is then used to automate the cluster deployment on your behalf.
At its core, an AKS cluster is a cloud hosted Kubernetes cluster. Unlike a custom Kubernetes installation, AKS streamlines the installation process and takes care of most of the underlying cluster management tasks.
You have two options when you create an AKS cluster. You either use the Azure portal or Azure CLI.
How workloads are developed and deployed to AKS
AKS supports the Docker image format that means that you can use any development environment to create a workload, package the workload as a container and deploy the container as a Kubernetes pod.
Here you use the standard Kubernetes command-line tools or the Azure CLI to manage your deployments. The support for the standard Kubernetes tools ensures that you don’t need to change your current workflow to support an existing Kubernetes migration to AKS.
AKS also supports all the popular development and management tools such as Helm, Draft, Kubernetes extension for Visual Studio Code and Visual Studio Kubernetes Tools.
Deployment center simplifies setting up a DevOps pipeline for your application. You can use this configured
DevOps pipeline to set up a continuous integration (CI) and continuous delivery (CD) pipeline to
your AKS Kubernetes cluster.
With Azure DevOps Projects you can:
●● Automatically create Azure resources, such as an AKS cluster
●● Create an Azure Application Insights resource for monitoring an AKS cluster
●● Enable Azure Monitor for containers to monitor performance for the container workloads on an AKS
We have two network models to choose from when deploying an AKS cluster. The first model is Kubenet
networking, and the second is Azure Container Networking Interface (CNI) networking.
Kubenet networking is the default networking model in Kubernetes. With Kubenet networking, nodes get
assigned an IP address from the Azure virtual network subnet. Pods receive an IP address from a logically
different address space to the Azure virtual network subnet of the nodes.
Network address translation (NAT) is then configured so that the pods can reach resources on the Azure
virtual network. The source IP address of the traffic is translated to the node’s primary IP address and
then configured on the nodes. Note, that pods receive an IP address that’s “hidden” behind the node IP.
From AZ-303 Azure Architect Technologies.