Kubernetes

Kubernetes, mise en œuvre

Objectifs de la formation

  • Comprendre le positionnement de Kubernetes et la notion d'orchestration
  • Installer Kubernetes et ses différents composants
  • Utiliser les fichiers descriptifs YAML
  • Définir les bonnes pratiques pour travailler avec Kubernetes


Programme de la formation

Introduction à kubernetes

  • De la virtualisation à conteneurisation. Le couple Docker/Kubernetes.
  • Solutions d'installation (MiniKube, On-Premise, etc.).
  • Installation et configuration de docker.
  • Accéder au cluster Kubernetes : CLI (kubectl), GUI (dashboard) et APIs.
  • Déploiement et publication manuelle.
  • Détail et introspection du déploiement.

Travaux pratiques

Déploiement d'une plateforme de test.

Les fichiers descriptifs

  • Syntaxe YAML.
  • Scalabilité d'un déploiement.
  • Stratégie de mise à jour sans interruption (update/rollback).
  • Suppression d'un déploiement.

Travaux pratiques

Déploiement, publication et analyse d'un déploiement.

Architecture Kubernetes

  • Composants du master node : API server, scheduler, controller manager, etc.
  • Architecture d'un minion : Kubelet, le moteur de conteneur (docker), Kube-proxy.
  • Objets Kubernetes : volume, service, pod, etc.
  • Objet statefull, objet stateless.
  • Solution du deployment.

Travaux pratiques

Utilisation de deployment.

Exploiter Kubernetes

  • Clusterisation avec replicas et deployment.
  • Types de services.
  • Labels et choix d'un nœud pour le déploiement.
  • Affinité et anti-affinité.
  • Daemons set, health check, config map et secrets.
  • Persistent Volumes et Persistent Volumes Claim.

Travaux pratiques

Déploiement d'une base de données et d'une application.

Gestion avancée de conteneurs

  • Création et automatisation d'images personnalisées.
  • Dockerfile.
  • Un conteneur et plusieurs services.
  • Déploiement d'une image personnalisée.

Travaux pratiques

Création et automatisation d'images personnalisées.

Kubernetes en production

  • Frontal administrable Ingress.
  • Limitation de ressources.
  • Gestion des ressources et autoscaling.
  • Service Discovery (env, DNS).
  • Les namespaces et les quotas.
  • Gestion des accès.
  • Haute disponibilité et mode maintenance.

Travaux pratiques

Déploiement de conteneur et gestion de la montée en charge.

Déploiement d'un cluster Kubernetes

  • Préparation des nœuds.
  • Déploiement : d'un master-nodeadm, d'un master-node, d'un worker-node.
  • Mise en place du Dashboard et du réseau.

Travaux pratiques

Déploiement d'un cluster.

Please login to get access to the quiz
(Next Lesson) Formation Kubernetes avancé
Back to Kubernetes
Public

Développeurs, architectes, ingénieurs de production, administrateurs.

Pré-requis

Administration système Linux, connaissances générales en conteneurisation (Docker ou CoreOS).