dgt_k8s07 – Networking

Titolo del modulo: dgt_k8s07 – K8S Networking


Panoramica del modulo

dgt_k8s07 – K8S Networking è un modulo avanzato sul networking nell’ecosistema Kubernetes. Il modulo si concentra sull’integrazione e sulla gestione dei componenti di rete essenziali per scalare e mettere in sicurezza le applicazioni containerizzate.

Il networking è l’ambito in cui un modello mentale preciso conta di più. Dopo aver studiato come viaggiano i pacchetti tra pod, nodi e service, lavorerai esclusivamente in linguaggio naturale: chiederai alla macchina di isolare un namespace con una policy Calico, esporre un deployment tramite NodePort o capire perché due pod non riescono a comunicare. Poi leggerai i manifest e l’output diagnostico che produce, li confronterai con la teoria e riorienterai l’agente finché il traffico non scorre esattamente come previsto, e da nessun’altra parte.

Argomenti principali

  • Introduzione al networking di Kubernetes: comprendere i concetti fondamentali e l’architettura alla base del networking in Kubernetes.

  • Software Defined Networking (SDN): esplorare come le tecnologie SDN aumentano flessibilità, automazione e scalabilità negli ambienti cloud, e il loro ruolo nel semplificare infrastrutture di rete complesse all’interno dei cluster Kubernetes.

  • Network Policy di Calico: studiare l’approccio di Calico alla micro-segmentazione e all’applicazione della sicurezza tramite una gestione granulare delle policy. Capire come si usa Calico per proteggere la comunicazione tra pod in namespace diversi.

  • Kubernetes OVN (Open Virtual Network): conoscere l’architettura OVN e i suoi vantaggi nel networking di Kubernetes, tra cui l’assegnazione dinamica degli indirizzi IP e la comunicazione tra più cluster.

  • Open vSwitch (OVS): comprendere il funzionamento di Open vSwitch come switch virtuale multilivello. Esplorare come OVS supporta funzioni di rete avanzate come VLAN, load balancing e traffic shaping all’interno di Kubernetes.

  • Indirizzamento dei pod: studiare le strategie di gestione degli IP dei pod in Kubernetes. Capire le differenze tra indirizzamento host-local e IP univoci a livello di cluster, e le loro implicazioni sul deploy delle applicazioni.

  • Service in Kubernetes: studiare il ruolo dei service nell’esporre come servizio di rete le applicazioni in esecuzione su un insieme di Pod. Esplorare i diversi tipi di service (ClusterIP, NodePort, LoadBalancer) e come abilitano la comunicazione all’interno e all’esterno del cluster.

Risultati di apprendimento

Al termine del modulo, i partecipanti saranno in grado di:

  • Progettare soluzioni di networking Kubernetes robuste basate su tecnologie SDN e descriverle alla macchina con chiarezza sufficiente perché le implementi.
  • Istruire l’agente a configurare Calico per un’applicazione più rigorosa delle policy di sicurezza, verificando che ogni policy consenta e blocchi esattamente il traffico previsto.
  • Guidare il deploy e la gestione di OVN nei cluster Kubernetes, rivedendo la configurazione risultante in termini di prestazioni e gestibilità.
  • Specificare quali funzionalità di Open vSwitch servono a un’applicazione containerizzata e controllare che la macchina le abbia applicate correttamente.
  • Leggere e validare l’indirizzamento dei pod e le definizioni dei Service prodotte dalla macchina, per un’esposizione e una comunicazione efficienti delle applicazioni.

Destinatari

Il modulo è rivolto a DevOps engineer, architetti di sistema, amministratori di rete e professionisti IT responsabili di ambienti Kubernetes. È consigliata una conoscenza preliminare dei concetti di Kubernetes e dei principi di base del networking: è ciò che ti permette di giudicare se le scelte di rete della macchina sono corrette.


Il modulo tratta quanto serve per gestire e ottimizzare i deploy di applicazioni containerizzate in un ecosistema cloud-native.
Gli studenti possono caricare i propri esercizi nel Progetto Git dell’Academy DevOps & SRE. Per questo modulo, crea una cartella con il tuo username come nome nella seguente sottocartella: https://github.com/Garanti-Del-Talento/gdt_academy