132 - No me hablo con la Raspberry
Te hablo sobre problemas con la conexión SSH con la Raspbery y como monitorizar la Rasbperry con el stack formado por Grafana, Influx y Telegraf. Espectacular.
No te descubro nada si te digo, que la llegada de la Raspberry Pi 4 nos pilló a todos, o al menos a mi, por sorpresa. A veces, realmente, pienso que también les pilló por sorpresa a los desarrolladores de la propia Raspberry, pero esto son simples especulaciones. Y esto de que le pilló por sorpresa es en referencia a algunas deficiencias, por lo menos a ojos de los usuarios. Algunos problemas como puede ser la cuestión de la temperatura, o el hecho de que no se pueda utilizar un USB en el arranque y otros pequeños detalles. Sin embargo, parece que con el paso del tiempo, todo esto se va solucionando o al menos mitigando. De hecho, actualmente, la temperatura en la Raspberry es cerca de ocho grados inferior, al momento del lanzamiento, y todo ello con actualizaciones del firmware. Sin embargo, además de estos problemas, yo he tenido algunos adicionales, como son los problemas de comunicación con la Raspberry, y de ahí el título de este nuevo episodio del podcast no me hablo con la Raspberry. Pero también te cuento como puedes monitorizar la Raspberry con Grafana, influx y Telegraf,
No me hablo con la Raspberry
¿En que ando metido?
Como todos los jueves, te adelanto lo que encontrarás en atareao.es durante esta semana, y también en que líos ando metido, y que seguro desembocarán en novedades, tanto de aplicaciones como de artículos o tutoriales.
Aplicaciones
Por un lado está el tema de PAM Device. La aplicación que libeeré hace una semana ya, y que ha tenido mas que un problemilla. Por varias razones y que espero solucionar en los próximos días, sobre todo en lo referente a las dependencias, que voy a dejar reducida a la mínima expresión. Pero no solo esto, sino que por sugerencia de Marcos Costales, le voy a dar soporte a cuantificadores. ¿Cuantificadores? Si, me refiero a las pulseras de Xiaomi o similar, relojes inteligentes, etc.
Por otro lado está Primeros pasos que espero tener actualizada para la semana que viene, y así dedicar un episodio del podcast a esta última versión de Ubuntu. Que como me retrase mucho mas se va a juntar con la siguiente.
Artículos
Respecto a los artículos indicarte que he publicado uno sobre como escribir en dos archivos simultáneamente en Bash. Se trata de contarte las posibilidades de la herramienta tee
, que seguro que te dará mas que una alegría.
Por otro lado, el último capítulo del tutorial sobre docker. Este capítulo es una recopilación de recomendaciones y buenas prácticas al trabajar con docker.
Vamos al turrón. ¿porque no me hablo con la Raspberry?
En este nuevo episodio del podcast te quiero hablar sobre varios temas relacionados con la Raspberry. El primero de ellos es referente a un problema de comunicación que se me ha producido con la Rasbperry vía SSH.
La cuestión es que una vez me conectaba con la Raspberry vía SSH, al poco tiempo, esta dejaba de responder. Se quedaba la comunicación colgada. No la Rasbperry. Solo la comunicación. Y esto era así, porque los servicios que ofrecía la Rasbperry seguían funcionando a la perfección. La cuestión, fue mas o menos sencilla.
No se trataba un problema mío con la Rasbperry, ni siquiera con la Rasbperry 4, es al parecer un problema que también se ha producido en la Raspberry 3. Aunque yo al menos no lo he sufrido.
La solución es sencilla, tan solo tienes que modificar los archivos /etc/ssh/sshd_config
y /etc/ssh/ssh_config
, y añadir al final de cada uno de ellos la siguiente línea IPQoS cs0 cs0
.
Aprovechando el artículo de tee, esto es tan sencillo como ejecutar las siguientes instrucciones,
echo "IPQoS cs0 cs0" | sudo tee -a /etc/ssh/sshd_config /etc/ssh/ssh_config 1>/dev/null
Lo del 1>/dev/null
es simplemente para que no se muestre por pantalla, pero lo puedes omitir sin problemas.
El problema de la temperatura
Como ya he comentado anteriormente, el problema inicial de mas importante que nos trajo la Rasbperry Pi 4, fue un alarmante aumento de la temperatura. Un problema que se ha ido mitigando con el tiempo gracias a la liberación por parte de la fundación Rasbperry de actualizaciones de firmware. Y esto lo vas a poder ver en los gráficos que te mostraré mas adelante.
Sin embargo, esto no es suficiente, porque aunque se ha conseguido rebajar considerablemente la temperatura, lo cierto es que sin medios adicionales creo que es insuficiente. Así, en este sentido, he comprado una caja sin ventilación mecánica de aluminio. Siendo la propia caja la que se encarga de hacer de disipador, manteniendo la temperatura bastante contenida como verás en los gráficos que te mostraré a continuación.
La caja que te comento es la FLIRC Rasbperry Pi case. Yo creo que la compré en Amazon por unos 18 euros, creo recordar. Sin embargo, como ves en la página del fabricante, la puedes encontrar por unos 15 $… aunque entiendo que faltan los portes a España… pero bueno.
La ventaja de esta caja, es que no vas a oir absolutamente nada, con lo que si quieres utilizarlo para Media Center es perfecta. El inconveniente, además del precio es que se calienta, al disipar el calor, pudiendo llegar a los 45 ó 50 grados… lo que tienes que tener en cuenta.
Controlando la temperatura con Grafana, Influxdb y Telegraf
Hasta ahora, tal y como te comenté en el capítulo 16 sobre como monitorizar la Raspberry, he estado utilizando RPi Monitor, o alguna que otra solución implementada por mi. Sin embargo, en esta ocasión he querido hacer algo mas profesional y he utilizado la combinación Grafana InfluxDB Telegraf. Lo cual da un resultado espectacular, tal y como puedes ver en las capturas de pantalla que dejo mas adelante, y conforme te cuento en el podcast.
A continuación te indicaré como he realizado la instalación. Sin embargo te adelanto, que a pesar del tutorial sobre docker, he preferido realizar toda la instalación mediante paquetes deb…. me parecía tan fácil. Sin embargo te adelanto, que tienes a tu disposición la misma solución con Docker.
Instalar Grafana
Para instalar grafana solo tienes que ejecutar las siguientes instrucciones en un terminal. Es posible que la versión sea distinta pero el proceso será muy similar,
wget https://dl.grafana.com/oss/release/grafana_6.5.1_armhf.deb
sudo dpkg -i grafana_6.5.1_armhf.deb
sudo systemctl daemon-reload
sudo systemctl enable grafana-server
sudo systemctl start grafana-server
Instalar InfluxDB
Instalar InfluxDB es casi tan sencillo o mas que instalar Grafana. Las instrucciones a ejecutar son las siguientes,
curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add -echo "deb https://repos.influxdata.com/debian buster stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
sudo apt update
sudo apt install influxdb
sudo systemctl enable influxdb
dudo systemctl start influxdb
Instalar Telegraf
Para instalar Telegraf, ejecuta las siguientes instrucciones,
wget https://dl.influxdata.com/telegraf/releases/telegraf_1.12.2-1_armhf.deb
sudo dpkg -i telegraf_1.12.2-1_armhf.deb
Una vez instalado Telegraf, tan solo tienes que modificar el archivo de configuración y adaptarlo a tus necesidades. Indicarte que si quieres que te pase el mío me dices y lo dejaré disponible con algún enlace para que lo puedas instalar fácilmente. El resultado de Grafana es el que ves en la siguiente captura de pantalla,
El resultado
Para que puedas ver el resultado de esta combinación de Grafana Influxdb y Telegraf, dejo aquí unas capturas de pantalla donde podrás apreciar las pruebas realizadas con la Raspberry Pi 4, en las que he aplicado los mismos ensayos que hice en un podcast anterior. Espero que los disfrutes.
Imagen de portada de Kristina Flour en Unsplash
Acabo de descubrir tu podcast, fantástico!
Me encantaría esa serie/tutorial grafana!