novembre 2010
Monthly Archive
Monthly Archive
Il arrive occasionnellement qu'un fichier soit effacé sur le filesystem malgré le fait qu'il soit toujours ouvert dans un processus. Ce problème, aussi connu sous le nom plus pragmatique de "mézouépassélespace", est dans l'immense majorité des cas un problème d'interface chaise-clavier, parfois également appelée erreur humaine.
Le symptôme typique de ce problème est une incohérence entre l'espace annoncé par df et celui annoncé par du, généralement détecté au moment où le filesystem est rempli.
Par exemple :
# df -h /xxx Filesystem Size Used Avail Use% Mounted on /dev/mapper/xxx 1G 1G 0 100% /xxx # du -sh /xxx 350M /xxxPour le retrouver, nous avons fort heureusement une solution simple, pour peu que l'on dispose d'une version pas trop ancienne de lsof :
# lsof | grep deleted coupable 1664 user 1w REG 253,3 4 197939 /xxx/fichier (deleted)Il ne reste plus à ce stade qu'à tuer le coupable, ce qui libèrera automatiquement l'espace alloué au fichier effacé, faisant ainsi rentrer les choses dans l'ordre pour notre filesystem victime.
Daniel 16 Nov 2010 | : solaris
La version Express de Solaris 11 est disponible chez Oracle. On notera entre autres la présence d'un LiveCD et l'absence de code source. Si ce dernier point vous gêne, allez plutôt voir du côté d'Illumos, le fork d'OpenSolaris réalisé par la communauté.
Parmi les éléments notables de Solaris 11 (par rapport à Solaris 10, bien sûr, la plupart de ces éléments étant depuis un bon moment dans OpenSolaris), on retrouve :
Daniel 15 Nov 2010 | : solaris
Tous les processeurs SPARC intégrés aujourd'hui dans les gammes de serveurs Oracle/Fujitsu supportent une technologie nommée Chip Multithreading (CMT), similaire à l'Hyper-Threading des processeurs Intel. En résumé, il s'agit de faire tourner plusieurs threads sur un même core physique pour ne pas gâcher du temps CPU disponible, mais en utilisant plusieurs jeux de registres pour éviter des changements de contextes coûteux. Du point de vue de l'OS, on voit des processeurs virtuels (baptisés hardware threads), qui sont traités exactement comme des processeurs normaux.
Ces évolutions technologiques induisent des changements dans la façon dont on observe les performances CPU de nos serveurs. En particulier, les outils traditionnels comme vmstat ou top (basés sur les kstats) ne représentent plus la capacité de calcul brute des processeurs, mais plutôt la disponibilité des processeurs virtuels. On a en fait une décorrélation partielle de la disponibilité de ces processeurs virtuels et de la capacité du core à exécuter des instructions. En d'autres termes, on peut voir de la puissance CPU disponible avec vmstat alors que le core est déjà saturé.
Il nous faut donc un nouvel outil pour mesurer la charge des cores, et nous avons de la chance, puisque cet outil existe, il s'agit de corestat.