Construyendo un clúster Raspberry Pi - Gestión de nodos simultáneos de Parte III
- 1463
- 121
- Mario Gollum
Aquí está el tercer artículo en el edificio una serie de clúster de Raspberry Pi. Hablaremos sobre qué software podemos usar para hacer que todos los nodos de clúster respondan a sus comandos a la vez, para que pueda instalar lo que desee y hacerlo solo una vez para LL de los nodos de clúster en lugar de configurarlos uno por uno tan entidades separadas. Dicho software facilita enormemente su trabajo y reduce el tiempo necesario para realizar operaciones. No importa si tiene cuatro, ocho o cincuenta nodos para trabajar con usted, puede hacer que todos hagan lo mismo al mismo tiempo.
En este tutorial aprenderás:
- Cómo instalar y configurar Clusterssh
- Cómo instalar la tela y usar el comando FAB
- Cómo dar comandos a tu clúster
Construcción de la serie Raspberry Pi:
- Construyendo un clúster de Raspberry Pi - Parte I: Adquisición y ensamblaje de hardware
- Construyendo un clúster de Raspberry Pi - Parte II: Instalación del sistema operativo
- Construyendo un clúster de Raspberry Pi - Parte III: gestión de nodos simultáneos
- Construir un clúster de frambuesa Pi - Parte IV: Monitoreo
Requisitos y convenciones de software utilizados
Categoría | Requisitos, convenciones o versión de software utilizada |
---|---|
Sistema | Raspberian Linux |
Software | Clústeres |
Otro | Acceso privilegiado a su sistema Linux como root o a través del sudo dominio. |
Convenciones | # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominiops - Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado |
Preparación
Tiene su clúster configurado, Raspbian está instalado en cada nodo. Ahora todo lo que tiene que hacer es ssh en cada uno de ellos y cambiar el nombre de host de estos pis de frambuesa comenzando con la que está en la parte inferior del clúster y subiendo. Puedes cambiar el nombre de host con
$ sudo hostname rpi1
Reinicie cada PI después de eso para que los cambios entren en vigencia en el nivel rápido y pase al siguiente Raspberry Pi. Deja el valor predeterminado Pi
usuario en cada nodo y cambie su contraseña a otra cosa, pero asegúrese de que cada nodo tenga el mismo usuario y la misma contraseña definida.
Trabaja todos los nodos a la vez con Clusterssh
Lo mejor de un clúster de Raspberry Pi es que es barato de hacer, rápido y no requiere muchos recursos. Y una vez que lo configure como se detalla en nuestros artículos anteriores, puede instalar software en cada nodo, ya que estaba utilizando una sola computadora. El mejor software para esto es Clusterssh: un software SSH que se puede configurar en sus nodos de clúster para que pueda acceder a todos a la vez y darles comandos para ejecutar.
Imagine un clúster de Raspberry Pi de cuatro nodos, cada uno con su propia ventana terminal. Y lo que sea que escriba en un cuadro de diálogo se reproduce en tiempo real en cada una de esas ventanas terminales. Eso es lo que hace Clusterssh: toma la entrada de una pequeña ventana y la transforma en entrada distribuida a todos los nodos de clúster.
Para configurar clústeres
Usted abre su distribución favorita de Linux en su computadora portátil y la busca en sus repositorios. Si está utilizando Ubuntu, la instalación está realizada con
$ sudo apt instalación clusterssh
Esto creará algunos archivos en su sistema. El primero que debe tener en cuenta es su /etc/huéspedes
archivo. Ábrelo en un editor de texto y agregue los cuatro nodos del clúster en este archivo, uno por línea:
192.168.1.124 RPI4 192.168.1.126 RPI1 192.168.1.150 RPI3 192.168.1.252 RPI2
El clúster que estamos usando en este tutorial obtiene sus direcciones IP a través de DCHP de un enrutador local. Para verificar qué dirección IP ha usado cada uno de sus nodos de Raspberry Pi ifconfig
. Asignamos un nombre de host fácil de recordar para cada uno de estos nodos: RPI1
, RPI2
, RPI3
y RPI4
. Una vez que tenga su dirección IP y haya modificado el /etc/huéspedes
Archivo en su computadora portátil o PC será más fácil acceder a cada uno de estos nodos. Salva el /etc/huéspedes
Archivo y cerrarlo.
Ahora tendrás que abrir el /etc/clústeres
presentar que clústeres
usos. Si este archivo no está presente después de haber instalado clústeres
Puedes crearlo tú mismo. Agregue lo siguiente en la primera línea del archivo:
Picluster pi@rpi1 pi@rpi2 pi@rpi3 pi@rpi4
y guarda el archivo. Esto dice clústeres
que hay un clúster llamado picluster
definido y que tiene cuatro nodos con el mismo usuario en cada uno: Pi
. Hay otro archivo que debe conocer: el archivo de configuración ubicado en ~/.Clusterssh/
. Simplemente nombrado configuración
, Contiene opciones de configuración con respecto al terminal Windows que usará para comandar el clúster. Por ejemplo, si desea cambiar la fuente terminal a terminal, agregue la línea
terminal_font = terminus-iso8859-9-16
al archivo. Puede predefinir un usuario de SSH, el software invocará cuando se inicie, una vez en cada ventana de terminal, por lo que también agregue el
usuario = PI
alinearse a ~/.clusterssh/config
.
Una vez que haya configurado el archivo de configuración, según lo desee, puede conectar todos los nodos de clúster para que los pis de Raspberry se inicien, espere unos 30 segundos para que lleguen al final del proceso de arranque y luego se inicien clústeres
en tu computadora portátil con
$ CSSH Picluster
Cuatro Terminal
Windows debe aparecer de inmediato y solicitarán la contraseña de inicio de sesión de un usuario nombrado Pi
. Hay una ventana pequeña con un cuadro de diálogo en el que puede escribir todo su comando y debe escribir la contraseña en ese cuadro y presionar Ingresar
. Todos los nodos lo registrarán de una vez y desde este punto, puede instalar cualquier cosa en el clúster, actualizar todos los nodos con un solo comando, editar archivos de configuración y básicamente hacer todo una vez, en lugar de repetir los mismos pasos cuatro veces. una fila.
Trabajar todos los nodos a la vez con tela
Puede ser que desee dar un comando al clúster Raspberry Pi y no desea usar cuatro ventanas terminales separadas. Si planea extender su clúster a - digamos - 8 o 12 nodos que se ocupan de esas pantallas en su escritorio serían desagradables. Entonces hay una alternativa a clústeres
Y es un pequeño guión de Python.
Asegúrate de tener Pitón
instalado en la computadora portátil o PC que usa para acceder a los nodos de clúster a través de SSH y usar pepita
Para instalar el tela
Paquete de Python:
$ sudo pip instalación de instalación
Ahora crea un Fabfile.py
Archivo en su directorio de inicio con
$ touch fabule.py
y hazlo ejecutable:
$ chmod +x fabuloso.py
Ahora edite ese archivo y agregue el siguiente script:
de tela.importación de API * envían.hosts = [ #rpi1 '[email protected] ', #rpi2' [email protected] ', #rpi3' [email protected] ', #rpi4' [email protected] ',] # La desventaja es que tienes que usar una contraseña de texto sin formato env env y.contraseña = 'Your_pi_Password' # inicia el comando a todos los nodos de clúster @parallel def cmd (comando): sudo (comando)
Reemplace las direcciones IP anteriores con las asignadas a sus nodos de clúster y cambie You_pi_password
a la contraseña asignada al Pi
usuario en cada nodo. Salva el Fabfile.py
archivo que acaba de modificar. Ahora escriba
$ Fab CMD: "LS -LA"
Para ver una lista de directorio de todos sus archivos en el directorio de inicio de cada nodo de clúster, todo en la misma ventana terminal. El Fab CMD: ""
El comando toma cualquier comando que coloque entre esas cotizaciones y lo ejecute en cada nodo de clúster que le brinda una salida detallada en la ventana del terminal que escribió eso en. Es útil al ejecutar operaciones largas, como compilar o actualizar su sistema, ya que puede ver que las líneas se desplazaron y siempre sepa qué nodo de clúster está en qué parte del proceso en qué momento.
Conclusión
Por lo tanto, puede configurar cada uno de sus nodos de clúster con el software que desea. Puede usar el clúster para compilar aplicaciones a granel, analizar datos, instalar paquetes R, todo sin la necesidad de repetir el mismo comando. Puedes controlar todo el clúster con cualquiera clústeres
o el Fabfile.py
detallado arriba. En la siguiente parte de la serie, veremos cómo sacar información de su clúster y cómo monitorear todos los nodos y sus recursos.
Tutoriales de Linux relacionados:
- Cómo crear un clúster de Kubernetes
- Cómo instalar Kubernetes en Ubuntu 20.04 fossa focal Linux
- Cómo instalar Kubernetes en Ubuntu 22.04 Jellyfish de Jammy ..
- Cosas para instalar en Ubuntu 20.04
- Una introducción a la automatización, herramientas y técnicas de Linux
- Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
- Ubuntu 20.04 Guía
- Cosas que hacer después de instalar Ubuntu 22.04 Jellyfish de Jammy ..
- Mastering Bash Script Loops
- Cosas para instalar en Ubuntu 22.04
- « Construyendo un clúster de Raspberry Pi - Adquisición de hardware de Parte I y ensamblaje
- Cómo instalar Docker en Debian 10 Buster Linux »