<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>TrueNAS on Zwindler's Reflection</title><link>https://blog.zwindler.fr/tags/truenas/</link><description>Recent content in TrueNAS on Zwindler's Reflection</description><generator>Hugo -- gohugo.io</generator><language>fr</language><copyright>Licensed under CC BY-SA 4.0</copyright><lastBuildDate>Thu, 04 Jul 2024 12:00:00 +0200</lastBuildDate><atom:link href="https://blog.zwindler.fr/tags/truenas/index.xml" rel="self" type="application/rss+xml"/><item><title>Mon NAS en 2024 - Jonsbo N2 × Intel N100 - stress tests et conclusion</title><link>https://blog.zwindler.fr/2024/07/04/mon-nas-en-2024-jonsbo-n100-part3/</link><pubDate>Thu, 04 Jul 2024 12:00:00 +0200</pubDate><guid>https://blog.zwindler.fr/2024/07/04/mon-nas-en-2024-jonsbo-n100-part3/</guid><description>&lt;img src="https://blog.zwindler.fr/2024/07/cpu-stress-2.webp" alt="Featured image of post Mon NAS en 2024 - Jonsbo N2 × Intel N100 - stress tests et conclusion" /&gt;&lt;p&gt;Cet article fait partie d’une série dans laquelle je parle de mon nouveau NAS que j’ai construit moi-même :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/03/mon-nas-en-2024-jonsbo-n100-part1/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - hardware&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/19/mon-nas-en-2024-jonsbo-n100-part2/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - software&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/07/04/mon-nas-en-2024-jonsbo-n100-part3/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - stress tests et conclusion&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/10/installer-plex-sur-truenas-scale/" &gt;Bonus - Installer plex sur TrueNAS (SCALE)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="on-le-teste-ce-nas-"&gt;On le teste, ce NAS ?
&lt;/h2&gt;&lt;p&gt;Après 1 mois et demi de confs et aussi de préparation de ma fin d&amp;rsquo;emploi (lien mort, je ne suis plus sur Twitter), je reprends ma plume numérique pour finir le dernier article de cette série, que certain⋅es attendent avec impatience (à minima, un australien :-P)&lt;/p&gt;
&lt;p&gt;On s&amp;rsquo;était arrêté dans l&amp;rsquo;article précédent à l&amp;rsquo;installation de notre NAS sous TrueNAS SCALE (la version Linux) et nous nous étions juste logué sur l&amp;rsquo;interface d&amp;rsquo;administration.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas_installed.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;La première opération que vous voudrez faire, c&amp;rsquo;est très certainement de créer un pool de disques et un volume.&lt;/p&gt;
&lt;p&gt;Dans mon cas, après avoir testé un premier pool avec 4 disques que j&amp;rsquo;avais en spare, ZFS m&amp;rsquo;a très rapidement prévenu que quelque chose n&amp;rsquo;allait pas avec mes disques. Après un SMART approfondi, je me suis retrouvé avec 2 disques HS&amp;hellip; J&amp;rsquo;en ai acheté un de plus et créé un pool avec &amp;ldquo;seulement&amp;rdquo; 3 disques (au lieu des 4 prévus initialement).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/rpool.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Une fois le pool créé, on peut commencer à créer des volumes et à ajouter différents types de partages. J&amp;rsquo;ai créé un share NFS à part, car il me servira pour la virtualisation et mon homelab, et un share CIFS pour tout ce qui est partage de fichiers.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/tank.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="température"&gt;Température
&lt;/h2&gt;&lt;p&gt;Le premier test que j&amp;rsquo;ai voulu faire, avant de commencer quoique ce soit, c&amp;rsquo;était un test de température.&lt;/p&gt;
&lt;p&gt;Un des problèmes que j&amp;rsquo;avais avec les NAS maison, c&amp;rsquo;est que les CPUs grand public (hors Atom) sont souvent surdimensionnés pour les besoins d&amp;rsquo;un NAS. On se retrouve avec un CPU soit bruyant, soit un ventirad volumineux. Ou alors dans le cas de l&amp;rsquo;Atom, un CPU totalement bridé par le throttling et les perfs déjà pas terribles, comme mon tout premier NAS maison de 2011 (voir &lt;a class="link" href="https://blog.zwindler.fr/2011/06/29/nasmediacenter-do-it-yourself-or-not/" &gt;NAS/MediaCenter : Do It (the hardware part) Yourself!&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;Ce qui m&amp;rsquo;a fait craquer pour le Intel N100 c&amp;rsquo;est que, sur le papier, il a la consommation et la dissipation thermique d&amp;rsquo;un Atom mais les fonctionnalités d&amp;rsquo;un CPU classique, tout en gardant des perfs acceptables. Et on a le support de la virtualisation, 4 cores, etc.&lt;/p&gt;
&lt;p&gt;Un des points noirs d&amp;rsquo;une des cartes mères &amp;ldquo;siglée NAS&amp;rdquo; sur Aliexpress, significativement moins chère que celle que j&amp;rsquo;ai achetée, mais dont les retours étaient unanimes pour dire que le ventilateur était clairement audible (et très aigu). Le NAS étant à côté de mon bureau (où je télétravaille) c&amp;rsquo;était évidemment hors de question.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/bruit.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Pour rappel, j&amp;rsquo;avais opté pour un ventirad jonsbo low profile, qui s&amp;rsquo;avère à l&amp;rsquo;usage plutôt silencieux, d&amp;rsquo;autant que je lui ai rajouté un réducteur de vitesse (en gros un fil avec une résistance) que j&amp;rsquo;avais en stock d&amp;rsquo;un build précédent.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/montage-fini.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="vm-de-stress-test-pour-faire-chauffer-tout-ça"&gt;VM de stress test pour faire chauffer tout ça
&lt;/h2&gt;&lt;p&gt;La philosophie de TrueNAS c&amp;rsquo;est de t&amp;rsquo;empêcher de faire des trucs dans ton coin histoire de limiter les erreurs de débutant. Donc même s&amp;rsquo;il existe un shell pour aller faire des trucs en lignes de commandes, il est très limité et on n&amp;rsquo;a pas de gestionnaire de paquets pour installer des choses.&lt;/p&gt;
&lt;p&gt;Pour faire mes tests, ça va être pénible. J&amp;rsquo;ai donc commencé par créer une VM (puisque je peux le faire, autant en profiter). Première boulette, créer une VM Ubuntu avec 512 Mo de RAM (la valeur par défaut dans ). Avec un environnement graphique, ça plante dès l&amp;rsquo;installation&amp;hellip; Mais ça se corrige vite.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/vm1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Deuxième coup d&amp;rsquo;arrêt, les droits&amp;hellip; libvirt n&amp;rsquo;a pas le droit d&amp;rsquo;accéder à l&amp;rsquo;ISO. C&amp;rsquo;est dommage&amp;hellip;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/share1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Toute la gestion des partages et notamment des droits sur les fichiers et assez peu &amp;ldquo;user friendly&amp;rdquo; sur TrueNAS. C&amp;rsquo;est vraiment une déception personnelle de ce côté là, j&amp;rsquo;ai dû bidouiller pas mal pour que les utilisateurs &lt;strong&gt;ET&lt;/strong&gt; les apps puissent accéder correctement à mon stockage. J&amp;rsquo;ai même dû corriger quelques permissions à la main à coup de &lt;code&gt;chmod&lt;/code&gt;. Bref.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/share2.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Une fois installée, j&amp;rsquo;installe &lt;code&gt;stress-ng&lt;/code&gt; et je lui demandé de me saturer les 4 CPUs histoire de faire monter la température.&lt;/p&gt;
&lt;p&gt;Pour que les tests soient les plus représentatifs possibles, j&amp;rsquo;ai laissé tourner 45 minutes le temps que ça se stabilise :&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/cpu-stress-1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Ici, on voit que ça se stabilise autour de 46°C avec un air ambiant à 23°C, ce qui me parait parfait (les conditions de stress tests avec tous les CPUs à 100% pendant plusieurs dizaines de minutes sont déjà peu réalistes).&lt;/p&gt;
&lt;p&gt;Côté disques, même sur des longues phases d&amp;rsquo;écritures pendant plusieurs heures, on est sous les 50°C (40 en idle)&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/disk-temp1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;On est bon pour la température.&lt;/p&gt;
&lt;h2 id="bonus-fanless"&gt;Bonus fanless
&lt;/h2&gt;&lt;p&gt;Note : il est possible d&amp;rsquo;acheter des minis PC format NUC totalement fanless avec des N100 (avec des performances parfois erratiques).&lt;/p&gt;
&lt;p&gt;On m&amp;rsquo;a donc mis au défi (sur Twitter) de tester sans ventilateur pour le CPU. Après tout pourquoi pas, j&amp;rsquo;avais bien mon premier NAS vendu avec une carte mère avec un Atom et une carte graphique NVidia fanless (mais les perfs étaient catastrophiques).&lt;/p&gt;
&lt;p&gt;Après quelques tests, oui, &lt;em&gt;ça fonctionne&lt;/em&gt;, mais c&amp;rsquo;est pas dingue. On tape les 90° et très probablement un throttling assez intense (pas vérifié).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/cpu-stress-2.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;C&amp;rsquo;est pas complètement un échec, puisque ça marcherait surement mieux avec un radiateur plus gros et que ce test n&amp;rsquo;est pas représentatif d&amp;rsquo;une charge réellement.&lt;/p&gt;
&lt;p&gt;Mais retirer le ventilateur du CPU ne rend pas le NAS beaucoup plus silencieux (il reste les disques et le ventilateur des disques). J&amp;rsquo;ai donc remis le ventilateur et c&amp;rsquo;est très bien comme ça :-P.&lt;/p&gt;
&lt;h2 id="consommation-électrique"&gt;Consommation électrique
&lt;/h2&gt;&lt;p&gt;Deuxième point important quand on choisit un NAS, la consommation électrique. C&amp;rsquo;est un point que vous êtes nombreux⋅ses à attendre aussi ;-).&lt;/p&gt;
&lt;p&gt;Clairement, il est impossible de faire aussi bien que mon QNAP avec du matériel généraliste de particulier. La carte mère et le CPU sont certainement gourmands, l&amp;rsquo;alimentation n&amp;rsquo;est que &amp;ldquo;bronze plus&amp;rdquo; (et donc induit des pertes). Le but de jeu, ça va être de voir à quel point je vais moins bien.&lt;/p&gt;
&lt;p&gt;J&amp;rsquo;ai donc pris des mesures sans disques, avec 3 disques idle et avec 3 disques en charges &lt;a class="link" href="https://blog.zwindler.fr/2018/01/23/stockage-pour-un-admin-geek-qnap-ts431p2-ou-synology-ds418j/" &gt;sur mon NAS QNAP&lt;/a&gt; que je remplace, puis je fais les mêmes mesures sur mon NAS.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Modèle&lt;/th&gt;
&lt;th&gt;Sans disques&lt;/th&gt;
&lt;th&gt;3 disques idle&lt;/th&gt;
&lt;th&gt;3 disques en charge&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;QNAP&lt;/td&gt;
&lt;td&gt;9w*&lt;/td&gt;
&lt;td&gt;23w&lt;/td&gt;
&lt;td&gt;36w&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Jonsbo × N100&lt;/td&gt;
&lt;td&gt;19w&lt;/td&gt;
&lt;td&gt;33w&lt;/td&gt;
&lt;td&gt;42w&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;* sans disques, le QNAP est inutilisable car on doit installer l&amp;rsquo;OS sur les HDD !&lt;/p&gt;
&lt;p&gt;Grosso modo, je me prends entre 6 et 10w de plus dans la vue. 10w, surtout sur une machine qui reste allumée toute l&amp;rsquo;année, c&amp;rsquo;est significatif. Mensuellement, ça représente 7,31 kWh (~ 1,17 €) de consommation en plus par rapport à l&amp;rsquo;ancien modèle.&lt;/p&gt;
&lt;p&gt;Je sais déjà qu&amp;rsquo;une partie de la Twittosphère techs / bidouilleurs barbus va me tomber dessus (c&amp;rsquo;est déjà fait). Mais si on y réfléchit un peu, ce n&amp;rsquo;est pas très étonnant, car les deux machines ne sont pas du tout comparables. &lt;strong&gt;Je ne peux pas faire les mêmes choses avec le QNAP qu&amp;rsquo;avec ce build&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Ce &amp;ldquo;Jonsbo × N100&amp;rdquo; me donne la possibilité d&amp;rsquo;avoir jusqu&amp;rsquo;à 6 disques (5 hotswap) là où j&amp;rsquo;étais limité à 4 avec le QNAP, avec l&amp;rsquo;OS et la data séparée proprement. J&amp;rsquo;ai la possibilité de faire des machines virtuelles si je le souhaite (pas le cas avec le QNAP) et j&amp;rsquo;ai le support de Chart helm pour installer des applications containerisées (là où QNAP ne supporte que Docker et plus LXC, &lt;a class="link" href="https://blog.zwindler.fr/2022/06/13/qnap-debranche-lxc-workaround/" &gt;cf l&amp;rsquo;article pour contourner le problème&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;Et j&amp;rsquo;ai surtout bien plus de puissance, entre les débits et le réseau en 2.5 Gbps (on y reviendra sur les tests de transferts). Donc je ne me mets pas martel en tête et je vais continuer à cordialement ignorer les commentaires négatifs que j&amp;rsquo;ai pu avoir sur ce choix.&lt;/p&gt;
&lt;h2 id="tests-de-réseau"&gt;Tests de réseau
&lt;/h2&gt;&lt;p&gt;L&amp;rsquo;achat de ce NAS a été l&amp;rsquo;occasion pour moi de passer sur du 2.5 Gbps sur mon réseau éthernet (achat d&amp;rsquo;un switch 2.5 et d&amp;rsquo;une carte pcie pour mon PC).&lt;/p&gt;
&lt;p&gt;J&amp;rsquo;ai donc fait des tests avec &lt;a class="link" href="https://iperf.fr/" target="_blank" rel="noopener"
&gt;iperf3&lt;/a&gt; (et aussi &lt;a class="link" href="https://www.speedtest.net/apps/cli" target="_blank" rel="noopener"
&gt;speedtest cli&lt;/a&gt;)&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;admin@truenas[~]$ iperf3 -c 192.168.aaa.pc
Connecting to host 192.168.aaa.pc, port 5201
[ 5] local 192.168.aaa.nas port 57256 connected to 192.168.aaa.pc port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 284 MBytes 2.38 Gbits/sec 0 814 KBytes
[ 5] 1.00-2.00 sec 280 MBytes 2.35 Gbits/sec 0 814 KBytes
[ 5] 2.00-3.00 sec 281 MBytes 2.36 Gbits/sec 0 854 KBytes
[ 5] 3.00-4.00 sec 280 MBytes 2.35 Gbits/sec 0 854 KBytes
[ 5] 4.00-5.00 sec 281 MBytes 2.36 Gbits/sec 0 854 KBytes
[ 5] 5.00-6.00 sec 280 MBytes 2.35 Gbits/sec 0 854 KBytes
[ 5] 6.00-7.00 sec 280 MBytes 2.35 Gbits/sec 0 854 KBytes
[ 5] 7.00-8.00 sec 281 MBytes 2.36 Gbits/sec 0 854 KBytes
[ 5] 8.00-9.00 sec 280 MBytes 2.35 Gbits/sec 0 854 KBytes
[ 5] 9.00-10.00 sec 281 MBytes 2.36 Gbits/sec 0 854 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 2.74 GBytes 2.36 Gbits/sec 0 sender
[ 5] 0.00-10.04 sec 2.74 GBytes 2.34 Gbits/sec receiver
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Fun fact : c&amp;rsquo;est aussi la première fois que j&amp;rsquo;ai pu tester la vitesse de ma fibre free 5 gbps au delà du gigabit (mais je peux toujours pas aller jusqu&amp;rsquo;aux 5 gbps théoriques de la ligne).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/iperf1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/speedtest-cli.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Là aussi, tout est OK. Côté réseau, la promesse du NAS maison est tenue !&lt;/p&gt;
&lt;h2 id="test-des-disques"&gt;Test des disques
&lt;/h2&gt;&lt;p&gt;Le test le plus trivial à faire quand on veut tester un stockage, c&amp;rsquo;est d&amp;rsquo;écrire dessus et de voir ce que ça donne. C&amp;rsquo;est pas toujours très représentatif mais ça donne une base de départ.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;root@truenas[/mnt/rpool]# dd if=/dev/urandom of=test1g bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 3.07779 s, 349 MB/s
root@truenas[/mnt/rpool]# dd if=/dev/urandom of=test10g bs=1M count=10240
10240+0 records in
10240+0 records out
10737418240 bytes (11 GB, 10 GiB) copied, 41.9781 s, 256 MB/s
root@truenas[/mnt/rpool]# dd if=/dev/urandom of=test40g bs=1M count=40960
40960+0 records in
40960+0 records out
42949672960 bytes (43 GB, 40 GiB) copied, 204.116 s, 210 MB/s
root@truenas[/mnt/rpool]# dd if=/dev/zero of=test10gzero bs=1M count=10240
10240+0 records in
10240+0 records out
10737418240 bytes (11 GB, 10 GiB) copied, 3.37509 s, 3.2 GB/s
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Ici, j&amp;rsquo;ai essayé de copier des données aléatoires sur le pool avec mes 3 disques. Tant qu&amp;rsquo;on est sur des fichiers de 1 Go, il reste le risque que tout soit mis en cache RAM (rappel : sauf indication contraire, ZFS utilise par défaut la moitié de votre RAM). Au-delà de 10 Go, on voit une dégradation de perfs. Quoiqu&amp;rsquo;on fasse, on ne fera pas mieux que cette base-là (baseline).&lt;/p&gt;
&lt;p&gt;Des copies de fichiers en local (depuis le disque NVMe du système vers le pool ZFS) donnent des résultats similaires.&lt;/p&gt;
&lt;p&gt;Note : on voit aussi que je dépasse très largement la vitesse physique de mes disques sur la copie de /dev/zero. 3.2 Go/s est évidemment impossible avec 3 HDDs. Ce sont les optimisations de ZFS (cache + compression) qui permettent ça et ça sera utile pour les fichiers contenant beaucoup de zéro (comme certains disques de machines virtuelles, par exemple).&lt;/p&gt;
&lt;h2 id="tests-de-transferts-nfscifs"&gt;Tests de transferts NFS/CIFS
&lt;/h2&gt;&lt;p&gt;Pour ces tests là, je ne suis pas hyper satisfait. Quand j&amp;rsquo;utilise les outils du marché permettant de désactiver les caches, les performances sont très en deça (&amp;lt; 50 Mo/s) des performances en utilisation réelle.&lt;/p&gt;
&lt;p&gt;voici une petite liste des outils que j&amp;rsquo;ai testés :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://fio.readthedocs.io/en/latest/fio_doc.html" target="_blank" rel="noopener"
&gt;fio&lt;/a&gt; (depuis un client linux sur CIFS)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://github.com/microsoft/diskspd" target="_blank" rel="noopener"
&gt;diskpd&lt;/a&gt; (depuis un client Windows sur CIFS)&lt;/li&gt;
&lt;li&gt;Copie de fichiers depuis un client Linux en NFS en ligne de commande&lt;/li&gt;
&lt;li&gt;Copie de fichiers depuis un client Ubuntu dans Nautilus en CIFS [via gvfsd (Gnome virtual file system)]&lt;/li&gt;
&lt;li&gt;Copie de fichiers depuis un client Windows en CIFS&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ce qu&amp;rsquo;il est ressort, c&amp;rsquo;est que le NAS est suffisamment puissant pour saturer un port Ethernet gigabit mais galère un peu plus pour le 2.5Gbps (les fluctuations sont dues au cache qui se vide pas assez vite sur les disques). Sous windows, on peut tirer au moins 150 Mo/s en écriture sur de gros fichiers sans problèmes avec des pics à 280 Mo/s.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/copiecifs.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;La copie NFS et CIFS sous Ubuntu affichait des chiffres étonnants (70 Mo/s en lecture mais 120 en écriture !?). Il faudra que je fasse des tests depuis une autre machine Linux.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/gvfs.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Les performances sans caches avec &lt;code&gt;fio&lt;/code&gt; sont très en deça (40-50 Mo/s) mais comme je l&amp;rsquo;ai expliqué juste avant, ces tests ne sont pas représentatifs des performances que j&amp;rsquo;obtiens en conditions réelles (plutôt autour du gigabit), même sur des copies très longues (&amp;gt;3 To).&lt;/p&gt;
&lt;p&gt;Sous Windows, les performances trouvées avec &lt;code&gt;diskspd&lt;/code&gt; sont plus proches de la réalité, avec 80 Mo/s en écriture (mais il écrit d&amp;rsquo;abord des données aléatoires beaucoup plus rapidement sur le NAS et lit dedans) et 280 Mo/s en lecture.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/diskspd-lecture.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/diskspd-ecriture.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/07/network.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Je n&amp;rsquo;ai pas encore fait de tests en iSCSI.&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;Le but était d&amp;rsquo;avoir un NAS silencieux et qui ne consomme pas trop, plus puissant que mon NAS précédent (QNAP), avec un support du 2.5 Gbps, du ZFS, des containers, des apps et des machines virtuelles.&lt;/p&gt;
&lt;p&gt;Avec cette suite d&amp;rsquo;articles, je pense avoir coché toutes les cases. Je suis donc content de mon investissement. Pour rappel, j&amp;rsquo;en ai eu pour environ 500€, upgrade de la maison en 2.5 Gbps inclu.&lt;/p&gt;
&lt;p&gt;En termes de boitiers, le Jonsbo N2 est vraiment LE boitier qui me fallait. Il est bien conçu, bien fini, pratique.&lt;/p&gt;
&lt;p&gt;Côté carte mère, on sent que le N100 est suffisant mais est quand même aux limites de ce que je lui demande. Une partie des &amp;ldquo;bottlenecks&amp;rdquo; que j&amp;rsquo;ai rencontré viennent très probablement du CPU, les autres venant du pool de 3 vieux disques &amp;ldquo;red&amp;rdquo; peu performants.&lt;/p&gt;
&lt;p&gt;Côté consommation et chauffe, c&amp;rsquo;est un peu moins bien que ce que j&amp;rsquo;avais avant mais rien de catastrophique. C&amp;rsquo;est en tout cas largement mieux que ce que j&amp;rsquo;aurais pu faire avec un CPU grand public.&lt;/p&gt;
&lt;p&gt;Le plus gros point noir serait peut-être TrueNAS, un peu trop rigide sans pour autant être user friendly. Fonctionnellement, tout y est, c&amp;rsquo;est juste &amp;ldquo;pas super agréable&amp;rdquo; à utiliser.&lt;/p&gt;
&lt;p&gt;Pour l&amp;rsquo;usage que j&amp;rsquo;en fais et les objectifs que j&amp;rsquo;avais, c&amp;rsquo;est un réel succès, si on met de côté l&amp;rsquo;OS. Je n&amp;rsquo;ai pas forcément envie de retourner sur un OS Linux nu avec lequel je fais tout moi-même&amp;hellip;&lt;/p&gt;
&lt;p&gt;Il faudra peut-être explorer des alternatives à TrueNAS, ou m&amp;rsquo;en contenter ?&lt;/p&gt;
&lt;h2 id="bonus--quelques-commandes-utilisées-pour-mes-tests"&gt;Bonus : quelques commandes utilisées pour mes tests
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;diskspd&lt;/code&gt;&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;# Tests en lecture / écriture sur des blocs de 4 Ko
.\DiskSpd\amd64\diskspd.exe -c10G -d30 -b4k -h -o32 -t4 -r -w0 \\192.168.aaa.nas\tank\test
.\DiskSpd\amd64\diskspd.exe -c10G -d30 -b4k -h -o32 -t4 -r -w100 \\192.168.aaa.nas\tank\test
# Tests en lecture / écriture sur des blocs de 4 Mo
.\DiskSpd\amd64\diskspd.exe -c10G -d30 -b4M -h -o32 -t4 -r -w0 \\192.168.aaa.nas\tank\test
.\DiskSpd\amd64\diskspd.exe -c10G -d30 -b4M -h -o32 -t4 -r -w100 \\192.168.aaa.nas\tank\test
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;code&gt;fio&lt;/code&gt;&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;cat &amp;gt; seq_rw_test.fio &amp;lt;&amp;lt;EOF
[global]
ioengine=libaio
direct=1
sync=1
size=10G
[sequential_read]
filename=/mnt/rpool/nfs/seqreadwrite
rw=read
bs=4M
[sequential_write]
filename=/mnt/rpool/nfs/seqreadwrite
rw=write
bs=4M
EOF
fio seq_rw_test.fio
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>Mon NAS en 2024 - Jonsbo N2 × Intel N100 - software</title><link>https://blog.zwindler.fr/2024/05/19/mon-nas-en-2024-jonsbo-n100-part2/</link><pubDate>Sun, 19 May 2024 12:00:00 +0200</pubDate><guid>https://blog.zwindler.fr/2024/05/19/mon-nas-en-2024-jonsbo-n100-part2/</guid><description>&lt;img src="https://blog.zwindler.fr/2024/05/truenas_installed.webp" alt="Featured image of post Mon NAS en 2024 - Jonsbo N2 × Intel N100 - software" /&gt;&lt;p&gt;Cet article fait partie d’une série dans laquelle je parle de mon nouveau NAS que j’ai construit moi-même :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/03/mon-nas-en-2024-jonsbo-n100-part1/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - hardware&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/19/mon-nas-en-2024-jonsbo-n100-part2/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - software&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/07/04/mon-nas-en-2024-jonsbo-n100-part3/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - stress tests et conclusion&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/10/installer-plex-sur-truenas-scale/" &gt;Bonus - Installer plex sur TrueNAS (SCALE)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="les-critères-software"&gt;Les critères software
&lt;/h2&gt;&lt;p&gt;Dans la partie précédente, j&amp;rsquo;avais listé mes critères hardware (et un à mi-chemin hard/soft, le fait de pouvoir faire des VMs). Ici, passons donc aux critères software :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Mon critère principal est de pouvoir utiliser ZFS. Je suis fan inconditionnel de ce système de stockage qui sait tout faire. Je ferai peut-être un article rien que pour en parler d&amp;rsquo;ailleurs (et j&amp;rsquo;ai déjà plusieurs articles dont c&amp;rsquo;est le sujet secondaire).&lt;/li&gt;
&lt;li&gt;Le second critère est la possibilité d&amp;rsquo;avoir une interface pour gérer facilement les fonctions principales du NAS. J&amp;rsquo;ai géré mon NAS avec un OS linux et tout géré &amp;ldquo;à la main&amp;rdquo; pendant des années&lt;/li&gt;
&lt;li&gt;Dans les must have, il y a évidemment la possibilité de faire tout ce qu&amp;rsquo;on fait habituellement avec un NAS, à savoir la possibilité de faire du NFS, du Samba, du iSCSI, un serveur rsync, gérer des droits d&amp;rsquo;accès, monter des tunnels VPN…, Mais est-ce vraiment un critère ? N&amp;rsquo;importe quel OS linux peut le faire. Je note quand même 😉.&lt;/li&gt;
&lt;li&gt;La possibilité de lancer des apps, pour étendre les fonctions de base, de façon simple (comme un serveur Plex par exemple)&lt;/li&gt;
&lt;li&gt;La possibilité de lancer des containers ET des machines virtuelles&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="aparté-sur-zfs-et-les-prérequis-en-termes-de-ram"&gt;Aparté sur ZFS et les prérequis en termes de RAM
&lt;/h2&gt;&lt;p&gt;J&amp;rsquo;en ai ma claque de lire sur le net ou sur Twitter que ZFS n&amp;rsquo;est pas adapté pour les petits besoins / petites machines.&lt;/p&gt;
&lt;p&gt;Je lisais encore hier un article qui disait qu&amp;rsquo;il ne fallait pas choisir un OS qui ne gère que ZFS car ZFS serait hyper gourmand , en particulier en RAM, et que cela empêcherait de l&amp;rsquo;utiliser sur des machines avec moins de 32 Go de RAM, et ECC en plus ! 😒&lt;/p&gt;
&lt;p&gt;Il y a une extrêmement mauvaise compréhension des fonctionnalités de ZFS.&lt;/p&gt;
&lt;p&gt;Oui, ZFS nécessite effectivement 1 Go de RAM (et vous avez réellement intérêt à ce que ce soit de l&amp;rsquo;ECC) par To d&amp;rsquo;espace disque&amp;hellip; &lt;strong&gt;SEULEMENT SI VOUS ACTIVEZ LA DÉDUPLICATION !&lt;/strong&gt;. Et autant dire que ce n&amp;rsquo;est recommandé que si vous savez ce que vous faites et les risques que cela implique. Je ne rentre pas dans les détails ici, on en reparlera dans l&amp;rsquo;article sur ZFS.&lt;/p&gt;
&lt;p&gt;Et deuxième erreur, effectivement aussi, par défaut, ZFS réserve pour son cache la moitié de la RAM. Sauf que ce paramètre est&amp;hellip; un paramètre ! S&amp;rsquo;il est déconseillé de le mettre à 0, ça fonctionne extrêmement bien, même si vous le réduisez fortement.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;#Limiter la taille du cache RAM de ZFS à 4 Go&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="m"&gt;4294967296&lt;/span&gt; &lt;span class="p"&gt;|&lt;/span&gt;sudo tee -a /sys/module/zfs/parameters/zfs_arc_max
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;cat /proc/spl/kstat/zfs/arcstats&lt;span class="p"&gt;|&lt;/span&gt;grep -e &lt;span class="s2"&gt;&amp;#34;^size&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;size &lt;span class="m"&gt;4&lt;/span&gt; &lt;span class="m"&gt;4119613272&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Je l&amp;rsquo;ai mis à 512 Mo sur des serveurs Proxmox VE qui n&amp;rsquo;ont que 4 Go de RAM, par exemple, et je sais qu&amp;rsquo;on peut encore descendre.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;The minimum amount of memory needed to install a Solaris system is 768 MB. However, for good ZFS performance, use at least one GB or more of memory.
&lt;a class="link" href="https://docs.oracle.com/cd/E18752_01/html/819-5461/gbgxg.html" target="_blank" rel="noopener"
&gt;ZFS Hardware and Software Requirements and Recommendations&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La philosophie derrière ce choix et que de la RAM inutilisée est de la RAM gâchée, et en tant qu&amp;rsquo;ingénieur, je recherche l&amp;rsquo;efficience. L&amp;rsquo;apparente gourmandise de ZFS pour la RAM n&amp;rsquo;est pas un bug, c&amp;rsquo;est une feature.&lt;/p&gt;
&lt;h2 id="choisir-los"&gt;Choisir l&amp;rsquo;OS
&lt;/h2&gt;&lt;p&gt;Avec de rapides recherches, on trouve les usual suspects des NAS maison :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://www.openmediavault.org/" target="_blank" rel="noopener"
&gt;OpenMediaVault&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://www.truenas.com/" target="_blank" rel="noopener"
&gt;TrueNAS&lt;/a&gt; (anciennement FreeNAS), historiquement basé sur FreeBSD (Core), mais qui dispose maintenant d&amp;rsquo;une version Linux (SCALE)&lt;/li&gt;
&lt;li&gt;Depuis quelques années, on parle aussi pas mal de UnRAID, un OS orienté NAS sous Linux. Le produit est payant.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;En plus confidentiel, il y a aussi :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://xigmanas.com/xnaswp/" target="_blank" rel="noopener"
&gt;XigmaNAS&lt;/a&gt; (ex NAS4Free, un fork de FreeNAS)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://rockstor.com/" target="_blank" rel="noopener"
&gt;RockStor&lt;/a&gt; (base CentOS + btrfs)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://xpenology.org/" target="_blank" rel="noopener"
&gt;Xpenology&lt;/a&gt;, un projet qui récupère le DSM de Synology, dont j&amp;rsquo;ai un gros doute sur la légalité&lt;/li&gt;
&lt;li&gt;ou même, l&amp;rsquo;OS QNAP qu&amp;rsquo;on peut installer sur n&amp;rsquo;importe quel matériel moyennant un coût mensuel&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="la-tribu-réunifiée-a-décidé-de-vous-éliminer"&gt;La tribu réunifiée a décidé de vous éliminer
&lt;/h2&gt;&lt;p&gt;Mes critères éliminent directement Windows (ce n&amp;rsquo;est pas vraiment comme si ça avait été un candidat sérieux 🤣). Quoique, j&amp;rsquo;avais fait brièvement du Windows Media Server à l&amp;rsquo;époque où ça existait encore, et aujourd&amp;rsquo;hui avec &lt;a class="link" href="https://learn.microsoft.com/fr-fr/windows-server/storage/refs/refs-overview" target="_blank" rel="noopener"
&gt;ReFS&lt;/a&gt;, on aurait presque (presque ?) un candidat pour un NAS de hobbyist.&lt;/p&gt;
&lt;p&gt;J&amp;rsquo;élimine aussi Xpenology, projet que je connais depuis très longtemps, et dans lequel je n&amp;rsquo;ai strictement aucune confiance. Et je pars de l&amp;rsquo;écosystème QNAP en partie à cause de son OS, donc ce n&amp;rsquo;est pas pour y retourner 😅&lt;/p&gt;
&lt;p&gt;RockStor est trop confidentiel à mon goût, et je suis pas fan de btrfs qui a été trop instable pendant de nombreuses années.&lt;/p&gt;
&lt;p&gt;XigmaNAS (ex NAS4Free) a sûrement des arguments, mais c&amp;rsquo;est TrueNAS qui a tiré son épingle du jeu et raffle le gros de la communauté.&lt;/p&gt;
&lt;p&gt;UnRAID m&amp;rsquo;intéresse, mais le côté payant du projet est un problème. La version d&amp;rsquo;essai est très courte, et je n&amp;rsquo;avais pas spécialement le temps pour le tester de fond en comble au point de pouvoir décider si j&amp;rsquo;étais prêt à lâcher 49$ par an (tout de même !).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/unraid.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="le-choix-final"&gt;Le choix final
&lt;/h2&gt;&lt;p&gt;OpenMediaVault et TrueNAS (Core et SCALE) sont les alternatives les plus crédibles par rapport à mes critères.&lt;/p&gt;
&lt;p&gt;TrueNAS Core (sous FreeBSD) était mon premier choix, pour son support naturel du ZFS et aussi le fait que je voulais apprendre à utiliser l&amp;rsquo;univers BSD que je n&amp;rsquo;ai jamais exploré.&lt;/p&gt;
&lt;p&gt;C&amp;rsquo;était d&amp;rsquo;ailleurs FreeNAS que j&amp;rsquo;avais voulu choisir à l&amp;rsquo;époque (pour les mêmes raisons) de mon NAS de 2011, mais j&amp;rsquo;avais finalement choisi Ubuntu, car cette machine me servait aussi de mediacenter. TrueNAS dispose bien d&amp;rsquo;une interface web, de containers et de VMs (pour les deux versions).&lt;/p&gt;
&lt;p&gt;Cependant, plusieurs personnes m&amp;rsquo;ont alerté sur la possibilité que la version TrueNAS Core disparaisse à terme au profit de la version Linux (SCALE). Et le critère &amp;ldquo;gestion facile d&amp;rsquo;apps&amp;rdquo; n&amp;rsquo;est pas disponible sur Core (ce sont des charts helm, et Core n&amp;rsquo;a pas la fonction Kubernetes qu&amp;rsquo;à SCALE)&lt;/p&gt;
&lt;p&gt;Restait donc TrueNAS SCALE et OpenMediaVault, qui sont très similaires en termes de fonctionnalités et qui cochent toutes les cases. Et même si OpenMediaVault supporte ZFS, le fait que ce ne soit pas l&amp;rsquo;option par défaut &lt;strong&gt;m&amp;rsquo;a fait opter TrueNAS SCALE&lt;/strong&gt; (mais ça aurait très bien pu être OMV).&lt;/p&gt;
&lt;h2 id="installation"&gt;Installation
&lt;/h2&gt;&lt;p&gt;Rien d&amp;rsquo;incroyable ici, il suffit d&amp;rsquo;installer l&amp;rsquo;OS comme n&amp;rsquo;importe quel autre linux.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://www.truenas.com/docs/scale/gettingstarted/install/installingscale/" target="_blank" rel="noopener"
&gt;On suit la doc&lt;/a&gt; : on récupère l&amp;rsquo;ISO sur le site, on l&amp;rsquo;écrit sur une clé USB bootable et on suit ensuite le processus d&amp;rsquo;installation.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/SCALEInstallMainScreen.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;TrueNAS SCALE demande 8 Go de RAM ou mieux. A mon avis, c&amp;rsquo;est surestimé (pour être large) et on doit pouvoir lancer SCALE dans de bonnes conditions avec moins, mais je suis content d&amp;rsquo;avoir pris 16 Go.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;TrueNAS SCALE is very flexible and can run on any x86_64 compatible (Intel or AMD) processor. SCALE requires at least 8GB of RAM (more is better) and a 20GB Boot Device.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&amp;ldquo;Bêtement&amp;rdquo;, j&amp;rsquo;ai acheté un NVMe avec pas mal de patate de 512 Go, sauf que TrueNAS utilise tout l&amp;rsquo;espace par défaut. J&amp;rsquo;ai donc un NVMe quasiment inutile&amp;hellip; Un peu rageant.&lt;/p&gt;
&lt;p&gt;Une fois installé, on redémarre la machine et on peut se connecter sur l&amp;rsquo;UI :&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas_installed.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Le dashboard principal est customisable : on peut modifier les tuiles qu&amp;rsquo;on veut afficher. Sur la gauche, les menus avec toutes les opérations courantes à réaliser sur le NAS apparaissent.&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;Je m&amp;rsquo;arrête là-dessus, on créera notre pool et les premiers partages lors des tests de performance dans le prochain article.&lt;/p&gt;
&lt;p&gt;D&amp;rsquo;ici là, have fun !&lt;/p&gt;</description></item><item><title>Installer plex sur TrueNAS (SCALE)</title><link>https://blog.zwindler.fr/2024/05/10/installer-plex-sur-truenas-scale/</link><pubDate>Fri, 10 May 2024 18:00:00 +0200</pubDate><guid>https://blog.zwindler.fr/2024/05/10/installer-plex-sur-truenas-scale/</guid><description>&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-2.webp" alt="Featured image of post Installer plex sur TrueNAS (SCALE)" /&gt;&lt;p&gt;Cet article fait partie d’une série dans laquelle je parle de mon nouveau NAS que j’ai construit moi-même :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/03/mon-nas-en-2024-jonsbo-n100-part1/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - hardware&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/19/mon-nas-en-2024-jonsbo-n100-part2/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - software&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/07/04/mon-nas-en-2024-jonsbo-n100-part3/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - stress tests et conclusion&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/10/installer-plex-sur-truenas-scale/" &gt;Bonus - Installer plex sur TrueNAS (SCALE)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="plex-sur-mon-nas"&gt;Plex sur mon NAS
&lt;/h2&gt;&lt;p&gt;Un des prérequis quand je construis / achète un NAS, c&amp;rsquo;est la possibilité d&amp;rsquo;installer dessus Plex Media Server.&lt;/p&gt;
&lt;p&gt;D&amp;rsquo;expérience, même s&amp;rsquo;il est possible d&amp;rsquo;avoir une VM sur un hyperviseur à côté qui gère la médiathèque &amp;ldquo;à côté&amp;rdquo; du NAS, ou même de déléguer ce rôle &amp;ldquo;serveur plex&amp;rdquo; à la box de l&amp;rsquo;opérateur ou même notre smartTV, c&amp;rsquo;est souvent plus pénible qu&amp;rsquo;autre chose :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;je n&amp;rsquo;ai pas toujours un hyperviseur allumé à la maison et monté la médiathèque sur Internet est hors de question&lt;/li&gt;
&lt;li&gt;le volume partagé qui héberge les médias entre le NAS et la VM peut sauter, et c&amp;rsquo;est pénible à debug / corriger quand ça arrive&lt;/li&gt;
&lt;li&gt;les box / smartTV sont souvent trop limitées en hardware (espace disque pour les apps, CPU rachitique, RAM insuffisante&amp;hellip;)&lt;/li&gt;
&lt;li&gt;je change de box opérateur plus souvent que de NAS&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Note : je suis certain qu&amp;rsquo;on ne sera pas d&amp;rsquo;accord avec moi sur certains de ces points, et c&amp;rsquo;est OK. Moi, je trouve que c&amp;rsquo;est mieux comme ça, mais vous faites bien comme vous voulez ;-P.&lt;/p&gt;
&lt;p&gt;J&amp;rsquo;ai donc envie d&amp;rsquo;avoir Plex sur mon NAS et de ne pas trop m&amp;rsquo;embêter pour la gestion au quotidien.&lt;/p&gt;
&lt;h2 id="les-apps-dans-truenas"&gt;Les &amp;ldquo;apps&amp;rdquo; dans TrueNAS
&lt;/h2&gt;&lt;p&gt;Et ça tombe plutôt bien, car nos amis de chez TrueNAS maintiennent à jour une application Plex pour TrueNAS. Sauf que sur le papier, elle est pas hyper simple à installer, d&amp;rsquo;où cet article pour vous guider ;-).&lt;/p&gt;
&lt;p&gt;Tout cet article part du principe que vous utilisez TrueNAS SCALE et pas TrueNAS Core.&lt;/p&gt;
&lt;p&gt;Si vous ne connaissez pas la différence, le mieux est que vous alliez voir par vous-même &lt;a class="link" href="https://www.truenas.com/compare/" target="_blank" rel="noopener"
&gt;la documentation officielle - compare TrueNAS software&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;TL;DR TrueNAS Core, c&amp;rsquo;est la version historique basée sur FreeBSD (qui s&amp;rsquo;appelait d&amp;rsquo;ailleurs FreeNAS, initialement). Cependant, depuis quelques années, iXsystems, l&amp;rsquo;entreprise qui développe TrueNAS, met à disposition une version basée sur Debian (donc GNU/Linux).&lt;/p&gt;
&lt;p&gt;Pour des raisons que j&amp;rsquo;expliciterai dans l&amp;rsquo;article sur le choix du software (oui je viens donc de vous spoiler l&amp;rsquo;article suivant), j&amp;rsquo;ai TrueNAS SCALE et pas Core.&lt;/p&gt;
&lt;p&gt;Pour faire tourner les &amp;ldquo;apps&amp;rdquo;, TrueNAS s&amp;rsquo;est appuyé sur un standard du marché : Kubernetes. Et oui, n&amp;rsquo;en déplaise à ses détracteurs, Kubernetes &lt;strong&gt;est&lt;/strong&gt; devenu un standard du marché. Ca ne dit pas si c&amp;rsquo;est une bonne chose (on peut juger le précédent standard, aka VMware, à l&amp;rsquo;aune de l&amp;rsquo;actualité, par exemple). Mais c&amp;rsquo;est juste un fait.&lt;/p&gt;
&lt;h2 id="activer-les-apps"&gt;Activer les apps
&lt;/h2&gt;&lt;p&gt;Par défaut, TrueNAS n&amp;rsquo;active pas les &amp;ldquo;apps&amp;rdquo;. Ca va être à nous de le faire. En soit, ce n&amp;rsquo;est pas forcément un mal : si vous n&amp;rsquo;en avez pas besoin aucune raison de consommer des ressources pour rien.&lt;/p&gt;
&lt;p&gt;Et quand on parle de consommation de ressources et de Kubernetes je vois déjà les gens dans le fond qui font les gros yeux. Rassurez-vous (pas sûr que ça vous rassure, mais moi oui), les équipes d&amp;rsquo;iXsystems ont eu la sagesse de choisir &lt;a class="link" href="https://blog.zwindler.fr/recherche/?keyword=k3s" target="_blank" rel="noopener"
&gt;k3s&lt;/a&gt; et non un kubernetes vanilla pour héberger Kubernetes sur notre NAS. Les ressources consommées par le control plane seront donc minimales (quelques centaines de Mo au max).&lt;/p&gt;
&lt;p&gt;On va donc dans l&amp;rsquo;onglet &amp;ldquo;Apps&amp;rdquo; et on active k3s en l&amp;rsquo;installant simplement sur un de nos pools. Dans mon cas, j&amp;rsquo;en ai deux. Un avec mes disques durs classiques, et un avec un (unique) SSD.&lt;/p&gt;
&lt;p&gt;Initialement j&amp;rsquo;avais installé le k3s sur le pool de HDDs, histoire de mutualiser le stockage et de maximiser la disponibilité (j&amp;rsquo;ai un RAID-Z1). Cependant, le k3s de TrueNAS a tendance à écrire pas mal sur les disques, qui se retrouvaient à gratouiller sous mon bureau pendant une demie seconde toutes les 5 secondes environ. Très énervant.&lt;/p&gt;
&lt;p&gt;J&amp;rsquo;ai donc recréé un pool spécial pour les apps sur un SSD que j&amp;rsquo;avais en rab.&lt;/p&gt;
&lt;p&gt;On clique sur &lt;strong&gt;Settings&lt;/strong&gt; en haut à droite, puis &lt;strong&gt;Choose Pool&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="installer-plex-media-server-via-les-apps"&gt;Installer plex media server via les apps
&lt;/h2&gt;&lt;p&gt;Au bout de quelques secondes / minutes, k3s est installé et on peut commencer à chercher une app parmi le catalogue (&amp;gt;100). Ici on recherche plex et on clique sur &lt;strong&gt;Install&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-2.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;A partir de là, une fenêtre avec plein de paramètres va apparaitre. Mais avant d&amp;rsquo;aller plus loin, on va aller sur la page &lt;a class="link" href="https://www.plex.tv/claim/" target="_blank" rel="noopener"
&gt;www.plex.tv/claim/&lt;/a&gt;. Une fois loggué sur votre compte, la page va vous générer un token temporaire, qui va permettre de relier directement le serveur une fois qu&amp;rsquo;il aura démarré sur votre NAS avec votre compte. Pratique !&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-3.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Dans la looongue page de configuration, on a que quelques paramètres à changer. D&amp;rsquo;abord, il faut renseigner le token qu&amp;rsquo;on vient de générer dans la section &lt;strong&gt;Plex Configuration&lt;/strong&gt;. Si vous avez le Plex pass, vous pouvez aussi changer &lt;strong&gt;Image&lt;/strong&gt; :&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-4.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Ensuite, dans la partie &lt;strong&gt;Storage configuration&lt;/strong&gt;, il va falloir indiquer le chemin vers le pool qui contient les médias. Moi c&amp;rsquo;est /mnt/rpool/tank/Vidéos. rpool est le nom de mon pool RAID-Z1, tank est mon volume principal.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-5.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Attention : assurez-vous que l&amp;rsquo;utilisateur unix (local) &amp;ldquo;apps&amp;rdquo; a bien accès en lecture/exécution sur toute l&amp;rsquo;arborescence, sinon vous ne verrez pas le dossier quand Plex sera lancé (très frustrant, il n&amp;rsquo;y a aucun message d&amp;rsquo;erreur, juste &amp;ldquo;rien&amp;rdquo;).&lt;/p&gt;
&lt;p&gt;De manière optionnelle, vous pouvez tuner les &amp;ldquo;limits&amp;rdquo; (au sens docker/kubernetes du terme) de votre app. Par défaut, la chart plex de TrueNAS propose 4 CPUs et 8 Go de RAM, ce qui est beaucoup. Mon plex ne consomme que 100 Mo au repos. J&amp;rsquo;ai baissé à 2 CPUs (avec un risque de throttling, mais là on rentre dans des notions un peu tricky de Kubernetes que je préfère esquiver aujourd&amp;rsquo;hui dans cet article) et 4 Gio de RAM (j&amp;rsquo;en ai 16 mais je veux garder le plus de cache possible).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-6.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Une fois terminé, l&amp;rsquo;application se déploie, puis affiche Running. On a alors un cartouche &lt;strong&gt;Application Info&lt;/strong&gt; dans &lt;strong&gt;Details&lt;/strong&gt; qui devrait afficher un bouton &lt;strong&gt;Web Portal&lt;/strong&gt; qui devrait nous rediriger sur l&amp;rsquo;IP de notre NAS sur le port 32400 (celui habituel de plex).&lt;/p&gt;
&lt;p&gt;On peut donc se laisser guider par le wizard de configuration de Plex Media Server, lui donner un nom mignon et aller chercher nos médiathèques dans /data. Normalement, le dossier que vous avez donné lors de l&amp;rsquo;étape &lt;strong&gt;Storage configuration&lt;/strong&gt; devrait apparaitre.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-7.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-8.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="bonus"&gt;Bonus
&lt;/h2&gt;&lt;p&gt;Pour une raison que j&amp;rsquo;ignore (peut être parce que c&amp;rsquo;est un container avec un adressage à part), j&amp;rsquo;ai dû explicitement indiquer le port public (32400 sur ma box, qui redirige sur l&amp;rsquo;IP de mon NAS et le port 32400) pour que le Control à distance fonctionne et que l&amp;rsquo;accès direct (sur le réseau local) fonctionne correctement.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-9.avif"
loading="lazy"
&gt;&lt;/p&gt;</description></item></channel></rss>