Soluciones LowCost 1 – La base

Este es el primer artículo de una serie en los que quiero presentarte algunas soluciones informáticas LowCost para nuestra infraestructura informática.

Casi todas las soluciones presentadas están orientadas a utilizar un hardware muy muy económico como es una «Raspberry PI» (https://www.raspberrypi.org/) aunque también es cierto que la mayoría de soluciones se podrían implementar también en equipos «viejos» (8 años?) pero que tienen potencia suficiente.

En este primer artículo quiero mostrarte cómo crear la base para las futuras soluciones que podemos implementar.

Materiales:

  • [amazon_textlink asin=’B01CD5VC92′ text=’Raspberry PI’ template=’ProductLink’ store=’rbsy-21′ marketplace=’ES’ link_id=’5a53716c-41ea-11e7-a600-b144163e2a2d’] (Yo uso una Raspberry PI B, así que sirve casi cualquier modelo)
  • [amazon_textlink asin=’B01M58O9M9′ text=’Adaptador de corriente’ template=’ProductLink’ store=’rbsy-21′ marketplace=’ES’ link_id=’6fe72040-41ea-11e7-b9d0-7f135b677368′] (sirve casi cualquier cargador de móvil micro-USB)
  • [amazon_textlink asin=’B01F1PSFY6′ text=’Caja Raspberry’ template=’ProductLink’ store=’rbsy-21′ marketplace=’ES’ link_id=’d697ba88-41ea-11e7-8dc5-41b66a014871′] (opcional pero muy recomendable)
  • [amazon_textlink asin=’B00N2VILDM’ text=’Cable de red’ template=’ProductLink’ store=’rbsy-21′ marketplace=’ES’ link_id=’8d85ad12-41ea-11e7-a04d-772cfb95d2f8′] (se puede usar un adaptador Wi-Fi, se verá en otro artículo)

Instalación inicial.

Nota: Actualmente trabajo con linux en mi equipo por lo que primero mostraré los pasos de instalación con linux y después indicaré los pasos de instalación con Windows. Después de la instalación las tareas a realizar serán comunes, ya que trabajaremos con la raspberry, independientemente del sistema operativo de nuestro equipo.

Para empezar descargamos el sistema operativo que le vamos a poner a la Raspberry PI. Como no vamos a usar entorno de escritorio, ni otros añadidos, yo me decanto por la versión RASPBIAN JESSIE LITE, que ocupa muy poco y que con una tarjeta SD de 2GB es más que suficiente para la instalación.

Lo podemos descargar de la web de raspberry (https://www.raspberrypi.org/downloads/raspbian/)

Enlace directo a la versión actual: http://vx2-downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2017-03-03/2017-03-02-raspbian-jessie-lite.zip

Después de descargar la última versión de Raspbian Lite, descomprimimos el fichero y nos quedará un fichero con la extensión “.img”

Este fichero img, contiene la imagen del sistema que debemos volcar a la tarjeta SD.

Instalación en Linux:

Abrimos una sesión de terminal como root y vamos a la carpeta en la que hemos descomprimido la imagen del sistema.

Ponemos la tarjeta SD en el equipo.

Ahora tenemos que averiguar la ruta de la tarjeta SD para ello ejecutamos el comando

# df -h

Nos mostrará algo parecido a lo siguiente

En este caso podemos ver que la tarejeta SD tiene 2 pariciones (/dev/mmcblk0p2 y /dev/mmcblk0p1) de una instalación anterior, lo que nos permite identificar la ruta de la tarjeta SD como /dev/mmcblk0

Desmontamos las particiones de la tarjeta SD (2 en este caso)

Ahora ya podemos copiar la imagen a la SD con el comando “dd”, para poder ver el progreso añadiremos la variable “status=progress”

# dd bs=4M if=2017-03-02-raspbian-jessie-lite.img of=/dev/mmcblk0 status=progress

Ahora, si quitamos la tarjeta SD y la volvemos a poner en el equipo, podremos ver las particiones creadas con el comando df -h

Instalación en Windows:

Para realizar la instalación en Windows de la imagen a la tarjeta SD es necesaria la aplicación “Win32 Disk Imager” que se puede descargar aquí (https://sourceforge.net/projects/win32diskimager/)

Introducimos la tarjeta SD en el lector de nuestro equipo y arrancamos la aplicación.

En la aplicación, donde indica “Image File”, introducimos la ruta a la imagen que queremos utilizar, o la buscamos en el botón de la carpeta.

Seleccionamos el destino (la tarjeta SD) donde indica “Device”

Le damos al botón “Writte” para que realice el volcado de la imagen de Raspbian a la tarjeta SD.

Suele preguntar si estamos seguros de la operación, dependiendo de si la tarjeta SD tiene ya algún contenido, ya que elimina y sobrescribe todo el contenido de la tarjeta SD

Cuando finalice saldrá un mensaje indicando “Write Successful”.

Ya podemos cerrar la aplicación y tenemos la tarjeta SD con nuestra imagen de Raspbian.

Antes de arrancar

Para terminar, como no vamos a tener pantalla en nuestro “apliance” tenemos que configurarle una dirección IP, y habilitar SSH, para poder acceder por ssh.

Para ello hay que editar el fichero “cmdline.txt” de la partición FAT de la tarjeta SD. Y añadir lo siguiente antes de donde pone “rootwait”:

ip=<client-ip>:<server-ip>:<gw-ip>:<netmask>ip=192.168.1.200::192.168.1.1:255.255.255.0:rpi:eth0:off

En veriones anteriores con esto era suficiente porque SSH estaba habilitado por defecto, pero a partir de la versión de noviembre de 2016 ssh está deshabilitado por defecto,

Para habilitar SSH hay que crear un fichero llamado “SSH”, sin extensión, en la partición de arranque de la tarjeta SD.

Ahora ya podemos sacar la tarjeta SD de nuestro equipo y ponerla en la Raspberry PI.

Podemos probar que responde con un “ping”

Configuración Inicial

Ya podremos acceder por ssh para realizar la configuración inicial de nuestras raspberry.

El usuario por defecto es “pi” y la contraseña por defecto es “raspberry”

Una vez que entramos, lo primero es hacer toda la configuración inicial. Para ello ejecutamos “raspi-config”

Vamos a seguir en orden las opciones del menú de configuración.

En la opción 1 del menú cambiamos la configuración de la contraseña por defecto.

En la opción 2 del menú cambiamos el nombre de nuestro “apliance”. El nombre por defecto es “raspberrypi”, como se puede ver en alguna captura de pantalla anterior.

En la opción 3 del menú elegimos las opciones que queremos en el arranque.

Yo, por ejemplo, he optado por el arranque en modo texto y que no haga “auto-login”.

Nota: en este caso, al haber elegido la imagen de “Raspbian Jessie Lite” no tenemos instalado el entrono gráfico (Desktop GUI).

En la opción 4 del menú elegimos la configuración de idioma, la zona horaria y la distribución del teclado.

En la opción 5 del menú tenemos varias opciones para conectarnos a la raspberry pi. Aunque hemos habilitado antes SSH en el arranque de la tarjeta SD, ahora lo vamos a habilitar en el sistema.

En la opción 6 del menú podemos configurar el overclocking de la CPU de la raspbeery, sin perder garantía. Si vamos a optar por el overclocking tendremos que asegurarnos de ponerle un disipador y buena ventilación a la raspberry.

Nos muestra una advertencia sobre las consecuencias del “overclocking”

En la opción 7 del menú tenemos algunas opciones avanzadas de configuración. En este caso vamos a configurar un par de ellas.

En la opción A1 del menú, expandimos el sistema de ficheros al tamaño total de la tarjeta SD

En la opción A2 del menú, seleccionamos la cantidad de memoria RAM que vamos a asignar a los gráficos. En este caso, como no vamos a tener entorno gráfico, seleccionamos el mínimo de RAM, para tener más RAM para el resto de tareas del sistema.

En la opción 8 del menú, Podemos actualizar la herramienta de configuración. Aunque está al final del menú, sería recomendable actualizar la herramienta antes de hacer la configuración.

Después de salir de la herramienta de configuración, reiniciamos la raspberry.

# sudo reboot

Después de reiniciar vamos a reconfigurar la red.

Para configurar la red en la versión de Raspbian Jessie Litle, hay que editar el fichero /etc/dhcpcd.conf.

# sudo nano /etc/dhcpcd.conf

Añadimos al final del fichero la configuración de red.

Después de editar el fichero de configuración, reiniciamos la raspberry.

# sudo reboot

Con esto ya tenemos creada la base para futuros proyectos y/o soluciones de bajo coste para nuestra infraestructura.

Backup de la instalación

Para terminar voy a indicar cómo realizar un backup de la tarjeta SD.

Se me ocurren muchos motivos para realizar una copia de seguridad de la tarjeta SD, como por ejemplo no tener que repetir los pasos de la instalación para futuras implementaciones, o poder realizar una vuelta atrás después de alguna modificación que no funciona correctamente, o por si se estropea la SD, o porque sí. Vamos, como he comentado otras veces (http://www.conasa.es/tag/backup/) haz copia de seguridad.

El proceso de backup es muy similar al que hemos visto al realizar la instalación en la SD pero cambiando el orden de algunas cosas

Backup en Linux:

Abrimos una sesión de terminal como root y vamos a la carpeta en la que queremos guardar el bakup de la SD.

Ponemos la tarjeta SD en el equipo.

Ahora tenemos que averiguar la ruta de la tarjeta SD para ello ejecutamos el comando

# df -h

Nos mostrará algo parecido a lo siguiente

En este caso podemos ver que la tarejeta SD tiene 2 pariciones (/dev/mmcblk0p2 y /dev/mmcblk0p1) de una instalación anterior, lo que nos permite identificar la ruta de la tarjeta SD como /dev/mmcblk0

Desmontamos las particiones de la tarjeta SD (2 en este caso)

Ahora ya podemos copiar la imagen de la SD con el comando “dd”, para poder ver el progreso añadiremos la variable “status=progress”. Hay que recordar que los parámetros van al revés que cuando volcamos la imagen a la SD. En este caso en el parámetro “if=” (Origen de datos) hay que indicar la ruta a la tarjeta SD. Y en el parámetro “of=” (Destino de datos) hay que indicar la ruta y el nombre del fichero “.img” en el que vamos a guardar la copia de la SD.

# dd bs=4M if=/dev/mmcblk0 of=backup-sd-base.img status=progress

Backup en Windows:

Para realizar la copia de la tarjeta SD en es necesaria la aplicación “Win32 Disk Imager” que se puede descargar aquí (https://sourceforge.net/projects/win32diskimager/)

Introducimos la tarjeta SD en el lector de nuestro equipo y arrancamos la aplicación.

En la aplicación, donde indica “Image File”, introducimos la ruta del fichero de backup de la SD.

Seleccionamos el origen (la tarjeta SD) donde indica “Device”

Le damos al botón “Read” para que realice la copia de la tarjeta SD en el fichero “.img” que hemos indicado antes.

Cuando finalice saldrá un mensaje indicando “Read Successful”.

Ya podemos cerrar la aplicación y tenemos la copia de la tarjeta SD.