Advanced Kubernetes/AKS Network & Infrastructure
- Description
- Curriculum
- FAQ
- Reviews
You started your journey learning Kubernetes ?
You have been learning the fundamentals of a Kubernetes cluster ?
And now you want to make sure your cluster is production ready in terms of security ?
If you are looking for how to secure your Kubernetes cluster then this course is for you.
Let us face it, security is not an easy task. And Kubernetes is not an exception.
Securing a Kubernetes cluster requires thinking about all these aspects:
-
Network security: through private cluster access to API Server with Private Endpoint.
-
Secure egress traffic: all egress traffic should be filtered using Firewall.
-
Secure ingress traffic: using TLS and HTTPS on the ingress controller.
-
Secure inter-pod communication: secure traffic between pods using TLS or mTLS.
-
Controlling traffic between pods: using Network Policy tools like Calico.
-
Securing access to Managed Identities: by restricting access to IMDS endpoint (169.254.169.254).
-
Implementing a Landing Zone: with integration into the Hub an Spoke model
-
Customize logging and metrics collection
-
Reduce the cost of the cluster infrastructure
Microsoft provides the following recommendations to secure an AKS cluster and this course will try to go deeper with demonstration.
Recommendation 1: To distribute HTTP or HTTPS traffic to your applications, use ingress resources and controllers. Compared to an Azure load balancer, ingress controllers provide extra features and can be managed as native Kubernetes resources.
Recommendation 2: To scan incoming traffic for potential attacks, use a web application firewall (WAF) such as Barracuda WAF for Azure or Azure Application Gateway. These more advanced network resources can also route traffic beyond just HTTP and HTTPS connections or basic TLS termination.
Recommendation 3: Use network policies to allow or deny traffic to pods. By default, all traffic is allowed between pods within a cluster. For improved security, define rules that limit pod communication.
Recommendation 4: Don’t expose remote connectivity to your AKS nodes. Create a bastion host, or jump box, in a management virtual network. Use the bastion host to securely route traffic into your AKS cluster to remote management tasks.
Disclaimer: This course uses Azure Kubernetes Service (AKS) for demonstrations. But most of the content is applicable to any Kubernetes cluster on any environment.
-
4How to setup an AKS clusterVideo lesson
-
5Cluster infrastructure resourcesVideo lesson
-
6Create PodVideo lesson
-
7Create deployment objectVideo lesson
-
8Exec into PodVideo lesson
-
9Scale podsVideo lesson
-
10Create private serviceVideo lesson
-
11Create public service using LoadBalancerVideo lesson
-
12View kubernetes objects in the Azure portalVideo lesson
-
13QuizQuiz
-
14Introduction to clusters access modesVideo lesson
-
15Architecture of a public clusterVideo lesson
-
16Private cluster with Private EndpointVideo lesson
-
17Public cluster with VNET integrationVideo lesson
-
18Private cluster with VNET integrationVideo lesson
-
19Accessing a private clusterVideo lesson
-
20RecapVideo lesson
-
24IntroductionVideo lesson
-
25Kubenet (basic) network modeVideo lesson
-
26Azure CNI (advanced) network modeVideo lesson
-
27Kubenet vs Azure CNIVideo lesson
-
28Azure CNI Overlay modeVideo lesson
-
29Kubenet vs Azure CNI Overlay modeVideo lesson
-
30Bring Your Own (BYO) CNI pluginVideo lesson
-
31CIDR ranges overlapping considerationsVideo lesson
-
32DNS configuration options for Private AKSVideo lesson
-
33Introduction to AKS Private DNS resolution at scaleVideo lesson
-
34[Demo] Resolving private endpoint using public FQDNVideo lesson
Lab files are available here: https://github.com/HoussemDellai/docker-kubernetes-course/tree/main/201_private_aks_no_private_dns_zone
-
35[Demo] Centralized DNS resolutionVideo lesson
-
36[Demo] Decentralized DNS resolutionVideo lesson
-
43[Lightboard] Gateway API and Ingress APIVideo lesson
-
44[Lightboard] AGIC vs Application Gateway for ContainersVideo lesson
-
45Introduction to Application Gateway for ContainersVideo lesson
-
46[Demo] Part 1: Setup the demo environmentVideo lesson
-
47[Demo] Part 2: Installing the ALB Controller and its Managed IdentityVideo lesson
-
48[Demo] Part 3: Creating and configuring Application Gateway for ContainersVideo lesson
-
49[Demo] Part 4: Exposing an application using Gateway API and HttpRouteVideo lesson
-
50[Lightboard] Introduction to AKS Application RoutingVideo lesson
-
51Introduction to Application RoutingVideo lesson
-
52[Demo] Creating Nginx Ingress Controller using Application RoutingVideo lesson
-
53[Demo] Creating Internal Nginx Ingress ControllerVideo lesson
-
54[Demo] Configuring custom domain name using External-DNSVideo lesson
-
55[Demo] Configuring Private DNS Zone for an internal ingressVideo lesson
-
56[Demo] Securing ingress with a TLS certificate from Key vaultVideo lesson
-
57[Demo] Exporting ingress controller metrics in Prometheus and GrafanaVideo lesson
-
58Exploring the roadmap for Application RoutingVideo lesson
-
59Introduction to AKS egress traffic and outbound typesVideo lesson
-
60Introduction to AKS Egress and Outbound Types (PPT)Video lesson
-
61AKS with Outbound Type Load BalancerVideo lesson
-
62[Demo] AKS with Outbound Type Load BalancerVideo lesson
-
63SNAT port exhaustion issue with Load BalancerVideo lesson
-
64SNAT port exhaustion solutionsVideo lesson
-
65AKS with Outbound Type Managed NAT GatewayVideo lesson
-
66[Demo] AKS with Outbound Type Managed NAT GatewayVideo lesson
-
67AKS with Outbound Type user assigned NAT GatewayVideo lesson
-
68[Demo] AKS with Outbound Type user assigned NAT GatewayVideo lesson
-
69Important notes about NAT GatewayVideo lesson
-
70AKS with Outbound Type user defined routing (UDR)Video lesson
-
71[Demo] AKS with Outbound Type user defined routing (UDR)Video lesson
-
72Ingress issues and options with UDR modeVideo lesson
-
73Migrate from Load Balancer to NAT GatewayVideo lesson
-
77Introduction to controlling egress trafficVideo lesson
-
78Creating an AKS cluster with Calico enabledVideo lesson
-
79Filtering egress traffic for an IP address using CalicoVideo lesson
-
80Logging egress and ingress traffic with Log actionVideo lesson
-
81Creating an AKS cluster and installing CiliumVideo lesson
-
82Filtering egress traffic for an FQDN using Cilium Network PolicyVideo lesson
-
83Viewing denied traffic logs in Cilium podsVideo lesson
-
84Using Hubble to monitor network and denied trafficVideo lesson

External Links May Contain Affiliate Links read more