5CLO1R - Cloud infrastructure

Appartient à l'UE Cloud infrastructure

Personnes enseignantes

Description technique du cours

  • Acronyme de l’activité : 5CLO1r
  • Bloc : 5
  • Quadrimestre : 1
  • Nombre de crédits : 2
  • Nombre d’heures de cours : 24h
  • Nombre d’heures de travail hors cours (estimation) : 35h
  • Format du cours : laboratoire
  • Langue d’instruction : français
  • Implantation : HE2B – ESI
  • Pré-requis : aucun
  • Co-requis : néant

Avertissement : Bien qu’il n’y ait aucun prérequis officiel, il s’agit bien d’un cours de BLOC 3 qui suppose des connaissances en réseau de niveau CCNA1 et CCNA2 ainsi que de l’administration système.

Description générale du cours

Ce cours initie les étudiantes et étudiants aux principes de l’infrastructure cloud moderne. À travers des activités pratiques, les participants découvrent Kubernetes et son usage en production. Dans la mesure du possible des parallèles sont fait avec les services équivalents chez Microsoft, Amazon et Google.

Objectifs généraux

Au terme de l’activité d’apprentissage, l’étudiante ou l’étudiant est en mesure de :

todo : à adapter

  • comprendre les concepts fondamentaux de la conteneurisation et de l’orchestration;
  • créer et appliquer des configurations Kubernetes pour déployer et gérer des applications;
  • analyser et résoudre des problématiques liées au stockage, au réseau et à la sécurité dans un cluster;
  • évaluer les avantages des solutions managées dans le cloud;
  • créer et automatiser une infrastructure déclarative avec Terraform et Helm;
  • développer un pipeline CI/CD pour le déploiement d’applications dans un environnement cloud.

Acquis d’apprentissage spécifiques sanctionnés par l’évaluation

Au terme des séances, l’étudiante ou l’étudiant est évalué sur sa capacité à :

todo : à adapter

  • configurer et gérer des Pods, Deployments et Services Kubernetes;
  • intégrer des ConfigMaps, Secrets et volumes persistants;
  • déployer des applications via Helm et provisionner une infrastructure avec Terraform.
  • concevoir et défendre un pipeline CI/CD complet (build → test → déploiement).

Acquis terminaux visés

Au sein de la formation de bachelier en informatique, cette activité d’apprentissage participe à l’acquisition des compétences suivantes.

Communiquer et informer

  • Choisir et utiliser les moyens d’informations et de communication adaptés.
  • Mener une discussion, argumenter et convaincre de manière constructive.
  • Assurer la diffusion vers les différents niveaux de la hiérarchie (interface entre les collaborateurs, la hiérarchie et/ou les clients).
  • Utiliser le vocabulaire adéquat.
  • Présenter des prototypes de solution et d’application techniques.

Collaborer à la conception, à l’amélioration et au développement de projets

  • Planifier des activités et évaluer la charge et la durée de travail liées à une tâche.
  • Analyser une situation donnée sous ses aspects techniques et scientifiques.
  • Rechercher et utiliser les ressources adéquates.
  • Proposer des solutions qui tiennent compte des contraintes.
  • Documenter son travail afin d’en permettre la traçabilité et le cycle de vie.

S’engager dans une démarche de développement professionnel

  • S’informer et s’inscrire dans une démarche de formation permanente.
  • Travailler tant en autonomie qu’en équipe dans le respect de la structure de l’environnement professionnel.

S’inscrire dans une démarche de respect des réglementations

  • Respecter les normes, les procédures et les codes de bonne pratique.
  • Respecter les prescrits légaux en vigueur relatifs au contexte dans lequel s’exerce l’activité (exemple code du bien-être au travail, RGPD, le droit à l’image, licences logicielles…).

Mobiliser les savoirs et les savoir-faire lors du développement d’applications

  • Choisir et mettre en œuvre un standard défini ou une technologie spécifique (méthodologie, environnement, langage, framework, librairies…).
  • Développer, déployer et assurer la maintenance des applications.
  • Participer à la sécurisation des réseaux informatiques, des périphériques, des systèmes de communication et des flux d’information numérique.
  • Choisir, mettre en œuvre un processus de validation et d’évaluation et prendre les mesures appropriées.

Analyser les données utiles à la réalisation de sa mission en adoptant une démarche systémique

  • Prendre en compte les évolutions probables de la demande et envisager les diverses solutions possibles.
  • Prendre en compte la problématique de sécurité des applications.

Collaborer à l’analyse et à la mise en œuvre d’un système informatique

  • Sur base de spécifications issues d’une analyse adaptée : (1) rédiger un cahier des charges, (2) développer une solution logicielle, (3) mettre en œuvre une architecture matérielle.
  • Assurer la maintenance, le suivi et l’adaptation des choix technologiques qui ont été implémentés.
  • Assurer la sécurité du système.

Modalités d’évaluations

Première session : évaluation continue avec défense individuelle de son travail.
Seconde session : présentation et défense du travail à faire au labo.

Contenus

Contenu non exhaustif adapté en fonction de l’avancement des groupes.

  1. Introduction à Kubernetes
  2. Pods & Deployments
  3. Services & Découverte
  4. Configuration & Secrets
  5. Stockage Persistent
  6. Réseau Avancé : Ingress
  7. Sécurité & Policies

Bibliographie