Elapse

Bien démarrer dans l’orchestration de conteneurs avec Kubernetes

Résumé

Comprendre l'architecture et les principes de base de Kubernetes.

Anciennement "Kubernetes 101"

Durée: 1 day

Prochains cours offerts

Les dates de formation ne vous conviennent pas ou vous aimeriez adapter le contenu de la formation? Nos formations sont aussi offertes en formation privée ou sur mesure.

Click here for English version (or scroll down) 

Description et objectifs

Cette formation d’une journée en format atelier vous permettra de prendre en main Kubernetes, comprendre ses concepts et son architecture, et être capable de l’utiliser pour vos applications. Elle met l’accent sur les principes « Cloud Native » et les architectures en microservices, mais est tout aussi pertinente pour les applications monolithiques traditionnelles.

De la théorie à la pratique : nous fournissons à chaque participant un cluster Kubernetes dédié, permettant de réaliser de nombreux exercices concrets tout au long des deux jours de formation. Les exercices proposent des composants écrits (entre autres) en Go, Java, Node.js, Python, Ruby, communiquant entre eux via des load balancers. Nous vous guiderons dans le déploiement de ce code et toute l’infrastructure associée.

Le contenu de la formation et des exercices est adapté quel que soit le modèle de déploiement Kubernetes  dont vous disposez ou disposerez : cloud public (AKS, EKS, GKE. . . ), cloud privé  (OpenStack. . . ), ou on-premises  (sur vos propres machines en datacenter).

Contenu

  •  Concepts de base
    • Qu’est-ce qu’un orchestrateur ?
    • Des pods aux conteneurs
    • Le plan de contrôle
    • Modèles impératif et déclaratif
    • Le réseau dans Kubernetes
  • Premier contact avec un cluster Kubernetes
    • Se familiariser avec kubectl
    • Comprendre les deployments , les replica sets , les pods
    • Lister et analyser les ressources existantes
    • Lancer nos premiers conteneurs
  • Service discovery  et load balancing
    • Accéder à des pods via un service
    • Différents types de service : ClusterIP, NodePort, LoadBalancer
    • Services headless
    • Utiliser CoreDNS pour la service discovery
  • Déployer une application de A à Z
    • Démarrer des microservices avec kubectl
    • Connecter les microservices ensemble
    • Passage à l’échelle et répartition de charge
    • Mitiger l’impact des mises à jour avec un rolling deploy
  • Techniques de déploiement avancées
    • Mise à jour dynamique d’un load balancer  grâce aux labels
    • Orienter le trafic avec les selectors  et labels
    • Ajuster la vitesse de déploiement et l’utilisation des ressources
  • Définir ses ressources en YAML
    • Générer et exporter une ressource en YAML
    • Mettre à jour la définition d’une ressource
    • Exemple : transformer un déploiement en daemon set
    • Connaître les pièges du YAML
    • Ressources générant d’autres ressources avec des templates
  • Quand plusieurs applications cohabitent
    • Utilisation des namespaces
    • Déployer plusieurs instances de la même application
  • Gérer la complexité des applications
    • Passage en revue des mécanismes de configuration
    • Gérer la configuration des applications avec les config maps
    • Informations sensibles et utilisation des secrets

Public

 Développeurs, administrateurs système, leads techniques, architectes.

Préalables

Pour assister à cette formation, il est utile de connaître et comprendre les notions de base associées aux conteneurs. Pas besoin d’être un expert, mais idéalement, vous êtes capable de construire une image (par exemple avec un Dockerfile ), lancer un conteneur, l’arrêter, inspecter ses logs. Si vous n’êtes pas familier avec ces concepts, vous pouvez vous initier à Docker à l’aide de ce « lab » en ligne (en anglais) : https://training.play-withdocker.com/beginner-linux/

Les travaux pratiques se feront sur des machines virtuelles (fournies par nos soins) auxquelles vous vous connecterez via SSH. Vous devrez donc venir à la formation avec votre ordinateur portable.

Note : étant donné que tous les logiciels utilisés sont en anglais, et que certains termes techniques n’ont pas de traduction assez précise en français, les supports de formation fournis sont en anglais. En revanche, la formation est présentée en français, par des intervenants bilingues français/anglais.

 


 

Course Description and Objectives

During this one-day training, you will learn all you need to know to get a head start with Kubernetes  and leverage it to deploy both traditional and microservices applications.

Each module of the course starts with an overview explaining the required concepts, followed by illustrative demos. The students will be able to reproduce these demos in personal environments. Numerous exercises will also be offered.

This hands-on approach will make sure that you acquire practical experience with Kubernetes, and are ready to use it immediately.

Content

  •  Kubernetes concepts
    • What’s an orchestrator?  
    • From pods to containers
    • The control plane
    • Declarative vs imperative models
    • Kubernetes networking overview
  • First contact with a Kubernetes cluster
    • Getting familiar with kubectl
    • Understanding deployments, replica sets, pods
    • Listing and inspecting existing resources
    • Running our first containers
  • Service discovery and load balancing
    • Accessing pods through services
    • Service types: ClusterIP, NodePort, LoadBalancer
    • Headless services
    • Using DNS for service discovery
  • Build, ship, and run a microservices app
    • Creating deployments
    • Exposing deployments internally and externally
    • Scaling and load balancing
    • Mitigating update impact with rolling deploys
  • Advanced deployment patterns
    • Dynamically update load balancer backends with labels
    • Traffic engineering with selectors and labels
    • Adjusting rollout speed and resource usage
  • Using YAML to define resources
    • Generating and exporting resource YAML
    • Update the cluster state by editing YAML specs
    • Use case: creating a Daemon Set from a Deployment
    • Knowing the gotchas of YAML
    • Resources generating more resources with templates
  • Deploying multiple apps side by side
    • Using namespaces
    • Deploying multiple instances of the same app
  • Managing app complexity
    • Review of app configuration mechanisms
    • Managing app configuration with config maps
    • Managing sensitive information with secrets

Target Audience

Developers, sysadmins, tech leads, architects

Prerequisites

You don’t need to have any prior knowledge of Kubernetes to attend this training. However, to make the most of it, you should have some basic knowledge of containers. You should at least know how to build a container image (e.g. with docker build ) and how to run it (e.g. with docker run ). You should also be  proficient with the Linux command-line: be able to navigate directories, create and edit files with an editor like vi, define environment variables and write simple for loops . . .

You will practice the labs and exercises on Kubernetes clusters running in the cloud (provided to you for the duration of the training). You will connect to these clusters with SSH. You will need to bring your own laptop computer, with a web browser and SSH client.

Logistics

  • WiFi-enabled laptop
  • Access to a Terminal and SSH client

Votre allié en développement logiciel Agile

Calendrier des formations

Professional Scrum Master (PSM de Scrum.org)

Formation Professional Scrum Master offerte à Québec les 25 et 26 avril 2019.

Québec, 25 avril 2019

BDD: analyse et spécification des besoins par l’exemple

BDD: analyse et spécification des besoins par l’exemple offerte à Québec le 9 mai 2019.

Québec, 09 mai 2019

Tests unitaires automatisés et TDD

Formation Tests unitaires automatisés et TDD offerte à Québec les 16 et 17 mai 2019.

Québec, 16 mai 2019

Professional Scrum Master II (PSM II de Scrum.org)

Formation Professional Scrum Master II offerte à Montréal les 30 et 31 mai 2019.

Québec, 30 mai 2019

Concepts orientés-objet avancés appliqués au développement agile

Formation Concepts orientés-objet avancés appliqués au développement agile offerte à Québec les 27 et 28 juin 2019.

Québec, 27 juin 2019

Consulter le catalogue>

Nouvelles

Formation "Designing microservices" avec Sam Newman

Sam Newman présentera sa formation/atelier "Designing microservices" en décembre 2017 à Montréal et à Québec.

04 septembre 2017

Conférences internationales WICSA et CompArch à Montréal

Conférences internationales WICSA et CompArch à Montréal

29 avril 2015

Formations offertes au printemps

Différentes formations spécialisées en génie logiciel et développement Agile sont encore disponibles pour vous ce printemps. Découvrez-les et réservez votre place dès maintenant !

06 février 2015

Deux de nos formateurs agréés par Emploi Québec

Nos formateurs, Félix-Antoine Bourbonnais et Pascal Roy, sont maintenant agréés dans le cadre de la Loi favorisant le développement et la reconnaissance des compétences de la main d’oeuvre d’Emploi Québec.

19 janvier 2015

Retour sur l’Agile Tour de Québec, édition 2014

L'édition 2014 de l’Agile Tour de Québec a été un vif succès pour l'équipe d’Elapse Technologies. Les salles étaient pleines et les critiques élogieuses.

10 novembre 2014

Toutes les nouvelles>

Blogue développement Agile

Étude sur l’économie créative: Éléments du succès de 9 entreprises agiles

Présentation des faits saillants d'une étude sur l'économie créative qui a permis de vi...

09 décembre 2015

Boxstarter : Comment standardiser et simplifier la configuration d’un poste de développement

Boxstarter est un outil qui peut vous aider à simplifier et standardiser l'installation...

07 octobre 2015

Tout le dossier Agile 2015

Pour aider nos lecteurs à revoir tout notre dossier #Agile2015, voici les liens vers no...

23 septembre 2015

Agile 2015: Nos impressions et les tendances (partie 3/3)

À la fin du mois d’août, Pascal et Félix-Antoine sont allés à la plus grande conférence...

17 septembre 2015

Agile 2015: Nos impressions et les tendances (partie 2/3)

À la fin du mois d’août, Pascal et Félix-Antoine sont allés à la plus grande conférence...

17 septembre 2015

Tous les billets>