![Mapa de bits externo mdadm no utilizado](https://rvso.com/image/154452/Mapa%20de%20bits%20externo%20mdadm%20no%20utilizado.png)
Coloqué el mapa de bits en una unidad EXT4 externa (1xHDD), pero esperaría que el archivo también se escriba cada vez que se cambien datos en mi matriz RAID10, ¿verdad?
Incluso hice una suma de verificación del archivo de mapa de bits y seguramente no se modificó.
El tamaño del archivo es de sólo 2 KB (el tamaño del fragmento del mapa de bits está establecido en 64 MB)
- Intenté detener e iniciar la matriz, sin cambios, sin escribir en el archivo
- Si no se puede acceder al archivo cuando se inicia la matriz, obtendré el error,
mdadm: Could not open bitmap file /mnt/1xHDD/R10_bitmap.dat
lo cual es bueno.
Estado del proceso mdadm con cat /proc/mdstat
:
Detalles de la matriz con mdadm --detail /dev/md127
:
Comprobación del archivo de mapa de bits conmdadm -X /mnt/1xHDD/R10_bitmap.dat
Filename : /mnt/1xHDD/R10_bitmap.dat
Magic : 6d746962
Version : 4
UUID : 39f863d1:4d247162:c3672454:1765abe2
Events : 2914
Events Cleared : 2914
State : OK
Chunksize : 64 MB
Daemon : 5s flush period
Write Mode : Normal
Sync Size : 624877568 (595.93 GiB 639.87 GB)
Bitmap : 9535 bits (chunks), 0 dirty (0.0%)
Contenido de mi mdadm.conf:
HOMEHOST <system>
MAILADDR root
ARRAY /dev/md/SRV01:R10_HDD metadata=1.2 bitmap=/mnt/1xHDD/R10_bitmap.dat name=SRV01:R10_HDD UUID=39f863d1:4d247162:c3672454:1765abe2
Por cierto, ¿algún comentario con respecto a colocar el archivo de mapa de bits en un solo disco duro? Intenté simplemente cambiarle el nombre y la matriz continúa sin problemas, aunque mdadm --details...
indicará que el mapa de bits se ha eliminado.
Nota adicional: Al pasar al mapa de bits externo, el rendimiento de escritura en esta matriz RAID10 aumentó de 135 MB/s a 370 MB/s. (usando IO directo, es decir, caché de página no en uso).
Respuesta1
Parece que el archivo de mapa de bits externo estaba funcionando después de todo.
Como señaló Stephen Kitt en el comentario, el archivo suele ser bastante pequeño, especialmente si utiliza un tamaño de fragmento de mapa de bits grande. (Esperaba que fuera mucho más grande).
La razón por la que no observé el cambio del archivo de mapa de bits fue porque olvidé que monté el sistema de archivos con la opción EXT4 noatime
(no actualizaré la fecha y hora de modificación) y cuando hice una suma de verificación MD5 del archivo, la matriz estaba en el tiempo sincronizado, por lo que no hay cambios.
En segundo lugar, sobre la estabilidad/riesgo de colocar el mapa de bits externo en una unidad 1x "insegura":
quitar la unidad donde se encontraba el archivo de mapa de bits, en tiempo de ejecución, no introdujo ninguna inestabilidad en la matriz afectada y en ejecución. mdadm simplemente informa que el archivo de mapa de bits ha sido "eliminado", pero la matriz continúa funcionando bien. Aunque no se conectará al reiniciar la matriz, por ejemplo, al reiniciar, hasta que reconfigure el mapa de bits (ya sea en none
, internal
o en otro external
archivo de mapa de bits).
Considerándolo todo, considero seguro colocarlo en un disco que no esté reflejado.
Está muy subestimado en la documentación de mdadm y en todas las guías de mdadm que he estado leyendo cuán grande es el impacto en el rendimiento usando el mapa de bits interno predeterminado, al menos tanto en RAID10 como en RAID5.
Acabo de hacer una prueba comparativa rápida en R5:
Mapa de bits: Interno, escritura: 267 MB
Mapa de bits: Ninguno, escritura: 434 MB
(tamaño de prueba total 20G, tamaño de bloque 512K, caché de página habilitado)