Formation Kubernetes Débutant

De la virtualisation à Conteneurisation

  • Les différents types de virtualisation.
  • Les conteneurs : namespaces, control-groups.
  • L'approche Docker
  • La problématique de l'orchestrateur
  • De Docker au cloud : Kubernetes

Premiers pas avec kubernetes

  • Les différents types de déploiement
  • Installation de docker (avec Kubernetes bêta)
  • Installation et configuration de minikube
  • Accéder au cluster Kubernetes : CLI (kubectl), GUI (dashboard) et APIs
  • Déploiement et publication manuelle
  • Publier manuellement un port
  • Détail et introspection du déploiement

TP : Mise en place d'une plateforme de test avec minikube Cycle de vie d'un déploiement manuel

Utilisation de fichiers descriptifs

  • Syntaxe des fichiers descriptifs YAML
  • Définition des différents termes : pod, service, replica set et déploiement
  • Fichiers YAML correspondant au déploiement manuel précédent
  • Scalabilité d'un déploiement
  • Stratégie de mise à jour sans interruption (update/rollback)
  • Suppression d'un déploiement

TP : Travaux pratiques Déploiement par fichier de description YAML

Architecture Kubernetes

  • Le master node et ses composants
  • Architecture d'un minion (Worker Node) 
  • Définition d'un pod statefull/stateless
  • La solution du replica-controller

Travailler efficacement avec Kubernetes

  • Clusterisation avec replicaset / replica controller
  • Les différents types de services
  • Les labels et le choix d'un nœud pour le déploiement
  • L'affinité et l'anti-affinité
  • Daemons set, Health check, Config map et secrets
  • Les volumes (Persistent Volumes /Persistent Volumes Claim)
  • Fusionner les fichiers YAML pour simplifier les déploiements

TP : Déploiement d'une stack Wordpress

Gestion avancées de conteneurs

  • Création d'images personnalisées
  • Présentation du Dockerfile
  • Utilisation optimisée de COPY
  • Un conteneur, plusieurs services
  • Déploiement d'une image personnalisée

TP : Création d'images personnalisées

Kubernetes en production

  • Le frontal administrable Ingress
  • Limitation de ressources simple
  • Les namespaces et les quotas
  • Haute disponibilité et mode maintenance

Déploiement d'un cluster Kubernetes sous Rancher

  • Préparation des nœuds
  • Déploiement d'un master-node
  • Déploiement d'un worker-node
  • Mise en place du réseau avec Flannel
  • Mise en place du dashboard

TP : Déploiement d'un cluster basique avec StorageClass NFS