- Pour réduire les coûts AWS, mise en place d’un cluster Kubernetes bare metal et configuration d’un réseau 10Gbps
- Remplacement des commutateurs Ethernet et câbles traditionnels par un réseau basé sur un pont Ethernet USB4
- Le réseau a atteint 11Gbps, pour un coût de fabrication de seulement 47,98 $
Mini PC vs serveurs 1U standard
- Réflexion sur le type de machine à utiliser pour construire un cluster bare metal
- Les serveurs 1U d’occasion sont peu chers, mais inefficaces si l’on prend en compte les coûts d’exploitation
- Les mini PC sont peu coûteux, silencieux et consomment peu d’énergie
- Choix du mini PC Venus UM790 Pro, à faible consommation (6W au repos, 80W en charge maximale)
- CPU AMD Ryzen 9 7940HS + 64GB de mémoire + 1T de stockage pour 779 $, un prix abordable
Réseau
- Décision d’ajouter deux mini PC UM790 Pro supplémentaires pour étendre le cluster à 3 nœuds
- Après l’installation du système de stockage Ceph, un meilleur réseau entre les nœuds est devenu nécessaire
- Le matériel dispose bien de ports réseau 2.5G, mais il aurait aussi fallu acheter un commutateur Ethernet
- Exploitation des deux ports USB4 présents sur la machine, avec la perspective d’un débit pouvant atteindre 40Gbps
- Mise en place d’un réseau full mesh avec des câbles USB4, afin de réduire les coûts par rapport à l’achat d’un commutateur Ethernet 2.5G
Configuration d’un réseau mesh avec NixOS et systemd
- Utilisation de NixOS pour une configuration reproductible de l’environnement Linux.
- Configuration des interfaces réseau en pont Thunderbolt et attribution des adresses IP avec systemd-udevd.
Résultats des benchmarks
- Les benchmarks
iperf3 ont confirmé une vitesse réseau de 11Gbps
Retour d’expérience
- Satisfaction d’avoir construit un réseau 11Gbps à très faible coût.
- Interrogations sur les causes de la limitation de vitesse du réseau basé sur USB4.
- Exploration du potentiel futur des réseaux haut débit basés sur USB/Thunderbolt.
Avis de GN⁺ :
- Cet article souligne l’importance, pour les ingénieurs logiciels, d’élargir leurs connaissances du matériel. Il propose notamment une approche créative pour construire un réseau à haut débit à faible coût, offrant ainsi une nouvelle alternative aux méthodes de réseau traditionnelles.
- Le réseau basé sur USB4 montre qu’il peut être plus économique que les solutions classiques fondées sur Ethernet tout en offrant des performances élevées. Cela pourrait devenir une option attrayante à l’avenir pour les petits data centers ou les particuliers.
- La manière d’automatiser et de rendre reproductible la configuration réseau avec des outils comme NixOS fournit des informations utiles aux administrateurs système et aux développeurs.
11 commentaires
J’ai cru lire « achat en masse »...
C’est vraiment bien ficelé... je vous envie.
J’utilise très bien le transfert de fichiers via IP over TB4/USB4, et c’est vraiment rapide haha.
Si les paquets
thinderbolt-toolsetboltsont installés et que le pilote est correctement configuré, il suffit de régler l’interface avecnmclipour pouvoir l’utiliser aussi facilement qu’une connexion Ethernet classique avecssh,scp, etc.Il n’y avait pas de problème majeur avec les appareils Intel et Mac, mais avec AMD, certains appareils peuvent ne pas fonctionner.
Si seulement j’avais su ça, j’aurais choisi un CPU Intel… snif snif
Euh... si on relie directement deux PC en USB4/Thunderbolt, c’est reconnu comme de l’Ethernet ?
J’étais justement en train d’élaborer tout un plan pour faire une liaison 10 Gbps entre mon NAS et mon PC
(j’avais prévu d’acheter deux cartes réseau compatibles 10G pour les relier directement)
Et là, je me sens un peu bête.
Il aurait donc fallu que je change de carte mère pour en prendre une compatible USB4/Thunderbolt...
Quand je l’ai aperçu en coup de vent sur HN, je l’ai laissé passer sans trop y penser,
mais en le voyant ici, le contenu m’a soudain sauté aux yeux ;
Bref, grâce à ça, je vois une solution...
Le seul inconvénient, c’est probablement que le NAS et le PC doivent être proches.
Un câble USB4 ne fait au mieux qu’environ 3 m... (à comparer à un câble Ethernet qui peut aller jusqu’à 100 m)
Les contraintes de distance sont plus fortes qu’on ne l’imagine.
La norme des câbles USB-C ne prend en charge le 10 Gbit/s que si le câble fait 1 m ou moins. (C’est pour cela que les câbles de données USB-C sont courts.)
Jusqu’à 2 m, elle prend en charge 5 Gbit/s, et au-delà, c’est de l’USB 2.
En passant carrément du côté de Thunderbolt, on peut augmenter la distance à l’aide de câbles actifs, mais ces câbles actifs coûtent extrêmement cher, et je ne sais pas vraiment non plus s’ils sont compatibles avec l’USB4.)
Ah... il est donc très probable que les câbles USB4 de 3 m actuellement sur le marché ne puissent pas offrir des débits corrects.
Il va falloir que je vérifie ça précisément avant de me lancer. Comme j’utilise un CPU AMD, Thunderbolt est aussi difficile à utiliser pour moi, snif.
Avis Hacker News
Discussion sur le protocole USB4/Thunderbolt :
Explication de la topologie réseau :
Benchmark de la consommation électrique d’un serveur Dell :
Capacité de l’USB 4 à gérer les erreurs :
Anciennes méthodes de transfert de fichiers :
Optimisation des connexions Thunderbolt :
Souvenirs d’anciennes topologies réseau :
Problèmes techniques liés aux débits Thunderbolt :
Discussion sur les tarifs de l’électricité :
Ah, donc autrefois on pouvait aussi échanger des données entre ordinateurs via un câble parallèle ???