Hace un par de días me llegó mi primera Raspberry Pi, la configuré e instalé Kubernetes, para hacer unas pruebas. Me gustó tanto la idea de montar un cluster de k8s, que pedí dos más, para montar un cluster. DISCLAIMER: Si me falta una, no tardará en llegar…
Después de montar los componentes, instalé ene las SD el sistema operativo ubuntu server, que es lo que me ha traído escribir esta mini guía. Realmente es muy absurdo, quizás lo más interesante es la configuración una vez el sistema esta corriendo.
En el momento de escribir esta guía, podías encontrar la imagen de ubuntu server en: https://ubuntu.com/download/raspberry-pi, en este enlace deberéis elegir la versión que queréis instalar. En ni caso como tengo arm64 por ser PI 4 con 8GB, mr baje el correspondiente a arm64
Mientras la descarga se inicia, voy a la guía que encontraréis debajo y me descargo la aplicación imager de ubuntu, que nos permite poder la imagen en la SD:
En el momento de escribir este post, se encuentra en: https://ubuntu.com/tutorials/how-to-install-ubuntu-on-your-raspberry-pi#1-overview
Ya tengo todo lo necesario, ahora que ?
Ahora toca utilizar imager la aplicación que pondrá la imagen en nuestra SD y para hacer eso, primero ponla en algún puerto que acepte este tipo de tarjetas o en un adaptador para ello.
Abrimos la aplicación, seleccionamos la SD, seguramente os aparezca como a mi en sugerencias cuando clickeis en SD Card. Después de seleccionar la SD, en mi caso al bajarme el sistema operativo tengo que seleccionarlo de, en mi caso, la carpeta de descargas.
Hice un par de pruebas, seleccionando que se bajará el sistema operativo, pero he tenido mas problemas que bajando y seleccionando la version que quiero
Una ves tenemos todo seleccionado le damos a «write«. Cuando termine la escritura, empezaría la verificación y seguido nos aparecerá un msg de finalización
Ya tengo instalado el SO, ahora qué ?
Aunque aparentemente todas las Raspberry Pi 4 empiezan por dc: para asegurarnos lanzaremos el comando
arp -a
Este comando nos devolverá una lista de ip/mac en nuestra red
? (192.168.1.234) at Fg:45:td:5t:00:dd on ......
Una vez sabemos que hay conectado en nuestra red, conectamos nuestra Raspberry Pi a la red y a internet, repitiendo este paso sabremos que mac corresponde a que ip (actualmente).
Para hacerme la vida mas fácil, configuro mi router, con todas las macs de mis Raspberry PI asignando una ip estática dentro de mi red, de esta manera seguiré usado DHCP, sin configuración especifica en cada Raspberry, el router se encargará de ello. En mi router esta configuración es dentro de «LAN».
Ya tengo accesso a mi Raspberry!
El usuario por defecto es ubuntu, con la password ubuntu. En mi caso, he creado un usuario nuevo y eliminado el por defecto.
Cuando entréis os pedirá que cambiéis la contraseña, porque ha espirado, la cambiáis y listo podéis jugar lo que queráis
Para crear un usuario y seguir mis pasos, antes de borrar el por defecto, lanzaos los siguientes commandos
sudo useradd -m -s /bin/bash elusuarioquequieras
sudo usermod -aG sudo elusuarioquequieras
El primer comando creara un usuario, con su home y estableciendo el bash y el segundo nos añade como «sudo» al usuario que le pasamos.
Antes de continuar, establecemos una contraseña para el usuario creado
sudo passwd elusuarioquequieras
Ya tenemos el usuario, ahora nos tocaría salir y lomearnos con el usuario nuevo, para poder borrar el antiguo. Si intentamos hacerlo sin salir, seguramente aparezca un msg de error.
sudo userdel ubuntu
Facilitando la vida
Ya tenemos nuestro ubuntu server y nuestro usuario, ahora toca hacernos la vida más fácil. Si estáis en Mac o en Linux, configurar los hosts, para usar nombres dentro de nuestro entorno, siempre facilita las cosas.
sudo vim /etc/hosts
Ya tenemos los hosts, configurados, podemos hacer ssh usuario@host.
Personalmente no quiero password y prefiero claves para la conexión entre máquinas y una política de refresco y que me gusta conectarme, tan sólo con «ssh hydra».
Así que vamos a generar las clases, para cada Raspberry que tengamos:
ssh-keygen -t rsa
Suelo tener una por máquina, aunque podéis tener la misma y un mecánicos de actualización, para actualizarla, en este punto vosotros mismos
Una vez tenemos nuestra key, la «copiamos» al servidor que toca
ssh-copy.id -i /path/tus/ssh/rsa usuario@host
Ya tenemos nuestro ssh en el servidor y nos permitirá lanzar el comando
ssh usuario@host
Pero queremos ssh host y ya!. Pues vanos a modificar el ultimo fichero
sudo vim /etc/ssh/ssh_config
Y aquí añadimos nuestros host, usuarios y ubicación de los rsa
Cómo extra, dentro de cada una de nuestra Raspberry, podemos asignarle un hostname, en /etc/hostname