
Explore how a Kubernetes-like cluster orchestrates containers across multiple nodes using a control plane, api server, scheduler, controller manager, and kubectl, driven by yaml manifests.
Explore Kubernetes objects such as deployment, service, secret, and persistent volume, and learn how yaml files, config maps, and service discovery secure database connections and data.
Create an Azure Kubernetes service cluster in the Azure portal, deploy pods, deployments, and services, then configure networking, RBAC, Azure Active Directory, and ACR integration.
Explore cluster managed infrastructure for Kubernetes developers, including resource groups, vm scale set nodes, and a virtual network; connect with az cli and inspect nodes via kubectl.
Learn to deploy pods, deployments, and services in a Kubernetes cluster using YAML configuration and kubectl. Generate pod configurations from YAML, apply them, and view pod IP and node details.
Create and deploy a scalable engine-x deployment with three replicas using kubectl, revealing replica sets, multiple pods, yaml configuration, and how Kubernetes spreads pods across nodes for availability.
Learn to exec into a pod and access a container shell, observe inter-pod communication in a Kubernetes cluster on Azure, and apply Calico network policies to isolate apps.
Learn how to scale pods in Kubernetes using kubectl scale by increasing or decreasing replicas for a deployment, and verify changes with kubectl get deployments and kubectl get pods.
Create private service in kubernetes to provide stable communication to pods by exposing a deployment as a service with a dns-like name, internal endpoints, and round-robin load balancing.
Expose a Kubernetes service publicly by switching its type from cluster IP to load balancer, then verify the new external IP alongside the private IP and access the service.
Learn how to view Kubernetes objects such as services, pods, and deployments across namespaces, and how a load balancer assigns a public IP address for external access.
Build an ASP.NET MVC app in Visual Studio, with a model and controller to manage a product list in a server database, run in a container.
Create a product model and product controller using Entity Framework to perform CRUD operations, and generate views to list, add, get, and delete products.
This mvc app demo runs the project and displays the products list via the products controller index action. Create and view products, and navigate the menu to the products page.
Learn to run a .NET app in a container using a four-stage Dockerfile, copying sources, restoring dependencies, building in release, publishing deployable packages, and deploying to a runtime image.
Build and run a docker container for an MVC app by building an image, tagging it, and running with port mapping to 80 from Visual Studio, accessible on localhost.
Publish your Docker image to Docker Hub by tagging the image with your Docker ID, then push it to the registry and verify it appears in your Docker Hub account.
Set up Kubernetes by deploying a Docker container using the dashboard, install Minikube, start a cluster, and access the dashboard to manage deployments across Windows, Linux, or Mac.
Deploy a Docker container to Kubernetes using the dashboard, configure image, tag, and three pods, and expose it with external access via a service mapping port 777 to 80.
Learn to deploy a Docker container with a Kubernetes deployment YAML, including API version, replicas, container image and tag; apply with kubectl and verify two pods running.
Learn how to create and deploy a Kubernetes service to expose a deployment, map user requests to pods, and configure node port and ports in the service YAML.
Deploy SQL Server in a Docker container to a Kubernetes cluster using yaml deployment files and a service, with EULA acceptance, secret-based password, and a persistent volume.
Connect the embassy web app to the database in Kubernetes by overriding the connection string with environment variables, pointing to the database service by name to keep IPs dynamic.
Learn how to persist data in Kubernetes with a persistent volume. Use a persistent volume claim and mount it in a deployment to keep data outside the container.
Create a config map in Kubernetes from YAML to decouple configuration from deployments, store the database connection string as key-value data, and reference it in deployments.
Learn to create and deploy a Kubernetes secret to securely store the database password, encode it with base64, and reference it in the app deployment before startup.
Learn to create an AKS cluster on Azure via the portal, configuring subscription, resource group, region, Kubernetes version, node count, and container monitoring with Log Analytics.
Connect to an AKS cluster from your local machine using Azure CLI and kubectl, obtain credentials, set your subscription, and open the dashboard.
Authenticate to an AKS cluster with kubelogin and the Cube plugin, using Azure Active Directory credentials, service principals, managed identities, or workload identity for non-interactive DevOps access.
Provision an Azure disk with a storage class and attach it to a persistent volume claim to persist the database in your Kubernetes cluster using Azure disk.
Demonstrate how to replace node port with a load balancer in a Kubernetes deployment for Azure, including cloning and renaming deployment files to keep naming consistent.
Deploys the azure storage and persistent volume for AKS, applies deployment files in dependency order to ensure services provision correctly, and verifies the Azure disk properties in the portal.
Deploy a secret YAML file to Azure Bernita service to configure the database connection, then verify creation by retrieving the secret with kubectl and refreshing the gubernator dashboard.
Deploy a SQL Server container to Azure AKS using kubectl apply, then monitor the deployment with kubectl get deployments and verify progress in the Azure dashboard.
Deploy the NBC app to Azure AKS using the deployment and service files, apply via kubectl, and expose it with a load balancer on port 80.
Deploy the embassy and sql server containers with services, attach a persistent volume, and use a secret with the database connection string to run the app on AKS.
Learn how a daemonset deploys a pod per worker node in Kubernetes cluster, deploying an engine x container and using taints and tolerations to manage system and user node pools.
Deploy a stateful set to run databases, where every replica receives its own persistent volume and persistent volume claim with storage and DNS-based identity, unlike deployments that share storage.
Watch a hands-on demo of deploying a stateful set with a headless service, a persistent volume claim, and a SQL Server database, then scale from one to three replicas.
Learn how Kubernetes service accounts give pods machine identities to access the api server. Define rbac roles and role bindings to authorize resources like pods and services with common verbs.
Enable workload identity with OpenID Connect in Kubernetes to achieve passwordless access to Azure resources via a managed identity, using service accounts and token exchanges.
Explore passwordless identities in Kubernetes by deploying a cluster, Azure Key Vault, and managed identity, then link a Kubernetes service account to the Azure workload identity to read secrets securely.
Publish your project to GitHub by initializing a local git repository, adding and committing files, linking a remote origin, and pushing deployment files.
Create a ci pipeline in azure devops to build a docker image from source, tag it with a build id, and push it to a container registry.
Learn to pass yaml deployment files through a CI pipeline by adding copy files and publish artifact tasks in Azure DevOps, setting source and target folders for deployment artifacts.
Build and tag a container image, push it, and update the deployment YAML with a dynamic tag using Azure DevOps replace tokens to apply the latest build id.
Create a release CD pipeline in Azure DevOps to deploy YAML deployment files from a drop folder to a Kubernetes cluster, using production environment and namespace settings.
Connect to Azure Kubernetes Service and refactor the cd pipeline to apply files one by one from the drop folder, deploying config maps and secrets before deployments and services.
Run continuous integration and deployment pipelines to build and deploy a containerized app on a Kubernetes cluster in Azure, pushing images, deploying services, and connecting to a sql server database.
This goal of this course is to get you started with Kubernetes. Through a practical workshop, you'll learn how to dockerize an app, deploy it to Kubernetes cluster and apply DevOps into it.
Agenda:
Create ASP.NET Core MVC app
Add Model and Controller for Products
Demo of the MVC app.cmproj
Demo of the MVC app
Explaining Dockerfile
Build Docker Container for MVC app
Push Docker container to Docker Hub
Overview on setting up Kubernetes
Deploy Docker container into Kubernetes using Dashboard
Deploy Docker container using YAML and kubectl
Create and deploy a Service
Create and deploy MSSQL
Connect web app to DB in Kubernetes using ENV
Create PersistentVolume
ConfigMap
Secret
Create AKS cluster
Connect to AKS Dashboard and kubectl
StorageClass to create an Azure Disk
Using LoadBalancer instead of NodePort
Deploy PVC to Azure AKS
Deploy Secret to Azure AKS
Deploy Sql Server container to Azure AKS
Deploy the mvc app to Azure AKS
Running the app on AKS
Publish project to Github
Create the CI pipeline using Azure DevOps
Create the CD pipeline
Edit the pipeline to use the newest container
Run the CI-CD pipeline