Comme le savent mes lecteurs les plus attentifs (ceux et celles qui
lisent tous les articles, et plusieurs fois, afin de les retenir),
j'utilise un Raspberry Pi pour superviser les
machines et services Internet auxquels je tiens. Après quelques mois,
la machine a-t-elle tenue ? Quelle charge peut supporter le petit
Raspberry Pi ?
Mon expérience avec la fiabilité du matériel est variable. Il y a
clairement des problèmes avec les cartes
SD. Souvent, le problème se manifeste dès le départ :
certaines cartes ont tout le temps des problèmes (on redémarre, le
système de fichiers est corrompu, on fait tourner fsck,
il massacre tout). D'autres tiennent le coup longtemps (c'est le cas
de celle qui est située dans le Raspberry Pi « de production »). Je
n'ai pas trouvé de règles simples, du genre « telle marque est
pourrie ». Je teste désormais les cartes avec deux ou trois démarrages
sur un Pi, et je jette immédiatement celles qui ont une
défaillance. Avec ce principe, j'ai nettement moins d'ennuis.
Parfois, le problème semble lié au Pi. J'en ai un qui est nettement
plus pénible que les autres, et qui corrompt son système de fichiers,
quelle que soit la carte SD utilisée.
Par contre, une fois éliminés les matériels défaillants, tout peut
très bien marcher. Mon Pi de supervision est allumé 24 heures sur 24,
sans alimentation électrique sécurisée (les coupures sont parfois
violentes, par exemple quand on débranche le Pi pour brancher
l'aspirateur...) et il tourne depuis plus de deux ans sans
histoires. Voici ses records
d'uptime :
% uprecords
# Uptime | System Boot up
----------------------------+---------------------------------------------------
1 74 days, 17:15:35 | Linux 3.12.20-1-ARCH Wed Jun 4 18:39:08 2014
-> 2 59 days, 05:25:39 | Linux 3.12.29-1-ARCH Sat Oct 18 16:14:03 2014
3 47 days, 16:41:18 | Linux 3.10.25-1-ARCH Sun Jan 5 23:05:17 2014
4 45 days, 20:48:04 | Linux 3.10.30-1-ARCH Sat Feb 22 15:47:14 2014
5 45 days, 06:08:27 | Linux 3.6.11-8-ARCH+ Thu Mar 14 14:02:38 2013
6 40 days, 20:29:03 | Linux 3.6.11-14-ARCH+ Mon Jul 22 21:46:41 2013
7 40 days, 07:29:16 | Linux 3.6.11-12-ARCH+ Wed Jun 12 14:17:05 2013
8 26 days, 23:52:42 | Linux 3.12.26-1-ARCH Thu Aug 21 14:35:08 2014
9 26 days, 18:26:10 | Linux 3.6.11-17-ARCH+ Mon Sep 23 20:18:13 2013
10 26 days, 14:52:31 | Linux 3.6.11-11-ARCH+ Thu May 16 23:23:45 2013
----------------------------+---------------------------------------------------
no1 in 15 days, 11:49:57 | at Thu Jan 1 08:29:37 2015
up 770 days, 00:12:50 | since Wed Oct 3 21:50:46 2012
down 33 days, 23:36:06 | since Wed Oct 3 21:50:46 2012
%up 95.773 | since Wed Oct 3 21:50:46 2012
Certes, il n'a jamais fonctionné six mois de suite, contrairement à
d'autres machines Unix mais rappelez-vous qu'il
est installé à la maison, pas dans un centre de données
professionnel, et qu'il fait tourner Arch
Linux, qui change le noyau
Linux souvent, nécessitant un redémarrage.
Les services qui tournent dessus ? Icinga pour la surveillance et
Cacti pour les statistiques d'activité,
essentiellement. Cacti est très gourmand en ressources lorsqu'on
affiche les graphes mais, en fonctionnement normal, la charge est très
modérée (de l'ordre de 1, en moyenne), comme l'affiche xload :
Il est vrai que le travail lié à une telle activité est
relativement faible. Icinga surveille 47 machines et 152 services. Les
programmes exécutés pour les tests sont en C,
Perl, Python, etc. Rien
d'extraordinaire pour une machine Unix mais cela illustre qu'un
Raspberry Pi a exactement les mêmes capacités qu'un « vrai »
ordinateur. Je me connecte souvent en SSH sur
cette machine, pour mesurer depuis mon réseau local, et la réactivité
du shell est parfaite.
Cacti affiche 6
machines, avec environ 4 graphes par machine. En bits/seconde, cela
fait : Et en paquets/seconde :
Et les entrées/sorties sur la carte SD ? Voici ce qu'affiche vmstat :
% vmstat 300
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 54976 28184 10432 50084 0 0 4 1 7 8 25 4 70 0 0
0 0 55056 33576 9892 49228 0 0 4 19 375 220 26 4 69 0 0
0 0 55168 45464 4304 43656 0 0 6 19 385 243 27 4 68 0 0