VMWare ESXi 7 sur Intel Nuc 9

Afin de faciliter mes bricolages j'ai chez moi un gros (il est imposant) serveur HPE ML350p avec deux CPU Xeon et 128 GO de mémoire. Un peu surdimensionné, mais ça fait très bien le job pour mon home lab, d’autant plus qu’on me l’a donné il y a quelques années. Sauf que ça chauffe le garage et ça consomme beaucoup trop (200 watts sans charge). Autant dire que quand nos gouvernants nous appellent à débrancher le WI-FI ça me fait doucement rigoler dans ma barbe, mais je suis moins hilaire quand je reçoit la facture. Comme quoi l'écologie et la sobriété énergétique passe bien souvent par le porte monnaie. J'envisage des panneaux solaires, mais dans tous les cas, je cherchait une alternative moins énergivore.

J’ai vu pas mal de choses, les HPE MicroServer sont limités à 32 Go de mémoire, il y a des choses chez SuperMicro mais au niveau conso on doit pas être loin d'un HPE DL360gen8 qui sera moins cher en reconditionné.

Et puis je me suis dit qu'il restait l'option NUC. Ca fait un peu jouet quand on l'habitude de vrais serveurs et je trouvais ça un un peu léger coté ram et stockage, moi qui suis un vieil habitué du RAID (pas la maréchaussée, hein). Et puis sur les NUC il y a souvent qu'une seule interface LAN, sauf à passer sur des modèles extrêmes par le cout. Et puis je suis tombé sur le Nuc 9 qui est intéressant car on peut y coller 3 SSD M2, 64 GO de RAM, il dispose de deux ports Ethernet et même deux slots PCI. Ce n'est pas la dernière génération et on le trouve en version i7 à 500 € ce qui est un tarif très acceptable. Tarif auquel il faudra ajouter la RAM et les SSD. (Il y existe en i5 un peu moins cher, et même en i9 ou Xeon, mais bien plus couteux.

Un des intérêts du Nuc 9 est qu'il supporte nativement VMWare ESXi v7u3 et que l'on peut faire du RAID 1 matériel qui sera vu par ESXi. Et surtout coté consommation j'ai relevé de 15 à 50 watts (selon la charge), on est très loin des 200/350 watts du HPE ML 350p !

La liste des courses

J'ai profité des PrimeDays pour faire quelques économies :

Installation

La machine est compacte mais tous les composants s'installent facilement. J'ai installé deux SSD M2 sur la carte principale et on peut éventuellement en ajouter un de plus sous les slots PCI. Et comme je ne vais pas y coller une super carte graphique ces slots pourraient héberger une carte SSD ou réseau 10 GB. Encore que l'on dispose également de deux slots Thunderbolt en USB-C...

Avant de commencer on va désactiver le "secure boot" dans le bios, éventuellement le mettre à jour, et activer le boot USB. Pour le reste on laisse tout par défaut mais on notera pas mal de possibilités, notamment au niveau réseau ou il est possible de rattacher directement du iSCSI au niveau du bios. A tester avec un SAN ou un NAS.

Ensuite la partie est classique. On télécharge ESXi chez VMWare et on crée une clé USB sur laquelle on va booter. Contrairement aux anciennes génération de NUC celui ci est compatible de base, donc aucun besoin d'y injecter des drivers. En quelques minutes et un peu de configuration très basique (IP, etc.) notre serveur est prêt et n'y a plus qu'à s'y connecter. Pour le reste vous connaissez et la migration peut commencer.

Personnellement avant de migrer je préfère installer une nouvelle VM et laisser tourner la chose quelques jours à blanc, ce qui m'a également permis de débrancher un peu moi même.

Migration

Il y a plusieurs façons de migrer des VM d'un hyperviseur à un autre. En datacenter un héberge généralement pas les VM sur des disques locaux mais sur des SAN/NAS en iSCSI ou NFS. Et dans ce cas on ne bouge pas les fichiers des VM, on ne fait que les réimporter d'un hyperviseur à un autre. Tout ça peut aussi se faire avec vCenter, mais vu l'usine je vous déconseille en homelab.

Ici pour passer les VM sur mon nouveau serveur j'aurai pu simplement y déplacer les fichiers manuellement. Mais on peut faire ça plus facilement avec Veeam Quick Migration. Veeam est une solution d'entreprise loin d'être donnée, mais la version gratuite fera parfaitement le travail et vous aidera dans pas mal de taches.

Ajustements

Réseaux

Sur mon ancien ESXi j'avais plusieurs cartes réseau et donc plusieurs réseaux logiques. Avant la migration il faudra les recréer à l'identique, si par exemple on avait appelé le réseau WAN VM Network WAN il faudra que le nouveau ait exactement le même nom sans quoi il faudra éditer la configuration de la VM, supprimer la carte et la recréer. J'en parle d'expérience car je me suis fait avoir.

Version HW

Ceux qui pratiquent ESXi savent que chaque VM à son numéro de version de matériel virtuel et que de cette version dépend la possibilité d'ajuster le bon O/S afin de ne pas avoir de message d'erreur vous disant que le bon O/S n'est pas configuré. Dans la pratique je n'ai jamais vu d'erreurs liée à ça et mon vieil ESXi 5.0 (jamais mis à jour, oui je sais ce n'est pas une bonne pratique) faisait tourner des VM Windows 2019 déclarées en Windows 2008R2 depuis des lustres. Il y a surement un peu de marketing dans cette affaire... Mais on peut ajuster :

  • On crée un snapshot
  • On mets à jour les VMWare Tools (dans l'ordre car si vous mettez à niveau le matériel VM avant d'installer la dernière version de VMware Tools, les paramètres réseau peuvent être réinitialisés dans la machine virtuelle invitée Windows).
  • Et ensuite clic droit sur la VM et mise à niveau et édition de la configuration pour ajuster l'O/S.

Les détails sont ici. On peut revenir en arrière si on devait transporter la VM sur une ancienne version d'ESXi, mais c'est plus compliqué et non supporté officiellement.

Migration Veeam

La migration des VM est très facile avec Veeam mais si on le fait tourner dans une VM à migrer on va forcément avoir une erreur quand elle va se migrer elle même. Pas de panique, sur la cible on restaure le snapshot et on renomme avant de la faire redémarrer.

Il n'y a plus qu'à ajuster le plan de sauvegarde. Les anciennes VM apparaissent en VM_Migrated, on les supprime et on ajoute celles qui correspondent au nouvel hyperviseur.

Conclusion

Ca me fait bizarre d'abandonner mon vieux gros HPE ! Pour autant je n'ai pas l'impression de perdre en puissance. Certes je serais plus limité en mémoire, mais je n'ai pas le sentiment de manque de CPU et surtout il y a une très grande différence entre les disques mécaniques, qui étaient pourtant es SAS 1.5 K et mes nouveaux SSD M2 très véloces. Et ça change vraiment tout ! Pour l'instant il n'a même pas rejoint le garage ou il fait très chaud, il est sur mon bureau et pas un bruit avec pourtant pas moins de 20 VM actives....

Et pour le fun je vais vous en narrer une bien bonne...

Quand on crée un serveur ESXi on installe une partition de boot que l'on installait jadis sur une carte SD prévue à cet effet sur les vrais serveurs. Solution maintenant abandonnée au profit d'une petite partition dédiée, 120 GO par défaut mais que l'on peut réduire lors de l'installation. Bref, sur mon ancien HPE je ne devais pas avoir de carte SD sous la main et sans faire gaffe je lui avait laissé 800 GO de partition système, ce qui sur 4 disques de 600 GO en RAID 5 me laissait peu de place pour les VM.... Flemme de refaire tout ça je m'étais contenté il y a plus de 10 ans de rajouter deux disques de 2 TO en RAID 1....

Me voici donc avec un serveur HPE ML350p Gen 8 (2 x Xeon12 CPUs x Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz), de la RAM et plein de disques à céder.

EDIT'S

10/08/2022 : J'ai fait un autre test en ajoutant à cette machine une carte graphique 3060 TI de chez Asus. Ca rentre.

26/09/2024 : Que le temps passe ! Autre test avec une GPU de type 4060 TI (je me refuse à dépenser + de 500 € pour une carte graphique). Le problème il faut que la carte rentre dans le boitier du Nuc 9. Après deux retours chez Amazon je suis tombé sur cette carte MSI 4060 TI qui la seule aux bonnes dimensions avec deux ventilateurs. Il existe également les cartes Palit StormX 4060/4060TI en mono ventilateur qui m'ont moins inspiré confiance.

Sources

 

Cloud Storage

Mise à jour août 2019

Les NAS c’est bien, mais ça reste faillible et ce n’est pas extensible à l’infini. Donc on finit par acheter un second NAS pour faire la sauvegarde du premier, ou de nouveaux disques. C'est sans fin. Plutôt que d’entretenir des NAS de prod et des NAS de sauvegarde et continuer à acheter des disques regardons le cloud. Il s’agit de stocker des fichiers exploitables ou des sauvegardes. Mais on verra que l’on peut aussi s’en servir de disque. Je vais vous livrer mes réflexions, dans un cadre DIY adaptable en mode professionnel. Ce sont des notes, donc c’est un peu en vrac et je vous invite à commenter vos expériences.

Les fournisseurs possibles

  • OneDrive Business. Ils peuvent les offrir leurs 5 TO, car ce n’est pas très rapide et surtout le débit est très aléatoire,
  • Même réflexion pour OneDrive, Dropbox, ce n’est pas vraiment fait pour ça. Amazon Drive était intéressant en illimité, mais c’est terminé. Et ne me parlez pas de Hubic ou je vois rouge !
  • Google Drive. C'est la bonne surprise. Les débits sont bons, voire très bons et en prenant une GSuite Business on se retrouve avec un stockage illimité (théoriquement à partir de 5 users, mais dans la pratique c'est OK avec un seul).
    • Attention, il existe une limite de 750 GO en upload, mais il est possible de la contourner en partageant un "Drive partagé" avec d'autres comptes Google
    • Google Drive est reconnu par Synology Hyper Backup et Cloud Sync ce qui offre des perspectives.
    • Attention lors des scan avec Plex ou Emby qui peuvent conduire à des ban temporaires. Il existe des contournements et astuces avec PlexDrive et autres astuces (1 | 2 | 3 | 4)
    • Attention à localiser dès le départ les données en Europe afin de limiter la latence. Il est possible de le faire plus tard mais le processus sera alors très long s'il y a beaucoup de données.
  • Online c’est coûteux et techniquement pas adapté (iSCSI par exemple), Depuis 2019 il existe une offre S3 hébergée en France pour 10 € le TO.
  • OVH en OpenStack Swift revient à 10 € / le TO + le trafic sortant au même prix, en espérant que ça ne ressemble pas à Hubic… Ça peut être intéressant car c’est en France si on veut être full RGPD.
  • Azure Storage on n’en parle même pas dans ce cadre car trop coûteux.
  • Amazon S3 est top et plus abordable pour de la sauvegarde avec Glacier, mais ça reste coûteux.
  • C’est Wasabi qui m’a poussé vers le Storage cloud. C’est très abordable. Il n’y a pas de frais de de transfert, c’est donc le plus intéressant. Leurs Data center sont aux Etats-Unis, mais l’ouverture en 2019 d’un site aux Pays Bas les rends conformes RGPD. Et rien n’empêche un petit chiffrage à la volée… Leur tarification est très simple : 1 TO c’est $ 4.99 / mois, sans frais annexes.

J'avais donc le choix Wasabi, puis GSuite Business en 2019. il faut maintenant tester et trouver les bonnes solutions logicielles pour y transférer les différents types de données et les utiliser. Il existe plusieurs usages possibles, de la sauvegarde pure s’un serveur ou d’un NAS, voire d’une sauvegarde secondaire hors site pour des questions de sécurité ou de données qu’il faudra pouvoir exploiter en direct. Pour une reprise après incident il faudra prendre en compte le temps de téléchargement pour rapatrier rapidement un gros volume de données. Ce temps est bien sur étroitement lié à la bande passante disponible sur le site. Donc oubliez ces solutions si vous devez vous contenter d’une ligne internet famélique et que vous avez un gros volume à traiter.

Comme Wasabi est compatible S3 on peut jouer avec tous les outils initialement proposés pour AWS S3, j’en ai testé des douzaines mais je n’en citerais ici que quelques un.

Transfert et exploration de fichiers

  • RClone : C'est le couteau suisse. Et combiné à RClone Explorer c'est la solution idéale qui répond à quasiment tous les besoins en ligne de commande.
  • Synology Cloud Sync : Idéal avec un NAS de la marque. Sauf qu'il oublie parfois des fichier, notament sur OneDrive.
  • DragonDisk : Un explorateur gratuit mais lent qui peut dépanner.
  • CyberDuck : Un peu plus rapide mais impose un MD5 lent. Evolutions à évaluer.
  • Filezilla Pro : Compatible S3 et autres clouds c’est une bonne solution qui ne changera pas les habitudes.
  • Bvckup : le must pour de la synchronisation locale n’est pas adapté à ce genre de situation (uniquement SMB et pour l’instant mais des évolutions sont prévues).
  • CloudBerry Explorer : Ça c’est la bonne surprise : 30/70 MB/sec en up sur Wasabi en S3, un peu moins sous OVH en OpenStack, et encore moins sur OneDrive Business mais ça reste le plus rapide. Autant dire que ça change tout car dans tous les cas c’est la solution la plus rapide pour faire du UP, quel que soit la destination !

Sauvegardes

Plusieurs combinaisons existent et si l’on dispose d’un NAS Synology on peut sauvegarder les serveurs et PC avec Active Backup, ou Veeam et ensuite uploader tout ça vers le cloud avec Cloud Sync ou Hyper Backup…

  • Pour sauvegarder directement un PC, un Mac ou un serveur vers du S3 j’ai trouvé ARQ Backup particulièrement efficace et simple. Mais il existe plein solutions comparables.
  • Pour sauvegarder des NAS Synology j’avais testé Synology C2. C’est bien emballé et pas très cher avec historisation, cryptage et déduplication. Si on cherche à restaurer sur un nouveau Synology c’est très bien et on peut restaurer avec une bonne granularité (fichier, ou arbo, ou sous arbo à une date donnée. Sauf qu’en cas de crash on a rarement un second NAS sous la main avec les bons disques et on peut avoir besoin rapidement de certains fichiers. Synology à donc prévu une interface web de restauration qui hélas ne permet que de restaurer individuellement les fichiers, et d’après leur support ils n’ont pas de plans à court terme pour faire mieux. Et ça se comprend, leur recommandation étant d’acheter un nouveau NAS, d’en avoir deux et surtout d’utiliser C2 Disaster Recovery qui permettra de virtualiser le NAS sauvegardé dans leur DC. C’est top mais là on ne joue plus dans la même cour coté tarifs. Mon alternative consiste à sauvegarder vers Wasabi avec HyperBackup. En cas de besoin on peut restaurer avec Hyperbackup et si ce n’est pas possible on peut toujours accéder aux données via un CloudDrive et de lancer HyperBackup Explorer sur PC pour restaurer et décrypter ce que l’on veut depuis Windows, MacOS ou Linux.

Synchronisation

La synchronisation va permettre de disposer sur le cloud de données directement exploitables, contrairement à la sauvegarde qui chiffre et historise les données. C’est un usage différent pour des données bien souvent différentes. Si certaines solutions comme CloudBerry sont utilisables de façon interactive, CloudSync sur Synology est ce que j’ai trouvé de plus efficace pour maintenir un volume de données conséquent synchronisé entre un NAS et S3. CloudSync sait utiliser pratiquement tous les fournisseurs. On peut également s’en servir en mode transfert pour uploader des répertoires que l’on supprimera ensuite, il y a beaucoup d’options possibles. Et bien sur il ne faut pas oublier RClone !

Utilisation en direct

Au-delà des sauvegardes dont la restauration est ponctuelle et des transferts de fichiers que l’on pourra effectuer avec les logiciels vus plus haut, il peut être intéressant d’accéder directement aux fichiers comme s’il s’agissait d’un simple volume sur le réseau local. Et c’est là qu’interviennent les « cloud drive ». Contrairement aux clients OneDrive, Google drive ou Dropbox, les « cloud drive » ne font pas de synchronisation locale mais rendent disponible directement les fichiers distants.

  • ExpandDrive : des gens du Mac qui font du Windows, joli mais ça déconnecte, la fille du support est très gentille et doit savoir faire du bon café…
  • NetDrive : j’avais acheté et eu des résultats mitigés. La mise à jour coûte le prix de ce que j’avais alors payé.
  • StableBit : je le cite car parfait et très intéressant pour créer un volume sécurisé dans un cloud, mais ça ne correspond pas au besoin.
  • MountainDuck : c’est ce que j’ai trouvé de plus solide en S3 sur Wasabi,  OpenStack Swift, mais aussi en WebDav. En plus on peut facilement partager des liens de fichiers depuis l’explorateur Windows qui seront téléchargeables depuis la source en https sur un temps limité.  La licence est abordable et permissive, elle permet d’utiliser le logiciel sur plusieurs machines des lors que c’est le même utilisateur.
  • CloudBerry Drive S3 : à tester, mais il n’est compatible que S3 ce qui peut être restrictif. Si les performances sont aussi bonnes que CloudBerry Explorer les 79$ de la version serveur peuvent être un bon investissement pour utiliser Veeam sur Wasabi en attendant une solution intégrée.
  • RClone : Il permet de monter un volume distant directement sur Linux, sous Windows il faudra ajouter WinFSP et on pourra également servir de RClone Tray.
  • Pour Google Drive le plus simple, efficace et gratuit consiste à utiliser Google File Stream qui travaille online / offline et conserve un cache et un index. 

Je ne conseille pas trop de faire des travaux complexe directement sur les fichiers ainsi accessible. Mais en lecture ou en streaming direct ou via Emby ou Plex c’est parfait.

Débits

J’ai fait quelques tests ponctuels en upload pour me donner une idée (CloudSync, CloudBerry, etc.). En download les débits sont à minima identiques mais bien souvent plus importants.

  • Up Online DC vers Wasabi S3 : 30/90 MB/sec
  • Up Online DC vers OVH OpenStack : 30/40 MB/sec
  • Up Online DC vers Google Drive : 80/100 MB/sec (RClone)
  • Up Online DC vers OneDrive Business : 3/30 MB/sec (par beau temps) ce n’est pas non plus sur le papier une solution comparable, juste un détournement.

Réflexions

  • SMB 3. On n’y pense pas toujours, mais on peut utiliser SMB 3 via Internet afin de permettre à un PC ou serveur d’accéder à un NAS avec d’excellents résultats entre un NAS (j’ouvre le port 445 sur le NAS et via le firewall je limite la connexion à l’IP de la machine cliente). Ça peut aussi être une bonne solution pour du backup.
  • Cloudberry Labs à des solutions de sauvegarde Cloud qui peuvent être intéressantes car ils savent très bien gérer le débit sur le cloud.
  • Veeam propose une solution packagée nec plus ultra de sauvegardes de VM. OVH est partenaire. C’est très bien, mais rapidement coûteux. (15 € VM à 1 TO max). Depuis le 9.5 U4 on peut également exporter les anciennes sauvegarde vers du S3.
  • Veeam (9.5 update 4) est en 2019 compatible S3 et OpenStack ce qui va changer la donne…
  • NetBalancer est une découverte intéressante pour voir ce qui se passe sur un serveur exposé. La version freeware est suffisante.
  • Google Drive comme OneDrive convertissent les vidéos de façon à ce qu'elles soient lisibles sur les clients web, sans altérer les originaux (à vérifier).
  • De façon générale je recommande RClone pour transférer de gros volumes...

Voilà, vos réflexions et observations sont bienvenues...