NAS Doméstico y Reproductor Multimedia: Montando el Perfecto Sistema de Entretenimiento

Si tienes edad suficiente, puedes recordar e incluso identificarte. Imagínate esto: principios de la década de 2000; DivX y más tarde, su rival XviD en términos de software, y Pentium 4 y Athlons en términos de hardware han hecho finalmente que la compresión de video se convierta en algo; no más cintas voluminosas y mohosas de VHS; Napster en sus mejores días, cambio la historia del P2P para siempre. Aquí en Sudamérica, el acceso telefónico a Internet tenia los días contados y el ADSL empezaba a implantarse. Las unidades de CD-RW eran relativamente accesibles al igual que sus soportes, especialmente con los nuevos y recientes DVD. Youtube ni siquiera había nacido. Júntalo todo y tendrá el escenario perfecto en tu casa:

Figure 1
Figura 1

Una torre de CD repleta de soportes físicos que contienen software, archivos mp3 y películas. Mi torre era exactamente como la de la foto. Podías apilar hasta doscientos CD. Cuando me hice con ella, cambié los estuches de CD estándar por estuches más delgados, doblando la capacidad.

Avancemos ahora unos cuantos años hasta principios de la década de 2010. Youtube ya existía, pero no era tan grande como lo es hoy día. Netflix acaba de llegar a Sudamérica, con solo algunos títulos desconocidos en su cartera. Un ADSL más rápido, de 2 a 5 mbps, ya estaba ampliamente disponible en la mayoría de las grandes ciudades de por aquí. Descargar no solo películas, sino series enteras, se convirtió en un gran problema. Aunque las unidades de DVD y los DVDs se habían vuelto más baratas, todavía no eras más barato que el precio por Mb de las unidades de disco duro (HDD) antes de las inundaciones en Indonesia (https://goo.gl/rP6kyE). En lugar de administrar una gran cantidad de medios, algunos de los cuales empezaban a ir mal, ¿por qué no tenerlo todo en discos duros, disponibles a solo un clic? ¿Qué hay de todas las cubiertas de CD y DVD? ¿Guardaría todas las fotos de mi familia en una unidad de disco duro mecánica propensa a dar fallos?

Cuando empecé a plantearme cómo organizar todos los medios, algunas investigaciones me llevaron a pensar que XBMC (renombrado como Kodi años más tarde) sería la solución perfecta. XBMC es capaz de gestionar una biblioteca multimedia, descargar portadas y letras, reproducir casi cualquier códec de video con subtítulos, mostrar mis fotos familiares y mucho más. Todo lo que necesitaba era llevar a cabo un extenso trabajo para estandarizar los nombres de las carpetas y de los archivos.

¿Y los datos en sí? Los discos fallan y presentan bloques defectuosos con el tiempo. RAID está bien, pero presenta problemas cuando trabajamos con una gran cantidad de archivos casi estáticos: ¡la eficiencia! RAID 1 duplica el coste de los discos, el espacio, el ruido y la energía. RAID 5 parece estar bien, pero ¿qué pasa si falla un disco y no puedo conseguir otro del mismo tamaño inmediatamente? ¿Qué pasa si dos discos fallan? Hay RAID 6 pero pocos controladores lo admiten. ¿Qué pasa si el controlador falla? ¡Diferentes fabricantes tienen diferentes implementaciones, haciendo que la recuperación de todos los datos se convierta en una auténtica pesadilla!

Ahora le toca el turno a RAID Snapshot. Comparado con el RAID habitual, no funciona a nivel del disco. Más bien, funciona a nivel de datos, sobre cualquier sistema de archivos. Siempre que dispongas de un disco con una cantidad de espacio igual o superior que los datos del disco más grande de la matriz, todo irá bien. Incluso puedes usar discos de diferentes tamaños. El problema lo encontramos en la falta de velocidad y disponibilidad de los datos. Algunos controladores RAID 5 disponen de reconstitución de datos en tiempo real siempre que solo falle uno de los discos. La paridad RAID se calcula en tiempo real a medida que los datos van cambiando. Está bien, pero mantiene todos los discos activos la mayor parte del tiempo, incluso si simplemente se está modificando un pequeño archivo. El RAID Snapshot, como su nombre indica, funciona calculando la paridad con instantáneas. Si falla un disco, te quedarás con la última instantánea. Lo bueno es que cualquier archivo que no esté en el disco que ha fallado estará disponible para usarse, sin necesidad de hacer reconstrucción.

También tenía la intención de fusionar todos los datos y mostrarlos como un gran disco, casi como JBOD, pero con seguridad. Usar múltiples discos está bien, pero hace que la gestión de los soportes resulte demasiado compleja. Con esto en mente, y con planes de usar también el servidor como un PC para juegos (que limitaba las opciones del sistema operativo a Windows) decidí recurrir a FlexRAID (http://www.flexraid.com/). Por aquel entonces aún se encontraba en su fase beta, pero mostraba un gran potencial. Para mi sorpresa, como traductor brasileño, recibí una licencia completa cuando se hizo de pagó.

Con todas las necesidades de software cubiertas, llegó el momento de mancharse las manos y montar el hardware. Como se suponía que iba a ser un PC multimedia y para juegos, con una o dos unidades de disco duro de 1.5TB serían suficientes para almacenar todo mi contenido multimedia en ese momento. Me decante por esta carcasa Sentey para que fuera el rack de mi sala de estar. Explicaré porque tiene tanto polvo más adelante.

Figure 2
Figura 2

La carcasa podría albergar hasta tres discos duros de 3,5", una unidad de DVD-RW, una placa base micro ATX, una completa fuente de alimentación ATX y una GPU de la misma altura. Funcionó estupendamente hasta que añadí el tercer disco. No importa cuántos ventiladores agregase o a cuanta velocidad girasen (produciendo mucho ruido), al final se sobrecalentaba el sistema.

Se hizo bastante obvio que necesitaría más ventiladores y una carcasa adicional para incluir más discos a medida que la biblioteca crecía rápidamente como resultado de la comodidad de disponer de un servidor 24 horas y una conexión a Internet más rápida.

Simplemente se dio el caso de que tenía esta vieja carcasa de escritorio Compaq por los alrededores:

Figure 3
Figura 3

Con unas "cuantas" modificaciones no precisamente bonitas en la carcasa y en la fuente de alimentación, se convirtió en esto:

Figure 4
Figura 4

Agregué siete discos duros y dos controladores HDD adicionales, ya que la placa base solo podía manejar dos discos. En ese momento, la GPU, el ventilador adicional de la parte trasera y el de 120 mm de la parte superior de la carcasa aún no habían sido colocados. Esta era la placa base original, que reemplacé unos meses después por una que funcionaría mucho mejor con el procesador. Los cuatro ventiladores de 80 mm en la parte delantera, colocados para enfriar los discos duros, fueron retirados para ser limpiados. El conector de alimentación está ubicado en el frontal.

Especificaciones:

  • Placa base: Abit VA-10 (cambiada después)
  • Procesador - AMD Athlon XP 2000+ (cambiado por un Atlhon X2 después)
  • RAM - 2 Gb DDR 333 (en realidad, DDR 400 con bloqueo de reloj) (se agregaron dos más)
  • Controlador RAID SiI 3112
  • Controlador RAID Sil 3114

HDDs: (los pequeños se cambiaron por unos más grandes después)

  • 1x40Gb IDE (Sistema)
  • 3x1.5Tb SATA (Multimedia)
  • 1x1.5Tb SATA (Datos personales)
  • 1x500Gb SATA (Descargas y Memoria virtual)
  • 1x1.5Tb SATA (Pariedad)

Software:

  • Windows 7 32 bits
  • Flexraid
  • XBMC

Esta configuración funcionó decentemente durante semanas hasta que mi entonces novia (ahora mi esposa) empezó a quejarse del ruido. He de admitir que era RUIDOSO, especialmente con los ventiladores adicionales que acompañaban a la tarjeta gráfica. Con una boda a las puertas y sin planes de abandonar a mi novia, decidí ampliar la reforma del baño que planeamos para la sala de estar y los dormitorios. ¿Recuerdas todo el polvo que se veía en la primera foto? Esta es la razón:

Figure 5
Figura 5

Figure 6
Figura 6

Figure 7
Figura 7

Figure 8
Figura 8

Sí, nosotros usamos aquí en Brasil la albañilería, no placas de yeso. Y sí, reformar un apartamento al mismo tiempo que se vive en él prácticamente se puede comparar al infierno sin exagerar. Puedes ver la torre de CDs en las dos primeras fotos, junto a la mesa. La carcasa del ordenador está en la parte derecha de la primera foto. Todas esas cosas amarillas son conductos para ocultar los cables que conectarían los televisores del dormitorio y de la sala de estar al servidor, ahora apilados en un armario del pasillo. Por supuesto, el calor sería un problema en un espacio reducido. Sin embargo, fueron añadidos más ventiladores al propio armario, bombeando el aire caliente hacia un compartimento superior que estaba ventilado. Tras mucho polvo y varios días de duro trabajo, los resultados se pueden ver en las Figuras 9 y 10.

Figure 9
Figura 9

Figure 10
Figura 10

El servidor aún podía escucharse, incluso con la puerta cerrada, pero nada que ver con el ruido que teníamos antes. En cuanto a la sala de estar, en la figura 11 tienes el resultado.

Figure 11
Figura 11

Si continúas leyendo después de todo esto, probablemente te estés preguntando: "¿Qué papel tiene el ODROID en todo esto?". Después de unos años centrados en ampliar la familia, decidimos mudarnos a un apartamento más grande. Dado que casi todos los apartamentos en los que hemos vivido tienen unos 70 años de antigüedad, era necesario nuevamente hacer reformas, y otra vez tendríamos que convivir con la reforma. Como teníamos una pequeña habitación extra en la parte trasera del nuevo piso, decidí poner el viejo servidor allí, pasando los conductos por las paredes y todo lo demás. Tras varios meses de reforma, llegó el momento de encender el viejo servidor, y después de discutir el potencial de la Raspberry Pi con algunos colegas del trabajo, me vino a la mente una gran idea. Existen pequeñas e increíblemente potentes placas con muchos núcleos de procesamiento y memoria RAM. Mucha gente las utiliza como consolas de juegos retro e incluso mini PC. Las grandes preguntas fueron: "¿Ya está aquí la tecnología?" Y "De ser así, ¿qué placa usar?"

Si tenemos éxito, el nuevo servidor sería mucho más pequeño, más silencioso y con una mayor eficiencia energética que el anterior. Han transcurrido al menos cinco años desde la creación de mi servidor inicial. Unas cuantas semanas de investigación y la respuesta a esa pregunta fue clara: la tecnología había llegado y el ODROID-XU4 era la opción más obvia. ¿Por qué? Sus ocho núcleos eran mucho más que los dos que tenía en el servidor anterior. Los 2 GB de menos de RAM no sería un problema, ya que no ejecutariamos Windows, en su lugar usaríamos un liviano Linux. La conexión ethernet Gigabit sería perfecta para conectar todos los dispositivos en el nuevo apartamento. El ODROID-XU4 también cuenta con una GPU muy decente con capacidades para la decodificación por hardware, lo cual era importante, ya que tenía pensado usarlo no solo como servidor sino también como reproductor de video, al igual que el antiguo servidor PC. Por último, pero no por ello menos importante, era la disponibilidad del USB 3.0. Como el XU4 no tiene interfaces SATA (aunque tuviera uno o dos, no serían suficientes), el USB 3.0 era la alternativa perfecta. Sus velocidades teóricas de 625 MB/s son mucho más rápidas que cualquier disco rígido mecánico. De hecho, cuando probé los HDD que estaba usando, el más rápido solo llego a los 120MB/s estando conectados directamente a un PC vía SATA o usando un adaptador SATA-USB a través de USB 3.0.

Figure 12
Figura 12

Una cuestión importante era que ya no podría usar las viejos HDD de 3.5". Consumen mucha energía, son voluminosos y necesitan 12V para funcionar. Podría haber usado un PC o una fuente de alimentación ITX para alimentarlos, pero una vez más esta solución habría sido voluminosa e ineficiente. Así que las unidades de disco duro de 2.5" entraron en el juego, ya que son pequeñas, resistentes, eficientes con el consumo de energía, silenciosas y pueden funcionar con solo 5V desde un puerto USB si tienes suficiente flujo eléctrico para ellas.

Pedí el ODROID-XU4 a Hardkernel y en unos días lo tenía en mis manos. ¡Qué maravilla! Incluso cuenta con un ventilador inteligente para reducir el ruido. Unos días después, recibí algunas unidades de disco duro y un hub USB 3.0 autoalimentado para empezar con las pruebas. Antes de poner a prueba la tecnología, en la siguiente imagen puedes comparar la carcasa del ODROID que contenía el XU4 y el adaptador de corriente, en comparación con el servidor anterior. No se puede ver, pero dentro de la carcasa, junto con el XU4 y su adaptador de alimentación, había siete discos duros con sus adaptadores SATA-USB, un concentrador USB y su adaptador de alimentación, y muchas tarjetas SD con imágenes del sistema operativo. Tener todas estas cosas en una carcasa del mismo tamaño que la PSU anterior no estaba nada mal.

Figure 13
Figura 13

En la versión final del servidor antiguo, la PSU ya no cabía dentro de la carcasa junto con la unidad de DVD (el cable rojo de la izquierda era utilizado para ello).

Durante las primeras pruebas, el hub USB alimentado creó un cuello de botella. Un puerto USB 3.0 solo puede llegar hasta 900 mA, lo cual estaba muy lejos de la cantidad necesaria para ejecutar más de uno o dos discos, dependiendo el modelo utilizado. Los discos que funcionaban aleatoriamente durante el arranque y el uso general lo dejaba muy claro. El primer hub USB con alimentación que probé no proporcionaba la suficiente potencia para solo dos discos. Incluso intenté ejecutar uno directamente desde el puerto USB 3.0 del XU4 y otro desde el USB 2.0 para dividir la carga, pero los que estaban conectado al hub continuaban deteniéndose.

Figure 14
Figura 14

La solución pasaba por buscar un hub USB con una buena alimentación. Tras investigar sobre ello y leer algunas críticas, decidí optar por un hub USB 3.0 Xcellon de 10 puertos. Está hecho de aluminio por lo que disipa el calor. El 5A de su adaptador de corriente demostraron ser suficientes para ejecutar al menos los cinco discos que ahora uso. Nunca lo he llegado a probar con los siete que tengo.

Figure 15
Figura 15

Testeado el hardware, era hora de centrarse en el software. Como Windows ya no era una opción, la pregunta se centraba en qué distribución de Linux usar. Como he dicho antes, la PC anterior hacia de NAS, reproductor multimedia, máquina de juego y gestor de descargas con Sonarr y Torrent. No aceptaba perder ninguno de estos servicios.

En primer lugar, me centré en la disponibilidad y en la seguridad de los datos. No almacenaría mis datos en un servidor poco fiable. La alternativa más sencilla y segura que pude encontrar fue OpenMedia Vault (https://www.openmediavault.org/). Es de código abierto y tiene todo lo que necesitaba, en una interfaz web fácil de usar con multitud de complementos. Como está basado en Debian, la elección del sistema operativo ya estaba hecha. Descargué una imagen de Debian de los foros de Hardkernel y comencé a instalarlo todo. Me llevo algunas semanas configurarlo todo. El complemento Greyhole de OMV se encargaría de fusionar todos los discos en uno. El complemento SnapRAID se ocuparía de la paridad de datos. OMV gestionaría el resto y me dejaría configurar los dos. Pero justo entonces, se me ocurrió algo. Después de tantos años, ya no dispondia de una conexión de acceso telefónico de 56 kbps, sino una por cable de 60 mbps. Proteger algo más que las fotos de mi familia y mis documentos personales ya era irrelevante. Ahora puedo ver la mayoría de las películas y series via streaming o simplemente descargarlas en minutos si no es posible hacer streaming. No necesito tanto espacio en el disco. Tal vez ni siquiera paridad. Como Greyhole ofrece una opción para replicar los datos en tantos discos duros como se quiera, y como mis datos confidenciales no son tan grandes, disponer de dos y tres copias sería suficiente.

Pero dado que una copia local no es una copia de seguridad, he configurado estos datos para que también se sincronicen con la nube (copia de seguridad real), por si las moscas. De modo que, tras unas semanas abandone SnapRAID porque ya no me era necesario. Todavía puede ajustarse a tus necesidades, si tiene una gran cantidad de datos sensibles que cambian muy poco. Ejecuté este sistema durante aproximadamente dos meses sin problemas, de modo que la elección fue la correcta. Era hora de volver a centrar la atención en la reproducción multimedia y en los juegos. Indagando en cómo instalar Kodi en Debian me topé con el increíble trabajo de Meveric: ODROID GameStation Turbo (https://forum.odroid.com/viewtopic.php?f=98&t=7322).

Está basado en Debian, aunque tiene muchas optimizaciones para la reproducción de video y los juegos retro. Unos días y lo tuve todo fusionado. Después de dos o tres meses funcionando bien, empecé a experimentar algunas caídas del sistema en ocasiones. Resultó ser que la tarjeta SD estaba dando sus últimos coletazos. Como no pude recuperarla, la solución pasaba por reconstruir todo desde cero. Pensé que, si reconstruía el software, ¿por qué no el hardware? Durante meses, un gran manojo de cables se escondería detrás de la puerta de mi sala de estar.

Con un poco de creatividad y una herramienta Dremel, convertí un mini organizador de escritorio de dos cajones en la última versión de mi servidor. Aquí tienes fotos del proceso:

Figure 16 - Testing the spacers
Figura 16 - Probando los espaciadores

Figure 17 - Drilling the holes, fixing the spacers and HDDs to the “case”
Figura 17 - Taladrando los agujeros, fijando los espaciadores y las unidades de disco duro a la "carcasa”

Figure 18 - OS/Temp files HDD on the top for easy access
Figura 18 - Disco duro con los archivos del SO/Temp en la parte superior para facilitar el acceso

Figure 19 - Let’s not forget the star of the show. Enter the ODROID-XU4 (and a fan too)
Figura 19 - No olvidemos la estrella del show. Coloqué el ODROID-XU4 (y un ventilador también)

Figure 20 - The USB hub, some cables, and a reminder of what the “case” was in first place
Figura 20 - El Hub USB, algunos cables y un recuerdo de lo que fue la "carcasa" en primera instacia

Figure 21 - Everything all together
Figura 21 - Todo junto

Figure 22 - On the left there’s a USB 2.0 hub with my wireless keyboard receiver and an old 4GB flash drive that was needed to keep some SnapRAID data, which will remain there just in case I decide to use it again
Figura 22 - A la izquierda hay un Hub USB 2.0 con el receptor de mi teclado inalámbrico y una vieja unidad flash de 4GB que es necesaria para mantener algunos datos de SnapRAID, que permanecerá allí por si decidiera volver a utilizarlo

Figure 23 - All powered up and to the right of the server, the ODROID-C2 I use as my media player with my bedroom TV
Figura 23 - Todo encendido. A la derecha del servidor, el ODROID-C2 que utilizo como reproductor multimedia con el televisor de mi dormitorio

En este último montaje, añadi uno de los ventiladores del viejo servidor para que ayudase a enfriar los discos duros y quizás extender su vida útil. La unidad de disco duro en la parte superior contiene los archivos del SO/descargas/temporales. Pude haberlo montado detrás del ventilador para mejorar su refrigeración, pero opté por hacerlo más accesible para posibles mantenimientod. Es más fiable que la tarjeta SD anterior, pero no es inmune ante posibles fallos. Además, puedo conectar un disco duro adicional al servidor a través del Hub USB, si fuera necesario. Todo el sistema es tan silencioso hasta el punto de haberlo ubicado en el estante del TV en la sala de estar. Sin fijarme en los LED, no puede saber si está encendido o apagado.

Figure 24
Figura 24

Esto no quiere decir que todo fuera perfecto. Hace unas semanas, el sistema se colgó un par de veces. La causa fue fácil de detectar. De nuevo, sobrecalentamiento. El servidor estaba en el estante superior del mueble, en el mismo lugar donde ahora está el estéreo. Es difícil de ver, pero también hay un APC nobreak 400VA en la parte trasera. El cableado sale por un agujero de la parte trasera del estante inferior. El calor del servidor y de las fuentes de alimentación, junto con el nobreak y la falta de ventilación hicieron que el ODROID-XU4 trabajase a unos 79 °C (174 ° F) todo el tiempo, incluso sin carga de trabajo. Es probable que las unidades de disco duro también lo hicieran, especialmente la que contiene el sistema operativo. Con una carga media de trabajo, la CPU y/o las unidades de disco duro (me olvidé de controlar las temperaturas) sobrepasaron su límite, deteniendo todo el sistema. Cambiando el estéreo por el servidor resolvió el problema. El calor ahora puede fluir a través del orificio del cableado. Incluso después de seis horas de una maratón de series, el servidor continuó funcionando bien durante semanas sin ningún tipo de cuelgue. Las temperaturas cayeron alrededor de 4 ° C (alrededor de 7 °F). Podrían bajar aun más, abriendo la puerta del estante siempre que sea necesario. Si el sistema no llego a colgarse durante un verano brasileño con temperaturas de hasta 43 ° C (109 ° F), dudo que vuelva a colgarse debido al sobrecalentamiento. En el futuro, podría crear una carcasa en 3D para el servidor. Pero la actual cumple mis necesidades.

La saga no ha terminado, y probablemente nunca lo haga. Me encantaría actualizar a un XU5 con 4 GB de RAM, compatibilidad H.265 y 4K, y un procesador aún más rápido. Sería la plataforma de transcodificación/reproducción perfecta. Ejecutar OMV combinado con Emby o Plex sería la mejor fuente para la transcodificación y el streaming. Imagine un C3 con WiFi AC 5GHz integrado: ¡sería la bomba, haciendo que cualquier televisor "inteligente" parezca una basura, en términos de potencia y flexibilidad! En este momento, es más que suficiente para ejecutar juegos retro, alamcenar casi todos mis medios multimedia (H.265 está ganando fuerza con 4K), poner a disposición mis archivos en todo el apartamento, administrar y descargar mis películas y series gracias a algo tan pequeño, silencioso y eficiente en términos de consumo de energía. Cualquier medio que no pueda reproducir en el XU4 lo puede hacer el ODROID-C2 de mi dormitorio (otra obra de arte de Hardkernel).

Así que esto es todo. Espero que este articulo les ayude a otros como yo. Si tiene preguntas, puede encontrarme en los foros de ODROID (https://forum.odroid.com) bajo will_santana.

Be the first to comment

Leave a Reply