- Varun, qui a commencé le développement web pendant le confinement de 2020, est passé par Replit puis par son PC personnel avant de construire un homelab chez lui pour exploiter ses propres services et projets expérimentaux
- À mesure que se multipliaient des services avec de vrais utilisateurs — Quickz, un jeu de quiz en temps réel pour l’école, une plateforme de réseau social créée par lui-même, ou encore des outils pour la communauté Scratch — son expérience d’exploitation en self-hosting a elle aussi grandi
- Son premier serveur, sous Windows 10 Pro, a subi des problèmes de mises à jour et de downtime ; en novembre 2020, il est passé à Ubuntu Server et à une exploitation basée sur Linux, nginx et Docker
- Après avoir atteint les limites de stockage et de performances du Dell OptiPlex, il a acheté en mai 2022 un Dell PowerEdge R720XD d’occasion et a étendu son infrastructure autour de Proxmox et de VM Ubuntu Server
- Dock’n’Roll, qu’il a créé, reproduit le flux de déploiement rapide façon Replit sur son propre matériel et ses propres domaines, mais le homelab apporte aussi, en plus de la liberté et de l’apprentissage, des contraintes très concrètes comme le bruit, la consommation électrique et les déménagements
Un homelab dans sa chambre et des services en production
- Varun exploite deux serveurs chez lui
- un Dell OptiPlex posé au sol
- un Dell PowerEdge R720XD posé sur une petite table basse IKEA
- les deux serveurs sont reliés par des câbles Ethernet rouge et jaune
- Le serveur domestique héberge aussi bien des projets expérimentaux que des services avec de vrais utilisateurs
- une plateforme de réseau social qu’il a créée, avec plusieurs milliers d’utilisateurs
- Quickz, un jeu de quiz en temps réel pour l’école
- une plateforme de création et de partage d’animations de style flipbook, instance de démonstration de son MYP Personal Project
- des outils comme un moteur de recherche pour la communauté Scratch
- des serveurs de jeu pour ses amis
- plusieurs instances de Plausible Analytics
- un outil similaire à Replit pour créer et héberger des projets expérimentaux
Le self-hosting né du confinement de 2020
- Le point de départ remonte au confinement de 2020, alors que Varun avait 13 ans
- Il a commencé le développement web avec des sites HTML statiques, puis s’est vite mis à créer des applications plus complexes nécessitant un backend
- Ses premières applications web, ses bots Discord et ses scripts d’automatisation étaient hébergés sur Replit
- Pour son serveur Minecraft, il gardait son ordinateur personnel allumé afin de le proposer à ses amis
- S’il a choisi un serveur à la maison plutôt que le cloud, c’était moins pour réduire les coûts que pour apprendre toute la stack
- le frontend visible par les utilisateurs
- le backend et la base de données
- jusqu’à l’exploitation du serveur qui met réellement les services en ligne
- il estime qu’à son échelle, utiliser le cloud pourrait être plus rentable
Premier serveur : Dell OptiPlex et Windows 10 Pro
- Il a trouvé sur eBay un Dell OptiPlex équipé d’un i7-3770S et de 8 Go de RAM
- Lors de l’expédition des États-Unis vers la Suisse, le vendeur a d’abord envoyé une mauvaise quantité de RAM, et il a fallu plusieurs semaines pour régler le problème
- Au début, il a continué à utiliser Windows 10 Pro comme système d’exploitation serveur, simplement parce qu’il le connaissait déjà
- Disposer d’une adresse IPv4 statique à la maison rendait l’hébergement de sites web plus simple et plus stable
- Tous les services étaient placés derrière Cloudflare, qui gérait gratuitement SSL, DNS et une protection supposée contre les DDoS
De Windows à Ubuntu Server
- À l’époque, exploiter un serveur Windows 10 avait plusieurs avantages pour Varun
- il connaissait déjà Windows
- il pouvait tester dans un environnement proche de son poste de bureau personnel
- à la maison, RDP lui offrait une connexion rapide et de bonne qualité
- depuis le Chromebook fourni par l’école, il avait besoin d’un accès via le web et pouvait utiliser Chrome Remote Desktop
- Les mises à jour Windows provoquant des interruptions de service et l’obligeant régulièrement à réorganiser les fenêtres, il est passé à Ubuntu Server en novembre 2020
- Avant la migration, il craignait de perdre la sensation de comprendre rapidement l’ensemble du système, mais son habitude de la ligne de commande acquise en codant sous Windows l’a aidé à s’adapter vite à Linux
- Sa configuration Linux initiale était simple, mais comportait aussi des risques
- nginx exposé à Internet traitait le trafic HTTPS sur le port 443 avec un certificat autosigné et rejetait les requêtes ne venant pas de Cloudflare
- il faisait tourner plusieurs projets qu’il voulait garder en ligne 24 h/24
- il exploitait une seule instance MongoDB partagée par les projets
- il faisait tourner plusieurs serveurs Minecraft Java
- il avait exposé webssh2 pour accéder au serveur depuis l’école, tout en reconnaissant lui-même que ce n’était probablement pas très sûr
- L’installation de logiciels tiers est vite devenue complexe avec les dépendances et l’ajout de dépôts apt, et Docker est devenu l’outil qui simplifiait l’installation et l’exécution
- les logiciels tiers tournaient avec Docker
- son propre code s’exécutait directement sur le serveur
Limites de stockage et arrivée du PowerEdge R720XD
- Environ un an plus tard, il exploitait des projets avec de vrais utilisateurs, comme Quickz et sa plateforme de réseau social maison
- Le serveur s’est arrêté pendant qu’il était à l’école ; il a tenté de se connecter en SSH, mais des erreurs disque sont apparues avant qu’il ne finisse par être bloqué
- La cause était un manque d’espace de stockage, et il a gagné du temps en supprimant certains fichiers une fois rentré chez lui
- Le Dell OptiPlex existant, avec ses 8 Go de RAM et son i7-3770S, avait de plus en plus de mal à absorber la hausse d’usage
- En mai 2022, il a utilisé l’argent mis de côté grâce à des bug bounties pour acheter un Dell PowerEdge R720XD d’occasion
- trois disques de 3 To
- 128 Go de RAM DDR3
- deux CPU E5-2690 très énergivores
- Avant l’achat, il n’avait pas suffisamment réfléchi à l’espace, au bruit et à la consommation électrique ; il a réduit une partie du bruit en verrouillant la vitesse des ventilateurs iDRAC à 10 % via un hack non pris en charge
- Le R720XD possède deux alimentations, deux CPU et deux NIC, ainsi qu’iDRAC, sorte de mini-ordinateur permettant l’administration à distance même lorsqu’il est éteint
- Au début, il avait posé le serveur sur une table basse à côté de la télévision du salon, et le rack avec le matériel de montage coûtait plus cher que le serveur lui-même
Proxmox et architecture d’accès distant
- Sur le nouveau serveur, il a décidé d’utiliser un hyperviseur et a lancé Proxmox
- La majorité des ressources ont été allouées à une VM Ubuntu Server, et tous les services tournent désormais proprement dans Docker
- Cette structure lui apporte de la flexibilité, en évitant de tout reconfigurer lorsqu’il doit déplacer des services par la suite
- Il exploite séparément une VM Xubuntu nommée
backdoor, avec Chrome Remote Desktop- il peut accéder de n’importe où à un espace de travail pratique sur son réseau domestique
- il pourrait configurer un VPN comme OpenVPN ou WireGuard, mais cette approche fonctionne aussi sur des appareils contraints comme un iPad et sur le Wi-Fi public de l’école
- il y voit aussi l’avantage de ne pas avoir à s’inquiéter des tentatives de bruteforce par des bots
Dock’n’Roll, sa propre version de l’expérience Replit
- Même après avoir eu plusieurs serveurs, le flux d’expérimentation rapide de Replit a continué à lui manquer
- Replit était pratique pour lancer rapidement des applications isolées pour des projets ponctuels, des expériences et des démos, avec un flux où le code écrit dans l’IDE web devenait immédiatement accessible sur le web
- Replit était gratuit, mais a introduit des fonctionnalités de monétisation ; les repl inactifs sont désactivés lorsqu’il n’y a pas d’utilisateurs, et il comprend qu’il n’est plus possible d’héberger gratuitement des sites web dynamiques publics
- Pour utiliser son propre matériel et des domaines qu’il contrôle directement, Varun a créé Dock’n’Roll, un clone self-hosted de Replit basé sur Docker
- Dock’n’Roll est un service mono-utilisateur
- il code des applications web dans une interface privée,
dockn.varun.ch - les résultats sont immédiatement accessibles publiquement sous
*.varunbiniwale.com
- il code des applications web dans une interface privée,
- Les composants sont les suivants
- un panneau de contrôle créé avec ExpressJS et une interface web basée sur Monaco Editor de VSCode
- le bouton de démarrage d’un projet construit l’image et lance le conteneur via la Docker Engine API
- les métadonnées des projets sont stockées dans Redis
- le port 80 de chaque conteneur est automatiquement exposé sur
:project.varunbiniwale.comvia un reverse proxy OpenResty communiquant avec Redis grâce à un plugin Lua - les fichiers sous
/persisted/sont conservés après le redémarrage du conteneur et peuvent être consultés et modifiés dans l’interface web - l’interface d’administration web est protégée par un custom nginx auth proxy qu’il a créé
- Dock’n’Roll est aussi utilisé pour la chasse aux bugs
- il héberge des outils arbitraires utilisés pour trouver des vulnérabilités comme le blind SSRF et le XSS
- un exemple fournit des images générées automatiquement sur
yourip.varunbiniwale.com
Le homelab aujourd’hui et ses limites futures
- Varun résume son homelab en reconnaissant qu’il est peut-être un peu excessif, mais que c’est un environnement qu’il possède et qu’il aime
- Il pense qu’un jour, lorsqu’il déménagera pour aller à l’université après son diplôme, il ne pourra probablement pas emporter les serveurs, et il ne souhaite pas non plus imposer à ses parents la charge de continuer à faire tourner le matériel chez eux
- Le self-hosting ne convient pas à tout le monde, mais il estime que si l’on aime bricoler et que l’on est prêt à en assumer les conséquences, cela vaut la peine d’essayer un petit projet self-hosted
- Exploiter ses propres serveurs lui a appris beaucoup de choses, et il ressent une forme de liberté dans le fait d’avoir un endroit sous son contrôle pour exécuter ses outils et projets
- Cette configuration génère parfois du stress et n’est peut-être pas toujours la solution la plus pratique, mais elle lui a permis d’acquérir de nombreuses compétences qu’il aurait eu du mal à apprendre autrement
1 commentaires
Commentaires sur Hacker News
Moi aussi, j’ai un petit homelab et j’ai 16 ans :)
Avant, j’hébergeais tous mes services dans le cloud, mais après avoir eu une ligne 1G/1G à la maison et découvert que des associations revendaient à bas prix du matériel d’entreprise mis au rebut ou récupéré en décharge, j’ai décidé d’exploiter moi-même des serveurs physiques
Aujourd’hui, je fais tourner Proxmox sur 2 machines et 1 NAS, avec 14 disques rotatifs, et j’héberge un serveur Minecraft, des projets perso de programmation, un scanner de vulnérabilités, des bots Telegram, des VPS pour des amis, des machines virtuelles pour des builds Android et macOS, du stockage, un projet scolaire de machine learning avec une 1050 Ti ajoutée récemment, ainsi que l’infrastructure du CTF de mon école
Au passage, je suis en Italie
Ensuite, j’ai étudié la physique, fait un doctorat, puis un postdoc sur les réseaux de neurones, mais ce qui m’a paru le plus important a été d’inspirer des jeunes comme celui que j’étais, donc cette année je suis revenu en Italie et je suis devenu professeur de lycée
Je prépare aussi un cours de Python après l’école, donc si tu n’es pas trop loin de Milan et que discuter avec des élèves t’intéresse, ça pourrait valoir le coup d’y réfléchir. Bonne continuation à toi
Il aurait fallu qu’ils soient dans le même lycée
Dans tous les cas, bravo à ta famille de soutenir ce qui t’intéresse
Quand j’avais 16 ans, en 2001, j’ai acheté avec l’argent d’un job d’été le "Teach Yourself C" de Herbert Schildt, une carte vidéo et un Sony Trinitron
Vers la fin du chapitre 5, Herb a commencé à parler bizarrement des tableaux multidimensionnels, et quand j’ai vu que le chapitre suivant portait sur les pointeurs, littéralement de la magie noire et du non-sens, j’ai été submergé et je suis passé au plan B : devenir rockstar. La programmation était trop difficile
Ce que j’ai appris m’a surtout servi à mettre des programmes sur ma TI-82 pour tricher aux contrôles de maths
Quelques années plus tard, pendant mon premier semestre à l’université, un conseiller m’a recommandé de repousser mon choix de spécialité d’un semestre et de suivre différents cours qui m’intéressaient, et ça m’a vraiment sauvé
J’ai acheté mon premier livre sur Java et je me suis mis à le dévorer ; c’était bien plus accessible que le livre sur le C, et quand je suis allé à mon premier cours, j’avais déjà lu tout le programme
C’est comme ça qu’a commencé un parcours qui dure maintenant depuis plus de 15 ans, dans une voie que je croyais avoir abandonnée une fois pour toutes
Je joue toujours de la guitare et j’y prends du plaisir, mais je sais que je ne serai jamais meilleur musicien que je ne suis ingénieur
Je me souviens que quand j’apprenais le C à l’adolescence, tous les supports avertissaient qu’avec les pointeurs, ça devenait soudain étrange et difficile
Au début, ça me semblait totalement mystérieux, mais c’était les vacances d’hiver et j’ai décidé de m’y accrocher jusqu’à comprendre. Je ne sais plus si ça a pris quelques heures, quelques jours ou toute une semaine, mais au moment précis où j’ai compris, j’ai ressenti une immense satisfaction, et après ça j’avais l’impression de pouvoir tout faire
J’ai lu une interview de Hidetaka Miyazaki, le directeur de la série Dark Souls, connue pour sa difficulté, où il racontait avoir vécu quelque chose de similaire en apprenant les accords barrés à la guitare, et avoir retranscrit dans ses jeux cette satisfaction qu’on ressent quand on surmonte un gros obstacle
C’est une sensation vraiment puissante
Finalement, quand j’ai compris qu’un pointeur n’était qu’une adresse mémoire, une bonne partie de cette confusion s’est effondrée d’un coup autour d’une idée très simple. Je me souviens encore de ce que ça m’a fait mentalement
Beaucoup de camarades autour de moi ont vécu la même chose, et tout le monde ne l’a pas surmontée
Du coup, je me repose la question : pourquoi les pointeurs en C sont-ils si difficiles à comprendre ? Est-ce le concept lui-même, c’est-à-dire l’indirection, la notation avec
&et*, le fait de traiter les tableaux comme des pointeurs, ou autre chose ?Avant l’université, j’avais passé beaucoup de temps à piloter des puces VIC et SID avec les commandes
peeketpoke, et à écrire en assembleur ; ce bagage ne m’a sans doute pas desservi quand j’ai découvert le C, même si je n’avais pas tout de suite fait le lien à l’époque. Je me demande aussi quel en serait l’équivalent aujourd’huiÀ l’époque, j’avais déjà un vague sens général des langages de programmation, mais j’étais encore presque débutant, et j’avais demandé pourquoi mon afficheur d’arguments en C sortait
envp, sans rapport avec(null)ni avec quoi que ce soit d’utileUne personne extrêmement gentille sur le canal m’a guidé avec patience pour me faire comprendre les bases des pointeurs, et c’était il y a environ 16 ans. Je ne me souviens plus de son nom, mais merci à cette personne de m’avoir aidé à l’époque
mallocJ’ai tenu bon parce que les pointeurs étaient indispensables pour comprendre les listes chaînées, mais je n’ai utilisé cette structure de données qu’une seule fois dans les années 1980, et plus jamais ensuite
Il y a clairement un avantage à comprendre comment le CPU fonctionne tout en bas de la pile. Après, savoir si c’est vraiment nécessaire pour la plupart des usages modernes de la programmation reste discutable
J’aime bien qu’à côté du paragraphe qui parle de racks coûteux, on voie des serveurs posés sur une table Ikea. Je me demande s’il connaissait le Lack Rack : https://web.archive.org/web/20230131031301/https://wiki.eth0...
Petit fait amusant. Quand j’avais 16 ans, il était bien plus facile de se procurer un serveur maison à 200 dollars qu’un VPS Digital Ocean à 5 dollars
Ici, Allegro, le service d’achat en ligne, est en pratique une sorte de mélange entre Amazon et eBay, et accepte volontiers le paiement à la livraison contre une petite commission
Il fallait sans doute avoir 18 ans pour s’inscrire, mais en Pologne personne ne se souciait vraiment de cette limite, et il n’y avait aucune vérification d’âge
À l’inverse, les services cloud exigeaient une carte de débit ou de crédit, et sans l’intervention des parents, c’était impossible ou pratiquement impossible
On peut dire beaucoup de mal du Bitcoin et des cryptomonnaies en général, mais l’angle des droits des adolescents ne sera jamais trop souligné
Et avec l’accord des parents, un jeune de 13 ans peut ouvrir un compte bancaire gratuit avec une carte de débit permettant les paiements en ligne. Ce n’est pas nouveau : j’en avais déjà une il y a 15 ans
Bien joué. J’ai l’impression qu’il y a de moins en moins de gens qui apprennent les bases du matériel et des systèmes d’exploitation, voire davantage que les bases
Ce savoir reste très précieux, même quand on travaille avec du PaaS. Par exemple, avoir utilisé IIS depuis l’époque de NT4, et Apache depuis la version 1.x, aide énormément à diagnostiquer des problèmes sur Azure Web Sites
Il y a une dizaine d’années, quand je travaillais dans un datacenter, il fallait remplacer du matériel comme la RAM sur un serveur. Le responsable de l’équipe qui utilisait ce serveur travaillait depuis des années à une cinquantaine de mètres de la salle serveur, et il a demandé s’il pouvait venir voir le remplacement
Il a dit qu’il était curieux parce qu’il n’avait jamais vu l’intérieur d’un serveur, et à l’entendre, il n’avait même jamais vu l’intérieur de son PC personnel. Ça m’a vraiment choqué
À l’époque, les procédures n’étaient même pas strictes : n’importe quel jour, il aurait pu demander à l’une des dizaines de personnes présentes une visite, et on lui aurait montré sans poser de questions. Il y avait même des serveurs qui traînaient autour des cloisons des bureaux pour diverses raisons
Jusqu’à ce jour-là, il n’y avait simplement jamais pensé
Ce type de PC n’est pas un serveur en rack professionnel, mais il peut servir de serveur, et il faut quand même le configurer
Une grande partie de cette compréhension de base et de cette expérience d’apprentissage est en train de disparaître. Le développeur front-end qui ne connaît presque pas HTML ni CSS mais connaît React n’est plus très loin
Je n’avais pas 16 ans quand j’ai découvert les serveurs rack d’occasion, mais j’étais quand même assez jeune, probablement 21 ans
En 2012, à Dallas, Texas, j’avais un boulot affreux à 30 000 dollars par an, sans assurance maladie, à peine suffisant pour vivre
Pour faire des expériences d’encodage vidéo, j’avais besoin de quelque chose d’un peu plus puissant qu’un ordinateur portable, mais je n’avais pas les moyens d’acheter un ordinateur assez rapide pour ce que je voulais faire. Jusqu’à mes 25 ans environ, je n’ai d’ailleurs pas vraiment réussi à épargner
En cherchant impulsivement sur Craigslist avec toutes sortes de variantes de “ordinateur rapide et pas cher”, je suis finalement tombé sur “server”
C’est comme ça que j’ai découvert qu’on pouvait acheter pour presque rien des serveurs Dell en rack anciens mais encore utilisables ; un vendeur proposait même deux serveurs Dell en rack avec 16 cœurs et 32 Go de RAM pour environ 250 dollars
J’ai réussi de justesse à me les payer, je suis allé les chercher en voiture, et cela a presque entièrement déterminé l’orientation de ma carrière pendant les 12 années qui ont suivi
Dell s’est en général plutôt bien comporté avec moi, mais il m’est quand même arrivé de devoir remplacer rapidement un backplane et d’autres composants
https://en.wikipedia.org/wiki/Sun_Enterprise#Entry-level_ser...
J’avais aussi un E450, similaire à celui-ci : [https://en.wikipedia.org/wiki/File:SUN_Ultra_Enterprise_450....](https://en.wikipedia.org/wiki/File:SUN_Ultra_Enterprise_450.JPG)
J’avais aussi plusieurs petites machines et stations de travail, et si je me souviens bien, j’ai aussi eu un E220R à un moment. Je ne sais plus ce qu’est devenu tout ce vieux matériel
Quoi qu’il en soit, c’était très utile pour se préparer à des entretiens avant de rencontrer des clients potentiels, c’est-à-dire pour se remettre à niveau sur certaines technologies, et c’était aussi bien pour le développement général ou le packaging
Sauf si vous avez besoin d’énormément d’E/S, par exemple de stockage SAS/SATA ou de vieilles cartes PCIe, éviter un serveur gros, bruyant et énergivore est bien plus simple qu’on ne le pense
Les PC OEM au format Mini/Micro dans la même gamme de prix embarquent généralement un matériel bien plus récent. On peut trouver un i5 de 8e génération au lieu d’un i7 de 3e génération, avec de bien meilleures performances globales
L’hébergement et la maintenance sont aussi bien plus simples : il suffit de le brancher près du modem de l’ISP et de l’oublier
Elle peut accueillir deux disques 3,5 pouces et un disque 2,5 pouces sans modification, et grâce à son conduit qui évacue directement la chaleur du CPU vers l’arrière et à son alimentation certifiée 80 Plus Platinum, c’est une machine allumée en permanence avec un excellent rapport qualité-prix
J’avais aussi un serveur, mais au format HP ML, donc moins bruyant qu’un modèle pizza box. L’ECC est aussi assez important, et un vrai RAID matériel est une bonne expérience d’apprentissage
J’en ai un petit groupe, et si 1) on désactive des CPU, 2) on fait tourner le CPU restant en sous-voltage, et 3) on fabrique directement son propre contrôleur de ventilateurs avec des séquences d’octets IPMI brutes, ce n’est en réalité ni si bruyant ni si gourmand
C’est l’une des meilleures solutions de stockage de masse en coût par PB. J’ai aussi plusieurs NUC et ordinateurs monocartes, mais l’usage est clairement différent
Un jour, j’achèterai un ou deux clusters Isilon de surplus pour atteindre le vrai niveau du très gros stockage. Je n’ai pas envie de me battre avec Ceph sur mon temps libre
À la place, j’ai acheté un micro-ordinateur Intel N100 fanless à 100 dollars : il ne consomme que 7 W et offre des performances presque équivalentes. Les économies d’électricité finiront par l’amortir
Et pourtant, le i5-6600K n’était pas spécialement connu pour consommer beaucoup
Je suis ensuite passé à un Pentium Skylake, et ça fonctionne bien mieux
J’étais ce genre de gosse moi aussi. J’avais un PC haut de gamme monté à la main qui, pour situer l’époque, coûtait largement plus de 6 000 dollars[0], et était basé sur un tout nouveau 486DX50
J’avais rempli la RAM de la carte mère au maximum, probablement 16 Mo, mais mes souvenirs sont flous. Il y avait aussi une carte son Turtle Beach Wave Table Synth et une carte vidéo capable d’afficher du 1152x1024 sur un CRT 16 pouces
Je faisais tourner un BBS multi-nœuds avec deux modems 9600, puis plus tard deux modems 16,8K
Sans l’expérience acquise à bricoler ce PC et le 8088 vieux de dix ans qui l’avait précédé, il est très probable que je ne serais pas devenu développeur logiciel
J’ai un jour monté un PC gaming pour le gosse du voisin, et pendant quatre ans je l’ai vu devenir, sans même s’en rendre compte, un sacré geek compétent
À force d’ajuster les réglages pour grappiller ne serait-ce qu’un peu de framerate, de gérer les mises à jour de firmware, les pilotes de carte graphique, les mises à jour logicielles et tout le chaos qu’implique le simple fait de « vouloir jouer sur PC », on accumule beaucoup de connaissances par accident
Je n’avais pas parlé à ce gamin depuis quatre ans, puis je l’ai revu récemment et j’ai été bluffé. La première chose qu’il a faite a été de sortir un Flipper Zero de sa poche et de me raconter toutes les folies qu’il avait faites avec
Il était aussi compétent que n’importe quel administrateur système avec qui j’ai parlé, sans même réaliser qu’il possédait ce type de compétences
L’expérience m’a tellement plu que j’ai aussi acheté à mon fils un bon PC portable gaming pour qu’il quitte les consoles, et la même chose s’est produite cette année
Cette année, ma fille, de deux ans plus jeune, me supplie de lui construire un desktop, donc elle va avoir droit à un beau Noël et à une année entière d’apprentissage et de frustrations :)
Ah, et notre famille a aussi acheté un Flipper Zero cette année. Pas question de laisser tout le fun au gamin du voisin
[0] J’avais gagné cet argent en assemblant les ordinateurs d’autres personnes
Dans mon équipe actuelle, c’est moins de la moitié. À côté, je suis le type bizarre qui possède plusieurs machines en plus de son portable de travail : un PC gaming, un portable gaming et un MBP polyvalent
Mon fils a vécu quelque chose de similaire. Il n’a jamais montré un énorme intérêt pour apprendre l’informatique, mais il voulait bien aider à monter un PC, et maintenant il est devenu le support technique de ses amis
Après avoir joué pendant des années avec du câble coaxial 10BASE2 dans mon « homelab », j’ai fini par comprendre que des gens étaient prêts à me payer pour mon petit jeu
Bien sûr, cet argent est reparti intégralement dans les jouets du homelab
Aujourd’hui, j’ai beaucoup d’amis qui ont des enfants, dont certains sont ados. Depuis un moment, j’avais une inquiétude : leurs connaissances techniques se limitent à demander le mot de passe du Wi-Fi et à regarder des vidéos débiles dans des apps
Quand on leur demande ce qu’ils veulent faire plus tard, ils répondent « influenceur ». Leur geste le plus technique consiste à redémarrer le « routeur » quand Internet ne marche pas, et leur deuxième étape de diagnostic est de crier qu’Internet ne marche pas
Ce sont de très bons gosses, et je ne veux pas les critiquer, mais je me demandais s’il resterait encore quelqu’un pour maintenir les lumières allumées une fois notre génération disparue
À notre époque, la barrière à l’entrée pour utiliser un ordinateur et se connecter à Internet était élevée, mais cela avait aussi l’avantage de faire exploser le nombre de talents techniques
Donc apprendre qu’il existe encore des gamins geeks qui veulent regarder sous le capot est vraiment rassurant
En essayant de jouer sur le Gateway de ma mère, j’ai fini par construire mon premier PC autour d’un Pentium D, puis cela s’est transformé en hobby consistant à acheter et revendre du matériel sur eBay pour changer de composants, avant de me mener finalement jusqu’à un diplôme de génie électrique
Sans les jeux vidéo, sans le bricolage sur PC et sans l’overclocking, pas de diplôme de génie électrique
Félicitations. Quand j’avais 16 ans, je n’avais qu’un 486DX2-66, un modem 28.8K et un onduleur
Pour les autres ados, et ceux qui le sont restés dans leur cœur, qui veulent faire pareil : cherchez des serveurs d’entreprise d’occasion sur eBay. HP, Lenovo, Dell et Supermicro sont en général de bons choix
Avant d’acheter, il faut chercher la documentation des spécifications, les pilotes et le firmware du modèle précis, pour vérifier si la machine est complète et utilisable, ou si elle peut être remise en état pour un coût raisonnable
Si vous comptez faire tourner plusieurs machines virtuelles avec XenServer ou VMware ESXi, vérifiez avant l’achat dans la liste de compatibilité matérielle (HCL) du système d’exploitation que le matériel est bien pris en charge
Mieux vaut éviter les serveurs 1U. Ils doivent faire tourner des ventilateurs plus petits et plus courts à très haute vitesse que les modèles 2U et plus, donc ils sont plus bruyants
Le CPU doit être au moins aussi rapide que celui de l’ordinateur que vous avez déjà. Sinon, vous risquez de vous retrouver avec un presse-papiers très cher ou un gros « Raspberry PI » : https://www.cpubenchmark.net
Piège à connaître : sur les serveurs Dell, Lenovo et HP, les CPU AMD sont parfois verrouillés par le constructeur. Cela dit, il arrive que des vendeurs proposent ces CPU verrouillés à si bas prix que cela peut valoir le coup
RAM ECC. Un ami n’incite pas un ami à utiliser de la RAM non-ECC : https://cr.yp.to/hardware/ecc.html
Mieux vaut utiliser un SSD. Les disques durs mécaniques sont faits pour le stockage, pas pour le système d’exploitation : https://web.archive.org/web/20110831080738/http://buyafuckin...
Si possible, trouvez une machine avec des fonctions de gestion à distance comme iLO ou iDRAC, idéalement déjà licenciées
Quand vous la recevrez, elle sera probablement sale et rayée, donc ouvrez-la dehors et nettoyez-la à l’air comprimé
Bonus : convaincre ses parents d’installer un panneau de brassage 19 pouces et un demi-rack dans le garage :]
J’ai fait du homelab pendant longtemps, et j’ai utilisé des systèmes rackables remplis de vieux composants de desktop plutôt que de chercher ou d’acheter du vieux matériel serveur. Ce n’est pas indispensable
La RAM ECC est aussi utile si on peut l’avoir à bon prix et si le CPU la prend en charge, mais d’après mon expérience, le problème est souvent exagéré
En revanche, je suis d’accord pour recommander du matériel 2U ou 3/4U. On peut y mettre des ventilateurs bien plus grands, donc c’est plus silencieux
Quand j’étais ado au début des années 90, la chose la plus marquante après avoir eu mon premier ordinateur, c’était de découvrir que tous les ordinateurs sont des serveurs
Il n’avait pas besoin d’être au format rack ni de coûter cher. Il suffisait d’avoir Winsock et TCP/IP, et c’était tout. Mon ordinateur était comme n’importe quel autre ordinateur sur Internet
Donc cet article est cool, mais j’aimerais qu’il insiste un peu moins sur le matériel, parce que pour faire tourner une appli basée sur Node et la rendre accessible sur Internet, le matériel n’a pratiquement rien à voir là-dedans
Pas besoin non plus d’IP statique, il suffit de comprendre le DNS dynamique :)
C’était un texte écrit par son créateur lui-même, et à l’époque où Deutsche Bahn n’était pas encore en ligne dans les années 90, les informations d’itinéraire existaient déjà sur CD-ROM
Quelqu’un a récupéré les données de ce CD-ROM et a créé un outil qui renvoyait un trajet entre deux gares quand on lui posait la question
La manière d’interroger le système était intéressante : il fallait envoyer un email à son adresse universitaire, et le « serveur », en réalité un PC dans un coin de sa chambre, relevait les emails toutes les cinq minutes, traitait la requête et renvoyait le résultat par email
Malheureusement, maintenant que Google et DDG sont devenus inutiles, la dernière fois que j’ai essayé de retrouver cette histoire, ça m’a pris un temps fou
Même un ordinateur monocarte moderne peut faire un très bon serveur domestique, tout en étant bien plus petit, plus silencieux, moins cher et moins gourmand en énergie
Au début, j’y ai installé FreeBSD, puis plus tard Linux, et c’était incroyable d’avoir ma propre machine Unix à la maison
Elle n’était ni puissante, ni riche en mémoire ou en stockage, mais elle était à moi, et je pouvais en faire ce que je voulais
J’y faisais tourner des bots IRC et un serveur web qui hébergeait les scripts Perl douteux que j’écrivais. Une fois que j’y ai ajouté une carte réseau, elle a aussi servi de routeur pour la connexion commutée de la maison
J’ai énormément appris en bricolant cette machine, et si je sais quitter vim aujourd’hui, c’est grâce à elle
Je l’avais mis sur Freshmeat[1], et je regardais les logs Apache défiler depuis le canapé pendant le dîner. C’était l’une des sensations les plus cool de toute ma carrière
[1] https://en.wikipedia.org/wiki/Freecode