Cours

Les concepts essentiels de Kubernetes («KUBNET»)

Ce cours permet d’acquérir des connaissances théoriques et pratiques des éléments fondamentaux de Kubernetes. Il marque une étape essentielle dans la préparation de l’examen de la certification « Certified Kubernetes Application Developer » (CKAD).
Durée 3 jours
Prix 2'700.–   excl. 8.1% TVA

Description de la formation

  • Connaître son rôle et son positionnement dans l’écosystème
  • D’avoir une vision globale de l’architecture
  • Détailler les différents processus utilisés
  • Savoir utiliser le client kubectl
  • Connaître les différentes primitives et savoir les utiliser
  • Connaître les différentes options pour installer un environnement et développement
  • Connaître différents outils permettant la mise en place d’un environnement de production
  • Développer des connaissances pratiques pour le déploiement d’applications
  • Comprendre la gestion des utilisateurs et des droits d’accès
  • Savoir utiliser des applications packagées dans des chart Helm
  • Préparation à l’examen de la certification « Certified Kubernetes Application Developer » (CKAD)
  1. Des concepts utiles
    • Les containers
    • La plateforme Docker
    • Architecture microservice
    • Application cloud native
    • DevOps
  2. Le projet
    • Présentation
    • Historique
    • Un projet phare de la CNCF (Cloud Native Computing Foundation)
  3. Overview des principaux éléments
    1. Théorie :
      • Cluster
      • Pod
      • Deployment
      • Service
      • Labels et annotations
      • Kubectl pour la communication avec un cluster
    2. Travaux pratiques :
      • Installation de kubectl
  4. Architecture
    • Les différents types de nodes
    • Les processus
    • Context
    • Les différentes interfaces de Kubernetes
  5. Installation
    1. Théorie : 
      • Cluster de développement / test
      • Cluster de production
      • Mise en place sur un cloud provider
      • Mise en place manuelle
    2. Travaux pratiques :
      • Mise en place d’un cluster de développement
  6. Les ressources : Pod
    1. Théorie :
      • Utilisation
      • Exemple
      • Cycle de vie
      • Scheduling
    2. Travaux pratiques :
      • Lancement d’un Pod simple
      • Lancement d’un Pod avec plusieurs containers
      • Utilisation de contraintes de déploiement
  7. Focus sur kubectl
    • Approche impérative / déclarative
    • Options très utilisées
    • Utilisation de plugins
    • Quelques outils indispensables
  8. Les ressources : Service
    1. Théorie :
      • Utilisation
      • Les différents types
      • Cycle de vie
      • Démos
    2. Travaux pratiques :
    • Création d’un service de type ClusterIP
    • Création d’un service de type NodePort
    • Création d’un service de type LoadBalancer
  9. Les ressources : Deployment
    1. Théorie :
      • Utilisation
      • Exemple de spécification
      • ReplicaSet
      • Stratégies de mise à jour
      • Rolling update et rollback
    2. Travaux pratiques :
      • Création d’un Deployment
      • Mise à jour
  10. Les ressources : Namespace
    1. Théorie :
      • Présentation
      • Création
      • Utilisation avec un Context
      • Quotas
    2. Travaux pratiques :
      • Création et utilisation de Namespace
      • Utilisation des quotas
    3. Mise en pratique :
      • Déploiement d’une application en utilisant les éléments précédents
  11. Les ressources : ConfigMap
    1. Théorie :
      • Utilisation
      • Les différentes possibilités de création
      • Utilisation dans un Pod
    2. Travaux pratiques :
      • Utilisation d’une ConfigMap pour la configuration d’un serveur nginx
      • Mise à jour d’une ConfigMap
  12. Les ressources : Secrets
    1. Utilisation :
      • Les différents types (generic, docker registry, TLS)
      • Démos
    2. Travaux pratiques :
      • Utilisation d’un Secret pour la connexion à une base de données externe
    3. Mise en pratique :
      • Déploiement d’une stack Elastic en utilisant les éléments précédents
  13. Utilisateurs et droits d’accès
    1. Théorie :
      • Requêtes au serveur d’API
      • Authentification
      • Autorisation
      • Démo
    2. Travaux pratiques :
      • Définition d’un utilisateur et d’un groupe via un certification x509
      • Mise en place des droits d’accès
  14. Interface de gestion
    1. Théorie :
      • Présentation du dashboard Kubernetes
      • Autres solutions open source
    2. Travaux pratiques :
      • Déploiement et utilisation du dashboard
  15. Les ressources : DaemonSet
    1. Théorie : 
      • Utilisation
      • Exemple pour la collecte de logs
      • Illustration avec un plugin network
    2. Travaux pratiques :
      • Création d’un DaemonSet
  16. Les ressources : Ingress
    1. Théorie : 
      • Présentation
      • Routage par nom de domaine ou via requête HTTP
    2. Travaux pratiques :
      • Exposition d’une application via un Ingress
  17. Application stateful
    1. Théorie :
      • La notion de Volume et les différents types disponibles
      • Présentation de différentes solutions de l’écosystème
      • StatefulSet
    2. Travaux pratiques :
      • Mise en place de Longhorn
      • Déploiement d’un cluster MySQL
  18. Helm
    1. Théorie : 
      • Présentation
      • Déployer des applications packagées dans des charts Helm
      • Création d’un chart Helm
    2. Travaux pratiques :
      • Déploiement de la stack TICK et packaging dans un chart Helm
Le cours est découpé en plusieurs parties. Celles-ci pourront être réorganisées de manière différente en fonction du déroulement de la formation. De nombreux exercices pratiques sont proposés pour illustrer les différentes notions. Cette formation s'adresse à toutes les personnes (développeurs, devops, administrateurs systèmes) qui souhaitent découvrir et se familiariser avec la plateforme Kubernetes. Elle s’adresse également à toutes les personnes qui souhaitent se préparer à l’examen de la certification « Certified Kubernetes Application Developer » (CKAD).

Les participants doivent être habitués à l’utilisation de la ligne de commande sous des systèmes Linux.

Une connaissance de la plateforme Docker équivalente au contenu du cours « Docker Administration et Opérations » est requise.

ATTENTION : Les frais d’examen ne sont pas compris dans le prix de la formation et l’examen ne se déroule pas dans le cadre du cours.

Cette formation permet de se préparer à l’examen de la certification « Certified Kubernetes Application Developer » (CKAD), délivrée par The Linux Foundation et cocréée avec la Cloud Native Computing Foundation (CNCF).

Format de l’examen :
  • En ligne
  • Durée : 2 heures
  • Langue : En anglais
  • Résolution de tâches à partir de la ligne de commande Kubernetes
  • L’examen est basé sur Kubernetes v1.29
L’inscription à l’examen se fait directement auprès de The Linux Foundation et coûte $395.

Une administratrice ou un administrateur K8 certifié.e est capable d’installer, de configurer et de gérer des clusters Kubernetes de qualité de production. Ils et elles maîtrisent les concepts clés de Kubernetes comme les notions de réseau, le stockage, la maintenance, la journalisation et la surveillance, le cycle de vie des applications, la résolution de problèmes et sont capables d'établir des cas d'utilisation de base pour les utilisateurs finaux.
 

Téléchargement

Questions sur le cours

Choisissez votre session...

Formations complémentaires