- Instal·lació i optimització de Docker i Docker Compose en plaques SBC.
- Configuració de xarxa avançada mitjançant hotspots i gestió de DNS/DHCP.
- Implementació d'orquestració de contenidors fent servir Docker Swarm.
- Administració centralitzada del clúster a través de la interfície de Portainer.

T'has plantejat mai tenir el teu propi centre de dades en miniatura sense deixar-te un dineral en maquinari professional? Doncs bé, muntar un clúster amb Raspberry Pi i Docker és la forma més divertida i barata de ficar-se al món de l'orquestració de contenidors i el còmput distribuït, ideal per experimentar a casa amb projectes que normalment requeririen servidors caríssims.
La gràcia d'aquest muntatge és que podeu aprofitar plaques petites com la Raspberry Pi o fins i tot altres SBC com Orange Pi o Banana Pi per crear un entorn on les aplicacions es reparteixin la càrrega de treball. És un projecte perfecte per aprendre sobre alta disponibilitat i escalabilitat sense por de trencar res crític, ja que tot passa a la teva pròpia xarxa local.
Preparant el terreny i el maquinari
Per començar amb bon peu, l'ideal és fer servir versions de sistema operatiu lleugeres, com Raspbian Lite o Armbian (en el cas d'Orange Pi), ja que no necessitem interfície gràfica i volem dedicar cada mega de RAM al processament. Un truc molt útil és flashejar les imatges usant Etcher per evitar errors d'escriptura a les targetes microSD.
Si no vols estar barallant-te amb monitors i teclats USB per a cada placa, pots fer servir un adaptador USB a Sèrie connectat als pins RX i TX. Configurant el fitxer config.txt a la partició de boot afegint enable_uart=1, podràs gestionar tot mitjançant una consola serial amb programes com Putty a Windows o Minicom a Linux, la qual cosa és molt més còmode de caminar canviant cables HDMI.
Optimització del sistema i xarxa
Abans d'instal·lar Docker, convé deixar el sistema a punt. És fonamental actualitzar-ho tot amb sudo apt update y sudo apt upgrade -y. Per estalviar recursos, pots limitar la memòria dedicada al vídeo al fitxer de configuració, posant gpu_mem=16, així deixem que la major part de la RAM es faci servir per als contenidors.
Pel que fa a la xarxa, si vols que el teu Raspberry actuï com a node mestre i gestioni les altres, pots substituir el gestor dhcpcd per Gestor de xarxa, que és molt més robust. Per crear una xarxa pròpia per al clúster, es pot instal·lar dnsmasq per gestionar el DHCP i DNS, i hostapd per convertir la Pi en un punt d'accés WiFi (hotspot) on es connectin els altres nodes.
Instal·lació de Docker i Docker Compose
Instal·lar Docker en una Raspberry Pi 4 és bufar i fer ampolles perquè té suport oficial. El mètode més ràpid és executar l'script automàtic d'instal·lació mitjançant una ordre curl que descarrega i configura tot el motor de Docker. Per evitar haver d'escriure sudo a cada ordre, és recomanable afegir l'usuari al grup de Docker, encara que cal tenir ull amb la seguretat ja que això dóna privilegis elevats.
Un cop instal·lat el motor, és imprescindible afegir Docker Compose, que ens permet definir aplicacions multicontenidor mitjançant un fitxer YAML. Es pot instal·lar fàcilment a través de pip, el gestor de paquets de Python. Per comprovar que tot va vent en popa, només cal llançar la imatge de hello-world i verificar que el contenidor sexecuta correctament.
Orquestració amb Docker Swarm
Quan ja tens Docker a totes les plaques, arriba el moment d'unir-les en un clúster de Docker Swarm . Swarm és l'eina nativa de Docker per convertir un grup de nodes en un únic recurs virtual. Només necessites iniciar el mode Swarm al node mestre i després unir els nodes treballadors (workers) mitjançant el token de seguretat proporcionat.
Per gestionar tot aquest desplegament de forma visual i sense tornar boig amb la terminal, és molt recomanable instal·lar Portainer per gestionar els teus contenidors Docker . Aquesta eina ofereix una interfície web on podem veure l'estat dels serveis, els nodes actius i gestionar els contenidors amb un parell de clics, fent que l'administració del clúster sigui molt més intuïtiva.
Trucs avançats i connectivitat
Si us trobeu en un entorn amb restriccions de xarxa o bloquejos, podeu muntar un túnel OpenVPN al node mestre. Això permet que tot el trànsit del clúster surti a internet a través de la VPN, saltant proxies o tallafocs. Per gestionar el trànsit entre les xarxes del Swarm i la vostra xarxa local, eines com Firehol ajuden a crear regles d'iptables de forma més humana i senzilla.
Un altre detall crític és l?hora del sistema. Com que les Raspberry Pi no tenen rellotge de temps real (RTC), perden la data en apagar-se. L'ideal és instal·lar un mòdul RTC físic (com el DS3231) o configurar un servidor NTP a la xarxa local perquè tots els nodes estiguin sincronitzats, cosa vital perquè els logs i els certificats de seguretat funcionin bé.
Configurar un ecosistema d'aquest tipus permet transformar unes quantes plaques senzilles en una eina d'aprenentatge potent on es pot desplegar des de servidors web fins a sistemes de càlcul distribuït, integrant la gestió de xarxa, la seguretat mitjançant túnels i l'orquestració de contenidors en un sol entorn controlat.




