Construire un cluster Raspberry Pi - Partie IV Surveillance

Construire un cluster Raspberry Pi - Partie IV Surveillance

Avoir un cluster construit à partir de Raspberry Pi est non seulement amusant, mais assouplit également votre travail. Comme nous l'avons discuté dans notre dernier article de la série, vous pouvez utiliser le cluster pour compiler des logiciels ou les faire recueillir des données à partir de diverses sources sur Internet. Il y a beaucoup d'utilisations pour une telle chose.

Cependant, après avoir compilé pendant une heure consécutive, vous pourriez être curieux de savoir comment vos nœuds fonctionnent. Comment ils fonctionnent sous charge, s'ils ne sont pas sous-alimentés ou si la température du CPU n'augmente pas au-dessus des niveaux souhaités. Combien de mémoire avez-vous laissé dans chacun des nœuds pendant qu'ils font des tâches. Plus vous avez de nœuds dans votre rack, plus vous aurez à parcourir d'informations. Heureusement, il existe des logiciels qui peuvent vous aider à visualiser ces informations à la fois de diverses manières.

Dans ce tutoriel, vous apprendrez:

  • Comment installer le regards outil de surveillance
  • Comment configurer les regards
  • Comment utiliser regards Pour voir les informations de cluster
  • Comment créer une page Web locale pour afficher le regards sortir
Les regards affichent des informations pertinentes concernant chaque nœud de votre cluster Linux.

Building Raspberry Pi Series:

  • Construire un cluster Raspberry Pi - Partie I: acquisition et assemblage matériel
  • Construire un cluster Raspberry Pi - Partie II: Installation du système d'exploitation
  • Construire un cluster Raspberry Pi - Partie III: Gestion simultanée de nœuds
  • Construire un cluster Raspberry Pi - Partie IV: Surveillance

Exigences et conventions logicielles utilisées

Exigences logicielles et conventions de ligne de commande Linux
Catégorie Exigences, conventions ou version logicielle utilisée
Système Raspbian linux
Logiciel Regards
Autre Accès privilégié à votre système Linux en tant que racine ou via le Sudo commande.
Conventions # - Exige que les commandes Linux soient exécutées avec des privilèges racine soit directement en tant qu'utilisateur racine, soit par l'utilisation de Sudo commande
$ - Exige que les commandes Linux soient exécutées en tant qu'utilisateur non privilégié régulier

Regards - le incontournable de la surveillance des grappes

Considérez les regards comme un haut pour les grappes. C'est plus que ça. C'est un couteau à armée suisse pour surveiller les grappes. Il peut afficher tout ce dont vous avez besoin dans une fenêtre de terminal: température matérielle, vitesse du ventilateur, processus en cours, RAM et utilisation du processeur, IP de nœud et plusieurs autres gemmes intéressantes et plus petites. Le logiciel est basé sur ncurses Et cela vous permettra également de parcourir facilement vos nœuds de cluster, de configurer ce que la fenêtre d'information affiche et il a même un mode de serveur Web pour publier ces informations dans une page Web.

Installation des regards

Le logiciel est basé sur Python. Il existe plusieurs façons de l'installer. La plupart des distributions Linux l'ont déjà dans leurs référentiels, donc dans Ubuntu, vous feriez simplement un

$ sudo apt installer des regards 


Et toutes les dépendances du package seraient résolues. Si vous préférez le faire à la manière Python, vous pouvez utiliser pépin:

$ sudo apt installer pip $ pip install regards 

Les regards ont une tonne de modules tels que les informations RAID, les informations réseau WiFi, l'interface Web ou l'intégration Docker. Pour être sûr de les obtenir tous, si vous utilisez pépin, Installer des regards avec

$ pip install 'Glances [action, navigateur, cloud, cpuinfo, docker, export, dossiers, gpu, graphe, ip, raid, snmp, web, wifi]' 

Vous pouvez également utiliser un script de configuration qui installe regards sur votre système, quelle que soit la distribution que vous utilisez. Il télécharge la dernière branche maître de GitHub et la définit sur votre système. Pour cette utilisation

$ curl -l https: // bit.ly / regards | / bac / bash 

Assurez-vous également d'installer regards Sur tous les nœuds de cluster.

Configuration des regards

Après l'installation, regards crée un fichier de configuration dans / etc / regards / appelé regards.confli. Dans ce fichier, vous pouvez affiner quoi et comment l'interface ncurses vous montrera. Par exemple, si vous souhaitez utiliser un fond blanc au lieu d'un fond noir dans l'écran d'information système, vous pouvez modifier la ligne

curse_theme = noir 

pour

curse_theme = blanc 

L'interface ncurses utilise des couleurs, donc si vous voulez être visuellement allégé par un processeur de surcharge, vous pouvez définir à quel pourcentage la barre d'utilisation du processeur passera du vert au rouge. Pour cela, modifiez la valeur de cpu_critical = 90 à quelque chose entre dix et 99. RAM, échange, seuils de chargement ont tous les mêmes paramètres:

prudent = 50 avertissement = 70 critique = 90 

Vous pouvez modifier leurs valeurs afin que leurs barres respectives ne changent que des couleurs uniquement alors que la limite définie par la valeur soit atteinte. Non-femme le Capteurs alias lignes dans le [capteurs] Section pour obtenir des informations sur le processeur et la température de la carte mère. Pour cela, vous devrez également avoir le HDDTemp et putil Packages installés sur chacun des nœuds de cluster Raspbian:

$ sudo apt install hddtemp python-psutil 

La liste des éléments configurables est vaste mais le / etc / regards / regards.confli Le fichier est bien documenté et explicite et nécessiterait un article. Mais voyons ce que vous pouvez faire avec regards.

En utilisant des regards

Il existe plusieurs façons d'utiliser des regards. Si vous souhaitez voir des informations sur un nœud de cluster particulier et que vous y êtes connecté via SSH, vous pouvez simplement invoquer la commande avec

$ regards 

Si vous voulez commencer regards En mode serveur sur un nœud de cluster, vous ajoutez le -s attribut:

$ regards -s 

Puis sur une autre machine, vous pouvez commencer regards En tant qu'application client simple et connectez-vous à la regards serveur avec lequel vous venez de commencer

$ regards -c 192.168.X.X 


192.168.X.X est l'IP du serveur des regards. Vous pouvez également utiliser des noms d'hôtes s'ils sont définis dans votre / etc / hôtes déposer:

$ regards -c rpi1 

Vous pouvez définir vos nœuds de cluster dans le fichier de configuration. Cherchez le Serveur client sectionner regards.confli Et ajoutez vos nœuds:

[serverlist] # Définissez la liste des serveurs statiques Server_1_name = 192.168.1.126 Server_1_alias = RPI1 Server_1_port = 61209 Server_2_name = 192.168.1.252 Server_2_alias = RPI2 Server_2_port = 61209 Server_3_name = 192.168.1.150 Server_3_alias = RPI3 Server_3_port = 61209 Server_4_name = 192.168.1.124 Server_4_alias = RPI4 Server_4_port = 61209 

Comme vous pouvez le voir, chaque serveur a un numéro, un nom, un alias et un port. Le port doit rester 61209 pour tous les nœuds tandis que l'alias doit correspondre au nom d'hôte de chaque nœud de cluster IP.

Lorsque vous utilisez plusieurs nœuds, pour éviter de saisir leur mot de passe de connexion chaque fois que vous vous connectez à un regards serveur, vous pouvez définir ce mot de passe en plaintex dans le regards fichier de configuration. Modifier / etc / regards / regards.confli et ajoutez vos nœuds de cluster au [Mots de passe] section:

rpi1 = yourpassword rpi2 = yourpassword rpi3 = yourpassword rpi4 = yourpassword 

Remplaçant votre mot de passe Avec le mot de passe, vous avez défini dans la troisième partie de cette série et enregistrez le fichier.

Maintenant tu peux appeler regards d'un ordinateur portable avec

$ Glances - Browser 

et voir tous vos nœuds de cluster dans une liste de ncurses de navigation. Vous pouvez entrer chacun d'eux, voir ce que chacun fait avec ses ressources et ses processus, puis passer à la suivante.

Mode serveur Web

Mais et si vous vouliez voir tous vos nœuds de grappe à la fois? Serait-ce plus gentil? Et ne serait-il pas encore mieux affiché ces informations dans une page Web? Glances a un mode de serveur Web avec lequel vous pouvez commencer:

$ regards -w 

Une fois qu'un serveur de regards est activé en tant que serveur Web, vous pouvez utiliser n'importe quel navigateur Web pour accéder à une page Web détaillant les mêmes informations que vous pouvez consulter dans l'interface NCurses. Entrez simplement l'adresse IP du nœud ou le nom d'hôte dans la barre d'URL de votre navigateur et utilisez 61208 En tant que port.

Par exemple http: // 192.168.1.252: 61208 , dans notre LAN, affichera les informations du serveur Web de regards concernant le deuxième nœud du cluster. Le problème est que vous devrez utiliser différentes pages et adresses pour chaque nœud. Alors pourquoi ne pas créer une seule page Web qui affiche les quatre nœuds à la fois en utilisant une page HTML simple avec Iframes?

L'exécution de regards en mode serveur Web vous permet de visualiser les informations de cluster à l'aide d'un navigateur Web.

Création d'une station de surveillance de la page Web des regards

Installez Apache sur le premier nœud du cluster. Nous utiliserons RPI1 Comme le nœud qui affiche ce fichier HTML. Vous pouvez faire ça avec

$ sudo apt install apache2 

La racine du serveur Web Apache est le / var / www / html / dossier. Créez un nouveau fichier ici et nommez-le indice.html:

# touch / var / www / html / index.html 

Modifiez maintenant ce fichier:

# nano / var / www / html / index.html 

Ajoutez ceci à son contenu:

dehors.println (""); dehors.println (""); dehors.println (""); dehors.println ("

Mes informations de cluster "

"); dehors.println ("
"); dehors.println (""); dehors.println (""); dehors.println (""); dehors.println (""); dehors.println (""); dehors.println ("
"); dehors.println (""); dehors.println ("");

Enregistrer le fichier avec ctrl + x. Comme vous pouvez le voir, nous utilisons des noms d'hôtes au lieu de IPS et du port de serveur de regards - 61208. Il y a quatre HTML Iframes, un pour chaque nœud de cluster. Changer la hauteur et largeur valeurs afin que les iframes remplissent votre écran.



Maintenant juste une chose à faire. Ajoutez la ligne suivante à chacun / etc / rc.local Fichier de vos nœuds de cluster:

Glances -w --theme-blanc --process-short-name - hide-kernel-threads --fs-libre-espace --disable-irq --raid-raid ---disable-folder --disable-swap 

Cela indique aux regards de commencer à démarrer en tant que serveur Web, d'utiliser le thème blanc, de couper la largeur de la liste de processus qu'il affiche et de masquer quelques éléments dont un Raspberry Pi n'a pas besoin ou que vous utiliseriez rarement: des informations RAID, des informations IRQ, certaines Informations sur le dossier, Swap et Informations sur le fil du noyau. C'est ainsi qu'après avoir redémarré votre cluster et accéder à l'adresse du premier nœud via un navigateur Web, le Iframes Serait en mesure de s'adapter à toutes les informations pertinentes dans leurs fenêtres respectives.

Vous pouvez en outre décider comment les pages Web WebServer Glances affichent des informations en modifiant leur fichier CSS respectif situé à / usr / lib / python3 / dist-packages / regards / sorties / statique / public / css / style.CSS. Taille de police, type de police, couleurs - tout peut être personnalisé ici pour rendre la page Web d'informations en cluster plus jolie.

Conclusion

Les regards sont un excellent moyen d'obtenir des informations pertinentes de votre cluster. Si vous utilisez le Iframe Méthode de la page Web Vous pouvez visiter la page d'informations du cluster à tout moment et voir comment tous les nœuds fonctionnent dans une fenêtre de navigateur. Ou vous pouvez utiliser le ncurses Interface dans un écran de terminal pour afficher les mêmes informations. Les regards sont hautement personnalisables et très utiles lorsque vous utilisez un cluster, que ce soit un petit fabriqué à partir de Raspberry Pi.

annexe

Il n'y a pas de limites. Dans le cas où le cluster Raspberry Pi Raspberry PI n'est pas en place, vous pouvez toujours ajouter plus de nœuds à tout moment.

2.2 écran TFT pourrait éventuellement ajouter une autre dimension à votre cluster Raspberry Pi. À ce stade, on pourrait commencer à réfléchir à la façon d'ajouter une sorte de base solide pour s'assurer que le cluster Raspberry Pi de 8 nœuds ne perd pas l'équilibre. «Êtes-vous là Hal?»- 2001: A Space Odyssey 8 nœuds Raspberry Pi Cluster

Tutoriels Linux connexes:

  • Obtenez la température du CPU sur Linux
  • Comment créer un cluster Kubernetes
  • Ubuntu 20.04 Surveillance du système avec des widgets conky
  • Ubuntu 22.04 Surveillance du système avec des widgets conky
  • Comment installer Kubernetes sur Ubuntu 20.04 Focal Fossa Linux
  • Meilleur outil de surveillance du système pour Linux
  • Comment installer Kubernetes sur Ubuntu 22.04 Jammy Jellyfish…
  • Manipulation de Big Data pour le plaisir et le profit Partie 1
  • Choses à installer sur Ubuntu 20.04
  • Manipulation de Big Data pour le plaisir et le profit Partie 2