Infrastructure Proxmox
Présentation du projet
Ce projet personnel consiste à mettre en place une infrastructure de virtualisation complète en utilisant Proxmox VE (Virtual Environment). L'objectif est de créer un environnement de test et de développement robuste, capable d'héberger plusieurs machines virtuelles (VM) et containers (CT) pour divers services tels que GitLab, NextCloud, un serveur VPN, et un serveur multimédia Jellyfin.
Mise en place du serveur
Objectif : Installer Proxmox VE sur un nœud et préparer l’infrastructure pour la virtualisation, avec stockage partagé et réseau interne. Cette étape pose les fondations pour l’ensemble du "futur cluster".
Préparation du matériel
Avant l’installation, il est important de vérifier que le matériel respecte les exigences minimales :
- Processeur 64 bits compatible avec la virtualisation
- Mémoire RAM : minimum 8 Go
- Stockage : minimum 10 Go pour le système + espace supplémentaire pour les VM
Pour ce projet, la configuration utilisée est la suivante :
- Processeur : Intel Xeon E3
- RAM : 16 Go
- Disques : SSD 500 Go pour le système, SSD supplémentaire 500 Go pour les backups
Installation de Proxmox VE
Le processus d’installation se déroule en trois étapes principales :
Configuration initiale
Après l’installation, il est nécessaire de configurer le serveur pour permettre la virtualisation :
- Accès à l’interface web de Proxmox via l’adresse IP configurée (ici : 192.168.11.200).
- Configuration du stockage local et ajout d’un second SSD de 500 Go pour les backups automatiques.
- Configuration du réseau interne pour permettre la communication sécurisée entre les VM et containers.
Mise à jours des package
Avant de commencer à déployer des machines virtuelles, il est crucial de s’assurer que le système Proxmox est à jour avec les derniers correctifs de sécurité et améliorations de performance.
apt update && apt
upgrade -y pveam update
Machines virtuelles
Dans cette étape, j'ai déployé et configuré l'ensemble des machines virtuelles (VM) et containers (CT) nécessaires pour mes services. L'objectif était d'avoir un environnement stable, facilement maintenable et automatisé pour les sauvegardes et les mises à jour.
Création et gestion des machines
- Création de templates personnalisés pour VM et CT afin de standardiser l'installation des systèmes.
- Déploiement des containers LXC pour des services spécifiques : GitLab pour le versioning, NextCloud pour le stockage, et un Ubuntu dédié pour VPN et Jellyfin.
- Déploiement de VM (Machine-virtuelles) supplémentaires pour des site web et bases de données personnalisés en utilisant l'iso Ubuntu Server.
- Mise en place de sauvegardes automatiques et snapshots réguliers pour garantir la continuité du service.
Configuration avancée
- Réseaux internes configurés pour que chaque VM/CT puisse communiquer de manière sécurisée.
- Automatisation des backups vers le stockage partagé du cluster Proxmox.
- Supervision des machines avec alertes en cas de problème ou de panne.
Ce que ce projet m'a apporté
La mise en place de cette infrastructure Proxmox m'a permis de développer de nombreuses compétences techniques et pratiques :
- Maîtrise des concepts de virtualisation et de gestion des ressources.
- Compétences en administration système Linux, y compris la gestion des réseaux et du stockage.
- Expérience pratique dans le déploiement et la gestion de services critiques tels que GitLab et NextCloud.
- Compréhension approfondie des bonnes pratiques de sécurité et de sauvegarde des données.
Compétences transversales
- Organisation et structuration d’une infrastructure complète.
- Autonomie dans la recherche de solutions et la résolution de problèmes.
- Capacité à documenter et maintenir un environnement technique.
- Vision globale d’un système en production.