Ceci est un texte traduit automatiquement qui peut contenir des erreurs !
Les services cloud et la virtualisation sont étroitement liés : les deux consistent à utiliser des ressources de données sans posséder tout le matériel soi-même. Mais il existe quelques différences importantes.
Qu’est-ce que la virtualisation ?
La virtualisation consiste à exécuter plusieurs machines « virtuelles » sur la même machine physique. Au lieu d’avoir un serveur physique distinct pour le serveur web, un pour la base de données et un pour le serveur de fichiers, vous pouvez exécuter les trois en tant que machines virtuelles sur la même machine.
Le logiciel qui rend cela possible s’appelle un hyperviseur :
| Type | Explication | Exemple |
|---|---|---|
| Type 1 (bare-metal) | S’exécute directement sur le matériel, sans OS classique en dessous | Proxmox, VMware ESXi |
| Type 2 (hosted) | S’exécute au-dessus d’un système d’exploitation classique | VirtualBox, VMware Workstation |
Type 1 vs. Type 2
- Type 1 est ce que nous utilisons en production et dans la salle serveur. Proxmox s’exécute directement sur le serveur.
- Type 2 est ce que vous utilisez sur votre propre PC pour les tests. VirtualBox s’exécute sur Windows ou macOS.
Qu’est-ce qu’une machine virtuelle (VM) ?
Une VM est un système d’exploitation complet qui s’exécute à l’intérieur d’un autre. Elle dispose de sa propre (virtuelle) mémoire, CPU et disque, mais partage le matériel physique avec d’autres VM.
Avantages des VM :
- Isolation - Chaque VM est indépendante. Si une VM plante, les autres ne sont pas affectées.
- Flexibilité - Vous pouvez exécuter différents systèmes d’exploitation sur la même machine (par exemple, Ubuntu et Windows Server).
- Snapshot/sauvegarde - Vous pouvez prendre un instantané d’une VM et revenir en arrière si quelque chose se passe mal.
- Utilisation des ressources - Une machine physique avec beaucoup de RAM et de CPU peut exécuter de nombreuses VM.
Qu’est-ce que les conteneurs ?
Les conteneurs sont plus légers que les VM. Ils partagent le noyau du système d’exploitation avec la machine hôte, mais s’exécutent dans des environnements isolés.
| Propriété | VM | Conteneur |
|---|---|---|
| Taille | Grande (OS complet) | Petite (juste l’application et les dépendances) |
| Temps de démarrage | Minutes | Secondes |
| Isolation | Forte (OS propre) | Bonne, mais partage le noyau du système d’exploitation |
| Cas d’utilisation | Lorsque vous avez besoin d’un OS entièrement distinct | Applications uniques et microservices |
| Exemple | Proxmox VM, VirtualBox | Docker, Podman |
Når bruker vi hva?
- Utilisez une VM lorsque vous avez besoin d’un système d’exploitation complet, par exemple un Windows Server ou un serveur Linux avec un contrôle total.
- Utilisez un container lorsque vous avez seulement besoin d’exécuter une application, par exemple un serveur web, une base de données ou Grafana.
En pratique, nous utilisons souvent les deux : des VM comme hôtes pour les conteneurs Docker.
Services Cloud
Les services cloud signifient que quelqu’un d’autre possède et exploite le matériel, et que vous louez ce dont vous avez besoin sur Internet. Au lieu d’acheter et de maintenir un serveur physique, vous payez pour utiliser une machine virtuelle dans le cloud.
Modèles de service
Il existe trois modèles principaux pour les services cloud :
| Modèle | Nom complet | Ce que vous obtenez | Ce que vous gérez vous-même | Exemple |
|---|---|---|---|---|
| IaaS | Infrastructure as a Service | Machines virtuelles, réseau et stockage | OS, applications, configuration | Azure VM, AWS EC2 |
| PaaS | Platform as a Service | Une plateforme prête à l’emploi pour exécuter votre code | Uniquement l’application | Azure App Service, Heroku |
| SaaS | Software as a Service | Applications préfabriquées que vous utilisez via le navigateur | Rien de technique | Microsoft 365, Google Docs |
Un moyen simple de s’en souvenir
- IaaS = Vous louez une machine vide. Vous installez et configurez tout vous-même.
- PaaS = Vous louez un environnement prêt à l’emploi. Vous n’avez qu’à y intégrer votre code.
- SaaS = Vous louez une application prête à l’emploi. Vous n’avez qu’à vous connecter et l’utiliser.
Modèles de livraison
Les services cloud peuvent être fournis de différentes manières :
| Modèle | Explication | Exemple |
|---|---|---|
| Cloud public | Infrastructure partagée disponible pour tous | Azure, AWS, Google Cloud |
| Cloud privé | Infrastructure dédiée à une entreprise | Proxmox dans la salle serveur de l’école |
| Cloud hybride | Combinaison de cloud public et privé | Certains services locaux, certains sur Azure |
VPS : Une solution cloud courante
Un VPS (Virtual Private Server) est l’une des solutions IaaS les plus courantes. Vous louez une machine virtuelle auprès d’un fournisseur de cloud et avez un contrôle total dessus, comme si vous aviez votre propre serveur.
Utilisations typiques :
- Exécuter un serveur web
- Configurer un service VPN
- Héberger une application (par exemple, Flask + base de données)
- Tester des choses sans risquer votre propre matériel
Fournisseurs VPS populaires :
| Fournisseur | Avantages |
|---|---|
| Linode (Akamai) | Simple, bon marché, bons guides |
| DigitalOcean | Convivial, bonne documentation |
| Hetzner | Abordable, européen (compatible RGPD) |
| Azure | Intégré à l’écosystème Microsoft |
Kostnader i skyen
Les services cloud coûtent de l’argent, et cela peut rapidement devenir coûteux si vous ne faites pas attention. Une VM qui fonctionne 24h/24 et 7j/7 coûte plus qu’une que vous éteignez après utilisation. Vérifiez toujours les prix et configurez des alertes de coûts.
Local vs. Cloud
Many companies use a combination of local servers and cloud services. Here are some factors to consider:
| Factor | Local (on-premises) | Cloud |
|---|---|---|
| Control | Full control over hardware and data | Dependent on the provider |
| Cost | Large investment upfront | Ongoing monthly costs |
| Scalability | Limited by physical hardware | Can be scaled up and down as needed |
| Maintenance | You have to fix everything yourself | The provider manages the hardware |
| Privacy | You know where the data is | Data may be stored in other countries |
Exercice 1 - Exécutez une VM sur votre propre machine
Téléchargez VirtualBox (gratuit) et essayez d’installer une distribution Linux, par exemple Ubuntu Desktop ou Linux Mint.
- Quelle quantité de RAM et de CPU choisissez-vous d’allouer à la VM ?
- Remarquez-vous que votre PC devient plus lent pendant que la VM s’exécute ?
- Que se passe-t-il si vous essayez d’allouer plus de RAM à la VM que votre machine n’en a ?
Cela donne une bonne idée de la façon dont les VM partagent les ressources de la machine physique.
Exercice 2 - Démarrer un conteneur avec Docker
Si vous avez Docker installé (ou avez accès à une VM avec Docker), essayez d’exécuter :
docker run -d -p 8080:80 nginx
# Kjør en nginx-container i bakgrunnen og mapp port 8080 på verten til port 80 i containeren.
# Exécute un conteneur nginx en arrière-plan et mappe le port 8080 de l'hôte au port 80 du conteneur.
Visitez ensuite http://localhost:8080 dans votre navigateur. Vous exécutez maintenant un serveur web dans un conteneur ! Comparez le temps que cela a pris par rapport à la configuration d’une VM complète avec Nginx.
Exercice 3 - Quels services cloud utilisez-vous déjà ?
Réfléchissez aux services que vous utilisez au quotidien :
- Microsoft 365 (Word, Teams, OneDrive) est SaaS
- GitHub Pages pour héberger un site web est PaaS
- Si vous créez une VM dans Proxmox à l’école, c’est en pratique IaaS (uniquement en local)
Pouvez-vous catégoriser d’autres services que vous utilisez ?
Exercice 4 - Où se trouvent vos données ?
Allez sur le Microsoft Privacy Dashboard et regardez ce que Microsoft stocke à votre sujet. Vérifiez également les conditions d’utilisation d’un service cloud que vous utilisez :
- Où dans le monde les données sont-elles stockées ?
- Que se passe-t-il avec les données si vous supprimez votre compte ?
- Êtes-vous propriétaire de vos données, ou le fournisseur ?
Ces questions sont particulièrement importantes compte tenu du RGPD et de la confidentialité.
Résumé
- La virtualisation vous permet d’exécuter plusieurs services sur le même matériel, soit sous forme de VM soit de conteneurs
- Les services cloud signifient que quelqu’un d’autre possède le matériel et que vous louez ce dont vous avez besoin
- IaaS, PaaS et SaaS décrivent votre niveau de responsabilité
- Dans la pratique, beaucoup utilisent une solution hybride avec des services à la fois locaux et basés sur le cloud
- Le choix entre local et cloud dépend du contrôle, du coût, de la scalabilité et de la confidentialité