But du cours
Maîtriser la conception, le déploiement et l'administration d'infrastructures virtualisées complètes, en approfondissant les mécanismes de virtualisation au niveau hyperviseur, réseau et cloud privé. En s'appuyant sur les acquis en conteneurisation (SR702) et en surveillance (SR802), ce cours forme les étudiants à la construction d'environnements de production virtualisés robustes, sécurisés et automatisés, en intégrant les problématiques de haute disponibilité, de sécurité et d'infrastructure as code.
Acquis d'apprentissage visés
- Concevoir et déployer une infrastructure virtualisée complète (hyperviseur, réseau, stockage) adaptée aux contraintes de performance, de disponibilité et de sécurité d’un système d’information
- Administrer des machines virtuelles en production : cycle de vie, templates, snapshots, migration à chaud, haute disponibilité et basculement automatique
- Concevoir et mettre en œuvre des architectures réseau virtualisées (SDN, VLANs, VxLAN, pare-feux virtuels) en garantissant l’isolation et la sécurité des flux
- Déployer et administrer un cloud privé (Proxmox VE, OpenStack) et concevoir une architecture cloud hybride interconnectant ressources locales et services cloud publics
- Automatiser le provisionnement et la configuration d’infrastructures virtualisées à l’aide d’outils d’Infrastructure as Code (Terraform, Ansible)
- Identifier et contrer les vecteurs d’attaque spécifiques aux environnements virtualisés et appliquer les mesures de durcissement adaptées
Prérequis
- SR702 - Administration des Systèmes : Orchestration, Conteneurs et Automatisation (S7) : Docker, Kubernetes, LDAP, DNS, services cloud — complémentarité directe avec la virtualisation infrastructure.
- SR802 - Administration Système : Stockage et Surveillance (S8) : architectures de stockage, supervision, paradigmes cloud — prérequis direct.
- SR062 / SYSRES 602 - Administration systèmes 1 (S6) : administration Linux, gestion des services, scripting.
- SR051 - Principes des réseaux et de l’IoT (S5) : TCP/IP, routage, switching — indispensables pour la virtualisation réseau.
- Compétences transversales attendues :
- Administration Linux avancée : systemd, LVM, réseau, pare-feu (iptables/nftables)
- Scripting Bash et Python ; notions d’Ansible
- Pratique des environnements de virtualisation (VirtualBox, VMware Workstation ou KVM)
- Compréhension des architectures réseau : routage, VLAN, pare-feu
- Lecture de documentation technique en anglais
Programme
- Approfondissement des mécanismes de virtualisation :
- Rappels et positionnement par rapport aux conteneurs (SR702) et au stockage (SR802).
- Virtualisation assistée par le matériel : Intel VT-x, AMD-V, IOMMU, SR-IOV.
- Hyperviseurs de Type 1 : KVM/QEMU, VMware ESXi, Hyper-V, Proxmox VE — architecture interne et comparaison.
- Optimisation des ressources : overcommitment CPU/RAM, NUMA, affinité et anti-affinité des VMs, balloon driver.
- Haute disponibilité : clustering d’hyperviseurs, live migration, failover automatique.
- Templates, clonage et déploiement automatisé de VMs à grande échelle.
- Virtualisation réseau avancée :
- Commutateurs virtuels : Open vSwitch (OVS), VMware vSwitch, Linux Bridge.
- Segmentation et isolation : VLANs, VxLAN, GENEVE — tunneling et extension L2 sur L3.
- SDN (Software Defined Networking) : séparation plan de contrôle/données, OpenFlow, contrôleurs SDN.
- Pare-feux virtuels et routeurs logiciels : pfSense, OPNsense, VyOS — déploiement et configuration.
- Micro-segmentation et politiques de sécurité réseau est-ouest.
- QoS dans les environnements virtualisés : limitation de bande passante, priorisation des flux.
- Cloud privé et hybride :
- Architecture d’un cloud privé : compute, réseau, stockage, identité — les 4 piliers.
- Déploiement et administration d’un cluster Proxmox VE : HA, stockage Ceph intégré, gestion des ressources.
- Introduction à OpenStack : composants Nova, Neutron, Cinder, Glance, Keystone, Horizon.
- Cloud hybride : interconnexion cloud privé / cloud public via VPN site-à-site ou peering.
- Stratégies de burst vers le cloud public : gestion des coûts et des données.
- Infrastructure as Code (IaC) :
- Principes de l’IaC : idempotence, versionnement, reproductibilité.
- Terraform : provisionnement déclaratif de VMs et d’infrastructures cloud (providers Proxmox, AWS, Azure).
- Ansible : configuration et gestion de l’état des VMs et des hyperviseurs.
- Pipelines CI/CD pour l’infrastructure : intégration de l’IaC dans un workflow GitOps.
- Gestion des secrets et des credentials dans un contexte IaC (Vault, Ansible Vault).
- Sécurité des environnements virtualisés :
- Vecteurs d’attaque spécifiques : VM escape, hyperjacking, attaques par canal auxiliaire (Spectre, Meltdown, L1TF).
- Durcissement des hyperviseurs : surface d’attaque minimale, mises à jour, contrôle d’accès RBAC.
- Isolation renforcée : SELinux/AppArmor pour les VMs, namespaces, cgroups.
- Chiffrement des disques virtuels (LUKS) et des flux de stockage réseau.
- Gestion des identités dans un environnement virtualisé : intégration LDAP/Active Directory.
- Audit et traçabilité des actions d’administration sur l’hyperviseur.
Modalités d'évaluation
Contrôles continus et compte rendu de travaux pratiques.
Bibliographie
- Evi Nemeth et al. - UNIX and Linux System Administration Handbook - Addison-Wesley, 5^(e) éd., 2017
- James E. Smith & Ravi Nair - Virtual Machines: Versatile Platforms for Systems and Processes - Morgan Kaufmann, 2005
- Sameer Naik et al. - Kubernetes Cookbook: Building Cloud Native Applications - O’Reilly, 2024
- Documentation Proxmox VE : <https://pve.proxmox.com/pve-docs/>
- Documentation OpenStack : <https://docs.openstack.org>
- Documentation Open vSwitch : <https://docs.openvswitch.org>
- Documentation Terraform : <https://developer.hashicorp.com/terraform/docs>
- Documentation Ansible : <https://docs.ansible.com>
- ANSSI - Recommandations de sécurité pour les architectures basées sur la virtualisation : <https://www.ssi.gouv.fr/guide/>
Supports
Diaporamas et fiches de travaux dirigés et de travaux pratiques.