5CLO1R - Cloud infrastructure

Appartient à l'UE Cloud infrastructure

Personnes enseignantes

CLO1 – 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 : 3TRE1ir
  • Co-requis : néant

Avertissement : Bien qu’il n’y ait qu’un seul prérequis officiel, le cours nécessite également des connaissances en administration système sous linux.

Description générale du cours

Ce cours vise à initier les étudiants et les étudiantes à la mise en œuvre concrète du cloud computing à travers l’orchestration de conteneurs avec Kubernetes (K8s). Le cours mettra l’accent sur l’utilisation de Kubernetes comme plateforme centrale pour déployer, gérer et faire évoluer des applications dans des environnements cloud, en exploitant les fonctionnalités offertes par les principaux fournisseurs de services cloud. 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 :

  • 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 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é à :

  • configurer et gérer des pods, deployments et services Kubernetes;
  • intégrer des ConfigMaps, Secrets et volumes persistants;
  • déployer des applications via Helm.
  • 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.

Transition Environnementale et Sociale

Éthique et neutralité du réseau

  • Principes de neutralité du net : tous les paquets sont traités équitablement, indépendamment de leur source ou destination
  • Réflexion critique sur la surveillance réseau : collecter uniquement les données nécessaires, éviter la collecte systématique et invasive
  • Responsabilité des choix d’infrastructure : comprendre les impacts sociaux et éthiques, pas seulement techniques

Accessibilité et inclusivité

  • Assurer que l’infrastructure réseau fonctionne pour tous les utilisateurs, y compris ceux avec des connexions limitées ou instables
  • Rejeter les solutions qui excluent : pas de dépendance aux technologies propriétaires quand des alternatives ouvertes existent
  • Formats ouverts et interopérabilité : privilégier les standards et formats libres pour éviter les lock-in technologiques

Sobriété technologique

  • Questionner systématiquement : une solution informatique est-elle vraiment nécessaire ? Pas simplement utile, nécessaire.
  • Quand une solution technique est justifiée, préférer les logiciels libres et les architectures minimales à la complexité inutile
  • Prolonger la durée de vie des infrastructures plutôt que de suivre une course technologique permanente

Ces principes forment des administrateurs conscients que leurs choix techniques ont des impacts éthiques et sociaux concrets.

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