Utilisation optimale de la virtualisation [Résolu]

Signaler
-
 Punky -
Bonjour à tous.

Je collectionne les médias : Films, séries, musique, jeux et photos. J'ai donc décider de monter un serveur ESXi, pour chaque type de média j'ai monter une VM (windows 10), sauf pour les films et séries ou l'espace alloué et considérable et ou je préfère passer par une machine indépendante et j'ajouterais que chaque OS est sur un SSD différent. Cela me permet de gagner de la place, de faire des économies sur la facture d'elec et d'avoir une vue d'emble sur mes machines.

En gros : Kodi pour films et séries, Ampache pour la musique, Piwigo pour les photos, launchbox pour les jeux et prochainement un nextcloud pour les documents.

J'accède principalement à mes fichiers dans mon bureau, sois via l'explorateur, sois via RDP quand j'ai besoin d'un accès directe à la machine.

J'ai un dyndns chez ovh qui me permet d'accéder à mes fichiers depuis l'extérieur. Cela me permet donc d'isoler les services et ainsi éviter les conflits de ports.

J'aurais aimer savoir si ce genre d'utilisation est optimale et professionnelle, et comment auriez vous fait à ma place ?

Merci à vous :)

2 réponses

Messages postés
18511
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
22 février 2021
4 265
Bonjour,

La mise en place d'une VM pour chaque type de fichiers est loin d'être optimal, sachant que
1) le système hôte doit virtualiser l'ensemble des composants pour chaque VM
2) chaque VM doit charger entièrement le système d'exploitation (Windows 10, qui plus est...)

De plus, en allouant un SSD pour chaque VM qui contient à la fois l'OS et les fichiers, tu mélanges "logiciel" et "données" sur le même stockage, ce qui est beaucoup moins pratique pour effectuer des sauvegardes.

Pour le stockage, je te conseille de te diriger vers une solution "NAS". Je ne parle pas d'acheter un boitier NAS ni d'utiliser nécessairement un RAID "mirror". Je parle plutôt de regrouper les SSD dans un système (machine séparée, système hôte, ou machine virtuelle) qui créera un RAID (sans nécessairement le mirroir) et exposera le stockage sur le réseau, en NFS ou Samba.

Par exemple :
- Tu installes ESXi sur le SSD #1
- Tu crées un VM OpenMediaVault ou TrueNAS stockée sur ce SSD #1
- Tu alloues les autres SSD à cette VM en accès direct¹
- Tu crées un RAID/pool sur ces autres SSD, et tu exposes un stockage "media" en NFS/Samba
- Tu crées les autres VM sur le SSD #1 sauf que le disque virtuel sera de petite taille (juste pour l'OS et les logiciels) car la VM n'hébergera plus les données
- Tu montes le partage NFS/Samba dans chaque VM
- Tu installes les logiciels (Kodi, Ampache, ...) sur chaque VM et les configurer pour chercher les fichiers sur le disque réseau (Samba / NFS)

De cette manière :
- Si le SSD #1 tombe en panne, tu ne perds aucune donnée. Il faudra réinstaller ESXi, recréer et reconfigurer les VM, mais les données restent intactes sur les autres SSD.
- Les autres SSD formeront un RAID logiciel que tu peux connecter sur n'importe quel système Linux, le RAID pourra être détecté automatiquement et les données récupérées sans devoir réinstaller ESXi ou les VM. Utile en cas de panne, s'il faut accéder en urgence aux données.

Pour être encore plus "optimal", tu peux même placer tous les logiciels sur la même machine virtuelle. Je pense que 65535 ports, ça laisse assez de place pour éviter les conflits, en sachant que le port de chaque logiciel peut être choisi dans sa configuration. Pour l'accès aux différentes interfaces Web en HTTPS sur le port 443, un reverse proxy (Nginx, Traefik, Caddy, ...) fera le boulot.

Pour être encore plus optimal, tu peux utiliser des containers LXC au lieu des machines virtuelles. Toujours dans l'idée des "containers", il y a aussi Docker qui offre des images pour la plupart de ces logiciels, de cette manière, il ne faut même pas se soucier de leur installation.


¹ Ce n'est pas la méthode la plus recommandée car cet accès direct reste quand même sous le contrôle de l'OS hôte. L'idéal est de disposer d'un contrôleur SATA dédié à ces disques de stockage, et accorder à la VM un accès direct à ce contrôleur. Beaucoup de bidouilleurs dans ce domaine récupèrent les anciennes cartes RAID de type LSI MegaRAID, les flashent en mode "IT" afin qu'elles deviennent de simples contrôleurs SATA sans fonction RAID, le RAID étant géré logiciellement. Les cartes de type Dell H200 sont des LSI MegaRAID "rebadgées" et se trouvent pour peu cher en occasion.
Salut et merci beaucoup pour ta réponse.

Du coup je me demande si je vais tout simplement pas mettre un Windows qui hébergeras touts les services, et monter un NAS pour les données, finalement si une VM/1 service n'est pas optimal, autant que je me passes d' ESXi ? :)
Messages postés
18511
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
22 février 2021
4 265
Bonjour,

Ça dépend de ce que tu veux faire de cette machine.

Si le but est de servir uniquement de serveur multimédia, il peut en effet être préférable de se passer de la virtualisation, installer Windows et les logiciels dessus.

La virtualisation est intéressante si tu veux isoler des "rôles" différents, ainsi si tu plantes une VM, les autres VMs et le système hôte (ESXi) restent intactes.

Il faut choisir entre « une VM par programme » (pas optimal) et « tout sur un seul OS » (risquer de tout planter en une fois).
L'idéal est de grouper les programmes relatifs au multimédia sur une VM, grouper les applications Web (Nextcloud) sur une autre, ...

Un gros avantage non négligeable de la virtualisation est la possibilité offerte par plusieurs hyperviseurs (libvirt/KVM, Proxmox, ...) de gérer les machines virtuelles à distance, soit à l'aide d'une application desktop, soit via une interface Web. Si une machine virtuelle est plantée/inaccessible (erreur de config réseau par exemple), on peut toujours reprendre la main dessus à distance via le clavier/souris/écran virtuel "hors bande" (proposé par l'hôte, indépendant de l'OS guest) soit pour résoudre le problème, soit pour réinstaller l'OS sur la VM (même à distance).
Un autre avantage est la possibilité de faire des snapshots.
>
Messages postés
18511
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
22 février 2021

Oui voila, pour être précis il y aurais comme logiciels : Kodi (avec un script maison pour envoyer les mises à jour vers les clients) Ampache (mysql,apache) launchbox avec egalement script de maj pour les clients, piwigo (mysql, apache) effectivement vu de prés si il n'y a que deux instances de mysql et apache. Autent dire qu'il n'y a pas beaucoup de ports d'ouverts.
Donc à la limite j'essairais d'installer un Windows server où kodi et launchbox pourront tourner directement sur l'os hote (c'est à dire a chaques fois que je rippe des nouveau jeux ou vidéo, et un hyper-v avec une vm pour la partie Web (piwigo et ampache sur une VM, et un nextcloud sur une autre, puis un NAS pour la partie fichiers. Qu'en penses tu ? Après si ça plante, ça plante, ce n'est nullement une solution pro avec un rendement H24, pas d'high availability et pas d'hyper convergence ^^, tu vois ou je veux en venir.

Merci de tes réponses, c'est apprécié :)
Messages postés
18511
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
22 février 2021
4 265 > Punky
Bonjour,

Kodi et Launchbox sur le système hôte Windows me paraît idéal, mieux vaut exécuter tout ce qui est jeux vidéo / lecture vidéo sur un système réel plutôt qu'une VM.

Je placerai Piwigo, Ampache et Nextcloud sur une seule machine virtuelle Linux.

Concernant le NAS, il peut être virtualisé si la machine physique dispose d'assez de RAM : OpenMediaVault nécessite seulement 1 GB de RAM, tandis que FreeNAS en nécessite 8 GB. Si tu n'as pas besoin des fonctions de FreeNAS/ZFS (réplication à distance, snapshots, ...), OpenMediaVault convient. Le NAS doit avoir un accès direct aux disques, les disques ne doivent pas être gérés/formatés/montés par le système hôte.
>
Messages postés
18511
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
22 février 2021

Merci beaucoup pour tes précieux conseils, j'en prends bonnes notes. Je place le sujet en résolut :)