English sum-up :
Some tips to dynamically free space on the XtremIO X-Bricks, especially on Linux/Unix filesystems.
Je vous en avait déjà parlé il y a quelques semaines (ici et ici), XtremIO traite de manière très particulière les blocks vides (ou Zero Blocks en anglais). En fait, il les ignore totalement et ne les stocke pas, conséquence de quoi, tous les blocks que l’on peut dynamiquement vider sont autant d’espace qui est récupéré directement sur la baie.
Pour pouvoir faire l’exercice, il faut donc avoir des outils spécifiques pour pouvoir remplir de zéro les blocks disponibles au sein des volumes provisionnés sur l’AFA d’EMC. Sous Windows, l’opération est très simple et efficace : il suffit d’utiliser l’outil sdelete, disponible ici. Moyennant des passages “réguliers” sur vos machines, vous optimisez au maximum l’espace consommé sur vos X-Brick.
Sous Linux/Unix, c’est plus “sioux”, dans le sens ou les seuls outils ont besoin d’avoir un filesystem monté en lecture seule pour pouvoir fonctionner (zerofill, par exemple). Mais c’est sans compter l’astuce des administrateurs Linux/Unix. Avant de vous donner l’info, je vous propose de vous présenter le contexte qui nous a conduit à trouver cette solution “élégante”.
Nous avons été victime ce week-end, d’un problème sur une de nos applications qui a perdu les pédales et s’est mise à générer des giga-octects de logs, jusqu’à en remplir son espace de travail. Au final, cela représentait ce matin plus de 50 Go d’espace, que nous avons bien entendu vidé le filesystem pour pouvoir revenir en nomminal. Pour autant, coté XtremIO, ces 50 Go ont consommé de l’espace totalement inutilement. Pour pouvoir récupérer rapidement cette volumétrie, nous avons tout simplement généré des fichiers “vides” jusqu’à remplir quasiment le filesystem concerné. Cette opération est particulièrement simple, via la commande dd :
dd if=/dev/zero of=/path/to/file bs=100M count=XXX
L’impact sur la baie XtremIO a été vu immédiatement, puisque nous avons récupéré nos 50 Go quasiment instantanément ! Cela a permit aussi de confirmer les performances de nos appliances, avec des débits de plus de 500 Mo/s pendant la création des fichiers “zéro”. Une fois ces fichiers créés, il suffit de les supprimer pour libérer l’espace temporaire consommé “logiquement” sur le point de montage.
Pour bien faire, il serait bon de planifier régulièrement ce type d’opération sur nos machines. Cela fait partie de notre “to-do-list” au niveau MCO/Production.
sfill ?
Effectivement, à voir si l’outil convient (a priori, d’après la description, ça le fait).
Je vais regarder, merci !