Teras a cholón
Tabla de contenido
Durante el último año y medio me ha estado rondando la cabeza la idea de tener más espacio de almacenamiento disponible en canelo
, el servidor de casa pero quería hacerlo de una forma diferente a como hasta entonces, cuando añadía nuevos discos duros externos por USB. Además de generar calor, me estaba empezando a quedar sin espacio en la CajComm (la Caja de Comunicaciones) y sólo tenía un puerto USB disponible.
La cabina #
Estuve un tiempo mirando servidores NAS pero no quería otro servidor del que ocuparme, sólo el espacio extra, así que terminé mirando cabinas de discos. Y, aunque parecen algo bastante más sencillo que los NAS, tienen su miga. Al final decidí que quería una cabina de 4 o 5 bahías con RAID 5, al menos, no porque quisiera usarlo de primeras sino de cara al futuro, para no arrepentirme si no lo tiene. También quería que la vía de comunicación fuese lo más rápida posible y, aunque inicialmente estuve buscando que tuviese una tarjeta de red gigabyte, sólo los NAS la incorporaban. El resto, las cabinas y discos sueltos, usan un cable USB 3.0 o USB C así que me decanté por el USB tipo C que es considerable más rápido que su primo el 3.0.
Finalmente, y tras hacerme una especialización en cabinas de disco con RAID, la cabina elegida fue la Yottamaster Y-Pioneer de 4 o 5 bahías con un USB C.
Los discos #
El tema de los discos fue un poco más traumático, si cabe, porque comencé a mirarlos un poco después de la aventura de los discos NAS de 8TB a 20€ de Amazon y, claro, cualquier disco que pasase de 50€ me parecía una estafa :).
Tardé un tiempo pero fui capaz de sobreponerme y comenzar a sacarme otra especialización, esta vez en discos duros, capacidades y las implicaciones de usar RAID. Al final, llegué a la misma conclusión que tenía antes de empezar a mirar y fue que los Seagate IronWolf NAS tenían un rendimiento bastante bueno por los euros que cuestan y fueron los finalistas.
Del bueno de Lito (allá arriba, en Valnalón) aprendí que nunca tienes suficiente disco duro ni memoria RAM y es algo que sigo cumpliendo a pesar de que han pasado más de veinte años desde que lo dijo. En esta ocasión, los discos de 8TB se me antojaban pequeños, sobre todo porque por menos de 50€ más tenías los de 12TB. Una cosa que descubrí es que es fácil comprarse una unidad de algo a un precio que consideras bueno pero, cuando tienes que comprar cuatro de esas cosas, el precio deja de parecerte bueno. Además, como la cabina de discos tiene una limitación de 16TB por disco y estos últimos se iban bastante del presupuesto, me decidí por los de 12TB. Eso sí, compré dos para ir montándolo todo y en un par de meses compraré los otros dos. En momentos así se echan mucho en falta esas ofertas de discos a 20€…
El montaje #
La cabina viene estupendamente preparada y lo único que hay que hacer es atornillar los discos a las bandejas de plástico y deslizar éstas en la bahía correspondiente hasta escuchar un ¡clac! El propio disco, al encajar en el puerto SATA sirve de sujeción.
De momento (no sé si en un futuro cambiaré de opinión), he dejado desactivado el RAID y sólo estoy usando el espacio en bruto pero tiene los clásicos RAID1, RAID2 y RAID5. Como sólo tenía dos discos y la necesidad de quitar discos externos no me compliqué la vida con el RAID pero mi intención es retomarlo en el futuro.
Los volúmenes lógicos #
Como quiero tener un único disco de cara al servidor, el uso de LVM
es obligatorio y estos son los comandos que usé para configurarlo completamente:
# erasing MBR because LVM needs them clean
sudo dd if=/dev/zero of=/dev/sdd bs=1M count=20
sudo dd if=/dev/zero of=/dev/sde bs=1M count=20
# PV - Physical Volumes
sudo pvcreate /dev/sdd /dev/sde
sudo pvs
# VG - Volume Groups
sudo vgcreate yotta_vg /dev/sdd /dev/sde
# LV - Logical Volumes
sudo lvcreate --size 4T --name vol_backup yotta_vg
sudo lvcreate --size 8T --name vol_media yotta_vg
sudo lvs
# file systems
# sudo mkfs.ext4 -L vol_backup /dev/yotta_vg/vol_backup
sudo mkfs.btrfs -L vol_backup /dev/yotta_vg/vol_backup # better for backups
sudo mkfs.ext4 -L vol_media /dev/yotta_vg/vol_media
# uuids to be writen in /etc/fstab
sudo blkid /dev/yotta_vg/*
Con esto tengo creados dos volúmenes, vol_backup
y vol_media
, de 4 y 8 TB respectivamente y que luego se montarán en diferentes puntos para guardar los backups y los ficheros multimedia.
Monitorización #
De momento y a falta de algo más evolucionado, utilizo smartmontools
para controlar los mensajes de error de los discos. He metido este comando en un cron job y listo:
smartctl --quietmode=errorsonly --all /dev/sdd
smartctl --quietmode=errorsonly --all /dev/sde
En caso de que los discos presenten alguna anomalía, recibiré un email con el error y tendré tiempo de sobra para actuar.
La colocación #
Con todo ya montado me di cuenta de que la CajComm no tenía suficientes enchufes así que le tuve que cambiar la base de enchufes de una de cinco a otra de seis. Como esta última era más grande no podía ir situada en donde la anterior y tuve que moverla a la parte frontal de la caja.
Y otra cosa que quería hacer, colocar la cabina sobre la CajComm no pude hacerlo por miedo a que se viniese todo abajo. La Yottamaster pesa demasiado y la pared es de yeso y no quise someterla a más estrés.
Son las pequeñas tonterías con que no cuentas cuando empiezas un proyecto así y que terminan robándote un par de horas y algo de sueño. Pero, al final, ha quedado bonito y funcional.