The Learning Channel
The Learning Channel
  • 38
  • 345 395
Setup Azure Kubernetes Private Clusters with API Server Vnet Integration
Many companies strive to extend their data centers to the cloud to take advantage of the cloud providers’ enormous resource capacities. For some this is a short-term expansion due to business peak seasons, for others, it is a permanent need. Regardless, they would want to maintain the privacy and security that their private clouds and data centers provide. This means they would like to avoid exposure to the public internet as much as possible. In this video, we will discuss hybrid and cross-premises cloud concepts and how Azure’s private networks provide network isolation on the Azure cloud. In this video, we will help a fictitious Acme Corporation set up a private Kubernetes AKS cluster in Azure without exposing the API server or Kubernetes services’ DNS name/IP addresses. We will introduce the “Azure Kubernetes Service cluster with API Server VNet Integration” and VPN gateways to achieve our task. We will also discuss some of Azure's fundamental concepts such as tenants, subscriptions, resource groups, and management groups.
Lab's prerequisite:
- An Azure subscription. You can get a free 30 day trial license @ azure.microsoft.com
- Bicep VS extension tools @ learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/install
- VPN Client Entra ID Auth:
Configure a P2S VPN gateway for Microsoft Entra ID (Sections: “Prerequisites”, “Create Microsoft Entra tenant users”, and “Authorize the Azure VPN application” @
authenticationlearn.microsoft.com/en-us/azure/vpn-gateway/openvpn-azure-ad-tenant
OR:
- VPN Client Cert Auth:
Configure server settings for P2S VPN Gateway connections - certificate authentication - Azure portal @ learn.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-howto-point-to-site-resource-manager-portal
Point-to-site VPN client configuration workflow: Certificate authentication - Windows @ learn.microsoft.com/en-us/azure/vpn-gateway/point-to-site-vpn-client-cert- windows
- VPN Client app:
Windows: @ apps.microsoft.com/detail/9np355qt2sqb?hl=en-US&gl=US
Mac: @ apps.apple.com/us/app/azure-vpn-client/id1553936137?mt=12
My other videos:
►Workload Identity Part 2: How Cilium Implements Its Mutual Auth Leveraging SPIFFE and SPIRE:
czcams.com/video/O3C9F3U7AV8/video.html
►Workload Identity part 2: How Cilium Implements Its Mutual Auth Leveraging SPIFFE and SPIRE
Workload Identity Part 1: Introduction to SPIFFE and SPIRE - CZcams
► Encrypt Client Communication to Kubernetes Services Leveraging Cert-Manage and Let’s Encrypt
czcams.com/video/pXEFZYl2Gu0/video.html
►Kubernetes Security, Part 4: Kubernetes Authentication (Part B: Open ID Connect Auth)
czcams.com/video/M9KABid_sCY/video.html
►Kubernetes Security, Part 3: Kubernetes Auth (Part A: Overview and X509 Client Certificate auth)
czcams.com/video/WZvPIoUyErM/video.html
►Kubernetes Security, Part 2: Managing POD Run Time Security
czcams.com/video/NNE9whCTp0g/video.html
► Istio Ambient Service Mesh
czcams.com/video/WPLVvwPGJvw/video.html
► Kubernetes Security, Part 1: Kubernetes Security Overview and Role Based Access Control (RBAC) in Detail
czcams.com/video/Qwkix9z8ywU/video.html
► Cilium Service Mesh
czcams.com/video/-o6E8bYj-xw/video.html
► Cilium Kubernetes CNI Provider: Part 4, IP Routing Modes (Direct and Encapsulated)
czcams.com/video/j2aox7K-7wU/video.html
► Cilium Kubernetes CNI Provider, Part 3: Cluster Mesh
czcams.com/video/gkrPt0ZcCfo/video.html
►Cilium Kubernetes CNI Provider, Part 2: Security Policies and Observability Leveraging Hubble
czcams.com/video/5EcVrm01rAU/video.html
► Cilium Kubernetes CNI Provider, Part 1: Overview of eBPF and Cilium and the Installation Process czcams.com/video/aLq3O3l2LF4/video.html
► What is VXLAN and How It is Used as an Overlay Network in Kubernetes?
czcams.com/video/WMLSD2y2Ig4/video.html
► Managing Linux Log-ins, Users, and Machines in Active Directory (AD): Part 2- Join Linux Machines to AD:
czcams.com/video/1tgqdz3lw-k/video.html
► Managing Linux Log-ins, Users, and Machines in Active Directory (AD): Part 1- Setup AD:
czcams.com/video/ftxxO381-_Q/video.html
► Sharing Resources between Windows and Linux:
czcams.com/video/MzHX6eUlZfs/video.html
► Kubernetes kube-proxy Modes: iptables and ipvs, Deep Dive:
czcams.com/video/lkXLsD6-4jA/video.html
►Kubernetes: Configuration as Data: Environment Variables, ConfigMaps, and Secrets:
czcams.com/video/mjcNIaRDAsc/video.html
►Configuring and Managing Storage in Kubernetes:
czcams.com/video/U11YjaRvCd4/video.html
► Istio Service Mesh - Securing Kubernetes Workloads:
czcams.com/video/GFXjlPBsykM/video.html
► Istio Service Mesh - Intro
czcams.com/video/x_HRl-Ehvb8/video.html
► Understanding Kubernetes Networking. Part 6: Calico Network Policies:
czcams.com/video/sxB9-td1-F8/video.html
► Understanding Kubernetes Networking. Part 5: Intro to Kubernetes Network Policies:
czcams.com/video/vjhA9TJWw-k/video.html
► Understanding Kubernetes Networking. Part 4: Kubernetes Services:
czcams.com/video/BZk2HUKsxAQ/video.html
► Understanding Kubernetes Networking Part 3: Calico Kubernetes CNI Provider in depth:
czcams.com/video/vOo__3GqyxM/video.html
zhlédnutí: 333

Video

Workload Identity Part 2: How Cilium Implements Its Mutual Auth Leveraging SPIFFE and SPIRE
zhlédnutí 743Před 7 měsíci
The classic mTLS implementation using sidecars is resource-intensive, slow, and poorly suited to microservices. The Cilium’s approach is to do away with sidecars and instead leverage eBPF which provides native performance. It has also split mTLS’s traditional mutual authentication and encryption into separate features that users can opt-in individually based on their requirements. To manage wor...
Workload Identity Part 1: Introduction to SPIFFE and SPIRE
zhlédnutí 1,8KPřed 8 měsíci
A workload is a single piece of software, deployed with a particular configuration for a single purpose; it may comprise multiple running instances of software, all of which perform the same task. A workload identity is a way for a workload to prove who it is and prove its authenticity to other workloads. Historically IP addresses were the standard way to identify workloads, however, in the mod...
Encrypt Client Communication to Kubernetes Services Leveraging Cert-Manage and Let’s Encrypt
zhlédnutí 825Před 10 měsíci
By default, client communication to Kubernetes services is in HTTP plain text. This is not desirable in a production environment, especially for clients outside the Kubernetes cluster. In this video, we’ll discuss how to encrypt this communication leveraging Kubernetes TLS ingress, Cert-Manager, and Let’s Encrypt certificate. We’ll start with a quick overview of Kubernetes services and why Kube...
Kubernetes Security, Part 4: Kubernetes Authentication (Part B: Open ID Connect Auth)
zhlédnutí 942Před rokem
In this video, we will discuss the Open ID Connect (OIDC) authentication method for Kubernetes. Although the default X509 client certificate authentication works for small Kubernetes environments, for large organizations, it is not the best method. We will start off by reviewing Kubernetes’ X509 client authentication and how clients are created and then discuss its shortcomings. We will then lo...
Kubernetes Security, Part 3: Kubernetes Auth (Part A: Overview and X509 Client Certificate auth)
zhlédnutí 950Před rokem
In this video, we will start by taking a look at Kubernetes authentication architecture and the authentication options it provides. We then dive into the default client authentication method (X509 client certificates). We will learn about Kubernetes’ PKI infrastructure and how certificates are organized. We will then visually walk through the process of generating client certificates and user a...
Kubernetes Security, Part 2: Managing POD Run Time Security
zhlédnutí 1,4KPřed rokem
Kubernetes Security, Part 2: Managing POD Run Time Security In this video, we will examine POD security settings (SecurityContext object), how to manipulate them, and why a misconfigured POD could pose a severe security threat. We will then look at ways to secure the PODs through Kubernetes’ POD “Security Admission” policies which provide a good security foundation for most projects. There will...
Istio Ambient Service Mesh
zhlédnutí 858Před rokem
This video will explore Istio’s Ambient Service Mesh in great detail. This is the new version of Istio’s Service Mesh which is still in development. Its most important feature is that it doesn’t use sidecars to implement mesh functionality. We will start by describing what Service Mesh is, followed by a detailed discussion of Istio’s sidecar-based Service Mesh architecture. We will then dive in...
Kubernetes Security, Part 1: Kubernetes Security Overview and Role Based Access Control (RBAC)
zhlédnutí 3,4KPřed rokem
In this video, we will explore Kubernetes Role Based Access Control (RBAC) to provide fine-grain access to users and service accounts. We will start off by taking a quick look at Kubernetes overall authentication and authorization and will discuss some security best practices. We will then dive deep into RBAC, its architecture, and its tenants (Subjects, (Cluster)Role, and (Cluster)Bindings). I...
Cilium Service Mesh
zhlédnutí 2KPřed rokem
In this video, we will explore Cilium’s, Service Mesh. We will start by defining a Service Mesh and then review an older and established Service Mesh provider Istio’s architecture. We will then dive into Cilium’s Service Mesh architecture to contrast the two and what advantages Cilium brings to the table. We will also discuss Cilium’s various new Mesh offering such as ingress (including TLS ter...
Cilium Kubernetes CNI Provider: Part 4, IP Routing Modes (Direct and Encapsulated)
zhlédnutí 3,4KPřed 2 lety
In this episode, we will learn about Cilium’s supported IP routing modes. IP routing essentially means how the PODs on one node communicate with PODs on other nodes. To start with, we will discuss the default mode which uses L2 VXLAN encapsulation. We will then discuss situations where all nodes are on the same subnet, and how to set up Direct routing (no encapsulation). Next, we will discuss h...
Cilium Kubernetes CNI Provider, Part 3: Cluster Mesh
zhlédnutí 3,5KPřed 2 lety
In this episode, we will learn about Cilium’s “Cluster Mesh”, its architecture, how to set it up, and will also discuss some use case scenarios such as load balancing/high availability, and shared services hosting. Links: Demo scripts: github.com/gary-RR/myCZcams_cilium_service_mesh/tree/main My Other Videos: ► Cilium Kubernetes CNI Provider: Part 4, IP Routing Modes (Direct and Encapsulated) c...
Cilium Kubernetes CNI Provider, Part 2: Security Policies and Observability Leveraging Hubble
zhlédnutí 4,6KPřed 2 lety
In this multi-part series, we will take a look at Cilium. In part 2, we will take a look at some Cilium constructs such as “endpoints” and endpoint “identity” and then will examine how Cilium could apply L3, L4, and L7 network policies to Kubernetes workloads. We will also take a look at Cilium CLI and Hubble CLI and UI. Links: Demo scripts: gary-RR/myCZcams_cilium_part1 (github.com) My Other V...
Cilium Kubernetes CNI Provider, Part 1: Overview of eBPF and Cilium and the Installation Process
zhlédnutí 17KPřed 2 lety
In this multi-part series, we will take a look at Cilium. In part 1, we will learn what Cilium is and how it leverages a key technology called “eBPF” to provide load balancing, observability, and security. We will also take a look at what eBPF is and conceptually walk through how a simple eBPF program can be organized and loaded into Kernel. We will wrap this episode up by going through a compl...
What is VXLAN and How It is Used as an Overlay Network in Kubernetes?
zhlédnutí 10KPřed 2 lety
In this episode, we will learn what VXLAN is and how it can be leveraged as an overlay network to manage Kubernetes POD networks. We will start off by getting a crash course on the networking Open Systems Interconnect (OSI) model, followed by an overview of overlay networks. In the following section, we will discuss what VXLAN is and go over its architecture, encapsulation model, and how it can...
Managing Linux Logins, Users, and Machines in AD: Part 2- Join Linux Machines to AD
zhlédnutí 738Před 2 lety
Managing Linux Logins, Users, and Machines in AD: Part 2- Join Linux Machines to AD
Managing Linux Logins, Users, and Machines in AD: Part 1- Setup AD
zhlédnutí 1,8KPřed 2 lety
Managing Linux Logins, Users, and Machines in AD: Part 1- Setup AD
Sharing Resources between Windows and Linux
zhlédnutí 733Před 2 lety
Sharing Resources between Windows and Linux
Kubernetes kube-proxy Modes: iptables and ipvs, Deep Dive
zhlédnutí 15KPřed 2 lety
Kubernetes kube-proxy Modes: iptables and ipvs, Deep Dive
Kubernetes: Configuration as Data: Environment Variables, ConfigMaps, and Secrets
zhlédnutí 3,7KPřed 2 lety
Kubernetes: Configuration as Data: Environment Variables, ConfigMaps, and Secrets
Configuring and Managing Storage (volumes) in Kubernetes
zhlédnutí 7KPřed 2 lety
Configuring and Managing Storage (volumes) in Kubernetes
Istio Service Mesh - Securing Kubernetes Workloads
zhlédnutí 2,9KPřed 2 lety
Istio Service Mesh - Securing Kubernetes Workloads
Istio Service Mesh (sidecar-based)- Intro
zhlédnutí 7KPřed 2 lety
Istio Service Mesh (sidecar-based)- Intro
Understanding Kubernetes Networking. Part 6: Calico Network Policies
zhlédnutí 6KPřed 2 lety
Understanding Kubernetes Networking. Part 6: Calico Network Policies
Understanding Kubernetes Networking. Part 5: Kubernetes Network Policies intro
zhlédnutí 9KPřed 2 lety
Understanding Kubernetes Networking. Part 5: Kubernetes Network Policies intro
Setup a Linux-Windows (Calico based) Hybrid Kubernetes Cluster to Host Windows Containers.
zhlédnutí 5KPřed 2 lety
Setup a Linux-Windows (Calico based) Hybrid Kubernetes Cluster to Host Windows Containers.
A Docker and Kubernetes tutorial for beginners
zhlédnutí 2,7KPřed 3 lety
A Docker and Kubernetes tutorial for beginners
Kubernetes services - (Understanding Kubernetes Networking Part 4)
zhlédnutí 19KPřed 3 lety
Kubernetes services - (Understanding Kubernetes Networking Part 4)
Setup a "Docker-less" Multi-node Kubernetes Cluster On Ubuntu Server.
zhlédnutí 2,8KPřed 3 lety
Setup a "Docker-less" Multi-node Kubernetes Cluster On Ubuntu Server.
Understanding Kubernetes Networking Part 3: Calico Kubernetes CNI Provider in depth.
zhlédnutí 43KPřed 3 lety
Understanding Kubernetes Networking Part 3: Calico Kubernetes CNI Provider in depth.

Komentáře

  • @trucvuongvan554
    @trucvuongvan554 Před 20 hodinami

    This video series is good. Nice work! I hope that you can make more.

  • @gsmurugaraja
    @gsmurugaraja Před 2 dny

    Amazing explanation

  • @ravipillai7662
    @ravipillai7662 Před 15 dny

    Absolutely the best series on K8s working principles and scenarios on the internet!

  • @ashishnair4630
    @ashishnair4630 Před 21 dnem

    Can u make a video on operators ?

  • @Techtips200
    @Techtips200 Před 23 dny

    These are great videos ....no one covers k8 networking deeper than you.

  • @efaruk
    @efaruk Před 24 dny

    Most comprehensive tutorial I've ever see, thank you mate...

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před 24 dny

      Glad you liked it!

    • @efaruk
      @efaruk Před 23 dny

      @@TheLearningChannel-Tech If you are someone who really likes learning fundamentals of things, how you can't like it 😉

  • @karteekchalla7451
    @karteekchalla7451 Před 25 dny

    Very good informative video! Have a question. At the time stamp 17:00, you mentioned that the tunnel interface will masquerade the actual source IP of the pod and the source IP in the inner IP header changes to tunl0's IP. But why is this required? Technically, even with keeping the actual IP address of the source pod in the traffic and then adding the outer IP header with the source IP as the eth0 of kube-node1-cal's eth0 and with destination IP as the eth0 of the destination node kube-master-cal , the return traffic can still reach the pod in kube-node1-cal, as the destination node will have the bgp route towards the entire pod subnet that is used in the source node kube-node1-cal.

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před 25 dny

      Hi, the reason is that these pods are not routable outside their host worker nodes. If the destination pod tries to send the response directly to the source pod, its host wouldn't know how to send it as there are no entries in the route table to assist it, so the tunnels play the middleman role facilitating this communication.

  • @vipinchawria
    @vipinchawria Před 27 dny

    Thank you !! One quick question - when UDP pipe is setup between two VMs hosting containers, how is destination VM's IP determined? For example - when we did a curl to hello word service IP from master to node1, to setup the UDP pipe, node1's IP needed to be known. Is calico doing some magic under the hood for this?

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před 26 dny

      Hi, yes when the source pod issues an ARP request, the Calico VTEP forwards it to the other node where the other pod responds, similar to the discussion of VXLAN overview discussion.

    • @vipinchawria
      @vipinchawria Před 26 dny

      @@TheLearningChannel-Tech Thanks for the response. So basically when the ARP response comes back from destination VTEP, source VTEP being a switch will remember that certain MAC lives on this VTEP. So after ARP, when ping packet is sent, source VTEP will establish the UDP pipe between source and destination VTEPs. Does this seem like correct understanding?

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před 25 dny

      @@vipinchawria Close, Calico is a CNI provider responsible for creating pods. It knows what pod (and its IP address) is assigned to what worker node. When the source pod issues an ARP, it basically says I'm looking for the MAC address of the pod that has this IP address. Calico VTEP examines the destination IP address and forwards it to the worker node that hosts that pod.

  • @simo47768
    @simo47768 Před 29 dny

    Hi Can you please do a serie about ebpf? Something easy to follow.

  • @eldarmustafayev7782
    @eldarmustafayev7782 Před měsícem

    amazing. thank you

  • @simo47768
    @simo47768 Před měsícem

    Wow. Amazing content. The best

  • @omega1962
    @omega1962 Před měsícem

    All of your vidoes are very informative and great for learning. Can you please explain how Networking works in AKS?

  • @ManiBalajiC
    @ManiBalajiC Před měsícem

    I am still learning your CILIUM Networking Videos for the AWS , let me comeback when i switched to AZURE...

  • @vamshikrishna4579
    @vamshikrishna4579 Před měsícem

    Vedio after a long time..thank you

  • @oceanmih2646
    @oceanmih2646 Před měsícem

    Great video, thanx for your kindness and effort

  • @oceanmih2646
    @oceanmih2646 Před měsícem

    Great tutorial

  • @rahulsawant485
    @rahulsawant485 Před měsícem

    Please can you explain the part how the packet is routed in the case where we get response from the pod on master having destination ip of the tunnel. how the response is sent from tunnel to the respective pod on the worker node

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před měsícem

      I'm trying to understand your question but if you are asking how a call from a pod on master is routed to a pod on node 1, it is done exactly like the scenario I explained in the video but is routed through the tunnel on node 1. Nothing is different.

    • @rahulsawant485
      @rahulsawant485 Před měsícem

      @@TheLearningChannel-Tech correct but as soon as it reached tunnel on node 1 how it knows to which pod it needs to send the response as in the IP header which we captured on master there was no information (IP) about the pod on node 1 as it was NAT to node 1 tunnel IP address. I am trying to understand how the packet is routed from node 1 tunnel to pod on node 1 as the response arrives

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před měsícem

      @@rahulsawant485 This is a call/response situation. The tunnel on the callin server masqurates the calling pod's IP address and sends the request to ther side. The pod on the other side (server) thinks the tunnel on the other side made the call and sends the responds back to the tunnel on the other side. That tunnel is sitting there waiting for the results and as soon as it gets it, it simplay forward it to the pod.

    • @rahulsawant485
      @rahulsawant485 Před měsícem

      Thank you. This statement "That tunnel is sitting there waiting for the results and as soon as it gets it, it simplay forward it to the pod." makes it clear

  • @oceanmih2646
    @oceanmih2646 Před měsícem

    great tutorias ever I have seen

  • @mariuscristian7617
    @mariuscristian7617 Před měsícem

    I have a question here. We have a datacenter with few VXLANs, one is for load web load balancers and one is for production servers. The K8S vxlan overlay can work on the top of existing VXLANs overlays? Thank you

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před měsícem

      Hi, the VXLAN implementation is internal to Kubernetes and is used to provide connectivity among pods within the Kubernetes cluster.

  • @geetikabatra
    @geetikabatra Před měsícem

    This is great! For so many years every book and folks used to refer switch as a layer 2 device, nobody explained it in terms of subnets. Now I am actually able to distinguish between Data layer anf Network layer.

  • @geetikabatra
    @geetikabatra Před měsícem

    Hey! Great video. A quick question about the daigram at 20:40, is NAT part of the router if we everything is a physical device?

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před měsícem

      Hi, yes, the NAT translation is done within the physical router. I just showed it outside the router for clarity.

    • @geetikabatra
      @geetikabatra Před měsícem

      @@TheLearningChannel-Tech Thanks a lot for clarification.

  • @JunLee-cj7nk
    @JunLee-cj7nk Před měsícem

    sudo nano /etc/yum.repos.d/kubernetes.repo no longer works

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před měsícem

      Thanks for letting for your feedback. This video was created three years ago before CentOS was discontinued.

  • @JunLee-cj7nk
    @JunLee-cj7nk Před měsícem

    sudo nano /etc/yum.repos.d/kubernetes.repo no longer works

  • @oceanmih2646
    @oceanmih2646 Před měsícem

    I just downloaded the shell script from your github repository, and tried it, but the ping only works for the namespace in the same node, failed to namespace of the other node I am confused a lot. I really appreciate if you can help.

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před měsícem

      Make sure you follow the instructions below and change the IP addresses to match your environment: # ------------------- Overlay setup --------------------- # To establish the udp tunnel (make sure to run these as root (sudo -i)): 1- On "ubuntu1" run: socat UDP:192.168.0.11:9000,bind=192.168.0.10:9000 TUN:172.16.0.100/16,tun-name=tundudp,iff-no-pi,tun-type=tun & #***Note that I removed "iff-up" switch from command on "ubuntu1" because I was getting an error. 2- On "ubuntu2" run: socat UDP:192.168.0.10:9000,bind=192.168.0.11:9000 TUN:172.16.1.100/16,tun-name=tundudp,iff-no-pi,tun-type=tun,iff-up & 3- Return to "ubuntu1" and run ip link set dev tundudp up #echo "Disables reverse path filtering" #sudo bash -c 'echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter' #sudo bash -c 'echo 0 > /proc/sys/net/ipv4/conf/eth0/rp_filter' #sudo bash -c 'echo 0 > /proc/sys/net/ipv4/conf/br0/rp_filter' #sudo bash -c 'echo 0 > /proc/sys/net/ipv4/conf/tundudp/rp_filter

    • @oceanmih2646
      @oceanmih2646 Před měsícem

      @@TheLearningChannel-Tech The ubuntu1 and ubuntu2 are on the same subnet, is it necessary to set up the UDP tunnel?

  • @oceanmih2646
    @oceanmih2646 Před měsícem

    awesome useful ,really really awesome video

  • @liangl4537
    @liangl4537 Před měsícem

    Grate work

  • @pankpunk1
    @pankpunk1 Před měsícem

    thanks a lot for posting this; I have one question related to setting up network policies; we have a use case wherein multiple applications are sitting in their own namespaces and these applications are accessible through the ingress controller using ingress; we want to whitelist traffic coming to each namespace using tools like calico; I found that although we are able to get the source ip of the client visible in the ingress controller, the application pods only receive the source ip of the ingress controller; I did manage to get the source ips in the request headers and looks like I will have to try istio for further traffic whitelisting on the basis of the headers; my question is, is this approach good or is there a better way to achieve what I want to achieve.

    • @pankpunk1
      @pankpunk1 Před měsícem

      so suppose I want client A to access application in namespace X but not application in namespace Y; how to whitelist this at the namespace level when this client is coming from outside the cluster using the ingress controller

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před měsícem

      Hi, Which IPs are you referring to? The IP addresses of clients that are calling from outside the cluster? In that case, you'll need to leverage a firewall that sits before the external load balancer and ingress controller. This is because as you noticed the client IPs are natted.

    • @pankpunk1
      @pankpunk1 Před měsícem

      @@TheLearningChannel-Tech yes, want to whitelist address of clients calling from outside the cluster; after using proxy protocol feature of the ingress controller, am able to see the actual client ips in the ingress controller; but am still trying to figure out how to get these ips whitelisted in the application pods which are reached through the ingress and are sitting in different namespaces per application

    • @pankpunk1
      @pankpunk1 Před měsícem

      so the intention is to filter at the namespace level with each namespace allowing a different set of ips to access the application it contains;

    • @pankpunk1
      @pankpunk1 Před měsícem

      I am coming to think that istio might be the solution here and will try that out; I don't think calico can help here. I read about the calico eBPF dataplane but not sure on it.

  • @atmajakota7348
    @atmajakota7348 Před měsícem

    Best thing found on internet.... Kudos to the efforts 😃

  • @DecodingGermany
    @DecodingGermany Před měsícem

    thanks for such detailed video.

  • @rafazmyslony5819
    @rafazmyslony5819 Před 2 měsíci

    Really, it's the best kubernetes networking explanation on entire internet. Believe me, I've seen many, even in diffrent languages:D

  • @adeshkashyap1703
    @adeshkashyap1703 Před 2 měsíci

    Being K8S Admin guy .. here I found the best on K8S networking .. Liking your videos too much .. Thanks for this great work

  • @benmoody9334
    @benmoody9334 Před 2 měsíci

    Great content, very helpful and gave me a good bit of clarity on some things.. some bits have still gone over my head but still great stuff.

  • @extde
    @extde Před 2 měsíci

    You may use following commands in WindowsTerminal/PowerShell (on windows host). You need to create ".kube" directory before: cd ~\.kube\ microk8s config > config Then use kubectl directly without microk8s "prefix" Also you may use this config to login to kubernetes dashboard.

  • @vitusyu9583
    @vitusyu9583 Před 2 měsíci

    What is the content of terry.jones.conf file?

  • @tnacav1
    @tnacav1 Před 2 měsíci

    This is very well explained, the official documentation is very confusing

  • @spiraldynamics6008
    @spiraldynamics6008 Před 2 měsíci

    Thank you ❤

  • @tnacav1
    @tnacav1 Před 2 měsíci

    This is great!

  • @alexs4112
    @alexs4112 Před 2 měsíci

    I finally understand how BGP works, thanks for explaining!

  • @darahaskopparapu
    @darahaskopparapu Před 3 měsíci

    Hi, Could you briefly explain how packets are forwarded from load balancer to ingress to services? where do these load balancer and ingress controller run? on master node? i basically didnt understand how ip addr are assigned to these... Thank You!

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před 3 měsíci

      Hi, Looks like you have skipped a lot of stuff in the presentation. I suggest you watch those discussions that start from the following URL that talks introduces the ingress concept, followed by how the load balancer and the ingress are related, and finally walks through setting up an ingress controller, the load balancer and some test service: czcams.com/video/pXEFZYl2Gu0/video.html

  • @karpfenboy
    @karpfenboy Před 3 měsíci

    Great presentation, thanks!

  • @sriharsha1162
    @sriharsha1162 Před 3 měsíci

    Hi Gary . I am a beginner in kubernetes. i see a lot of kubernetes related playlists in your channel but bit confused from where i need to start . could tell the sequence of playlists i should watch Thanks for all the videos

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před 3 měsíci

      Hi, You can start with these: Docker and Kubernetes Intro czcams.com/play/PLSAko72nKb8RZp3SH0KAZNCPvF71rqU7-.html Kubernetes Networking Series czcams.com/play/PLSAko72nKb8QWsfPpBlsw-kOdMBD7sra-.html

  • @arunreddy1436
    @arunreddy1436 Před 3 měsíci

    Thank God, finally found an interesting stuff to understand networking internals , thank you so much Sir for investing your time on this...

  • @ashokbalaraman
    @ashokbalaraman Před 3 měsíci

    Best explanation on K8s neworking on the internet

  • @SarangDumbre
    @SarangDumbre Před 3 měsíci

    Speechless.

  • @gpltaylor
    @gpltaylor Před 3 měsíci

    Simply the BEST video on the internet for understanding Docker Networking! Thank you, this must have taken a very long time to setup.

  • @453nabeel
    @453nabeel Před 3 měsíci

    Hello Sir , after installing Kubernetes Cluster using 22.04 Ubuntu LTS , we have 1 x master and 2 x worker nodes. We see calico as CNI plugin installed as a part of installation. Is it possible to change it to flannel instead of Calico and see the things that you did. It was great see VXLAN VNI in packet capture. Thanks !

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před 3 měsíci

      Hi, which episode are you referring to? All CNIs provide the same basic functionality but differ in implementation. So, if you just want to set up a cluster, any CNI would work.

    • @453nabeel
      @453nabeel Před 3 měsíci

      @@TheLearningChannel-Tech Thank you for replying. I am referring to Episode 2 of the series where you demonstrate how Flannel uses VXLAN for POD to POD communication across nodes. When I install cluster I see Calico as CNI Plugin. In order to see flannel , can I change to Flannel and then revert back to Calico?

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před 3 měsíci

      @@453nabeel You'll have to uninstall Calico and then install Flannel. There is no way to swap CNIs.

    • @453nabeel
      @453nabeel Před 3 měsíci

      @@TheLearningChannel-Tech is there any guide that shows how to remove Calico and install flannel? Because after testing flannel I will revert back to Calico by again installing it

  • @jonassteinberg3779
    @jonassteinberg3779 Před 3 měsíci

    I'd imagine inter-cluster load balancing is a feature mainly relevant to severely scaled environments? In my experiences 99% of shops have a small, medium or large cluster per environment so there really wouldn't be a need for inter-cluster load balancing. I have seen one dev environment made up of hundreds of very small clusters, but also in this case there is no need for inter-cluster load balancing. The cutover case also does not make sense to me: running concurrent clusters is going to be extremely expensive; then again: if the clusters are small then I doubt inter-cluster load-balancing would really matter? I could see a CICD pipe that's spinning clusters or in the lower environments has blue green clusters I guess, but I dunno...So is this a solution looking for a problem or what's the practical use case for this? Again I understand the feature, I'm just questioning its relevance. Stunning video per usual!

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před 3 měsíci

      Hi, The main idea behind cluster mesh is for very large organizations with geographically dispersed clients who want to improve latency by serving clients from the centers closer to them. Imagine the multinational companies where they may have clients in Asia, Europe, and North America. Having all the infrastructure concentrated in the US will create latency for clients that are in the other regions. The other benefit is fault tolerance, if one region goes down, other regions could pick up the slack. So those are the main aspirations behind a cluster mesh. The load balancing part requires intelligent load balancing, i.e. route traffic from the clients in a region to the services in the same region. The fault tolerance part requires that a failed cluster automatically fail over to other healthy clusters. At the time of recording that video, Cilium hadn't quite provided those features yet and I made a point of mentioning that in the conclusion section of the video. I haven't had a chance to revisit Cilium's cluster mesh to see if they have made any improvements.

    • @jonassteinberg3779
      @jonassteinberg3779 Před 3 měsíci

      @@TheLearningChannel-Tech Hm...I would think cloud providers would provide geographical load balancing via DNS to individual clusters in different cloud regions 🤔

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před 3 měsíci

      @@jonassteinberg3779 Yes, that is true if you host them in the cloud.

  • @ld5345
    @ld5345 Před 3 měsíci

    fantastic, thanks for your sharing.

  • @ganeshk5374
    @ganeshk5374 Před 3 měsíci

    One of the best explanation out there for Kubeenetes CNI concepts

  • @jonassteinberg3779
    @jonassteinberg3779 Před 3 měsíci

    I genuinely wonder how well IPVS works in production though because very few shops will run thousands of services on a single cluster so I dubious as to how reliable the integration is on the k8s side given how open source k8s is?

    • @TheLearningChannel-Tech
      @TheLearningChannel-Tech Před 3 měsíci

      Hi, IPVS has been part of Linux Kernel for quite some time now and is widely used in prod. The CNI providers such as Cilium are moving towards a newer technology called eBPF, here is a link to a video where I go into details: czcams.com/video/aLq3O3l2LF4/video.html

    • @jonassteinberg3779
      @jonassteinberg3779 Před 3 měsíci

      @@TheLearningChannel-Tech thanks, gary! I've watched your cilium video, but thank you for the tip, that's very helpful.