Outils pour utilisateurs

Outils du site


tech:cluster_shell_parallele

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
tech:cluster_shell_parallele [2025/11/11 17:00] Jean-Baptistetech:cluster_shell_parallele [2026/06/07 19:12] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
 +<!DOCTYPE markdown>
 +{{tag>Brouillon}}
 +
 +# Notes cluster shell parallèle
 +
 +* clustershell (clush)
 +* clusterssh (cssh)
 +* mussh
 +
 +
 +
 +
 +## clush
 +
 +~~~bash
 +apt-get install clustershell
 +# ou 
 +pip install --user ClusterShell
 +~~~
 +
 +`/etc/clustershell/groups`
 +~~~
 +all: host1 host2
 +~~~
 +
 +**-a** pour "all"\\
 +**-B** pour affichage groupé de STDOUT et STDERR si retour identique
 +
 +~~~bash
 +clush -a -B
 +~~~
 +
 +~~~bash
 +clush -w lame[1-4] -B
 +~~~
 +
 +~~~bash
 +clush -w lame[1-6] --diff dmidecode -s bios-version
 +~~~
 +
 +~~~
 +--- lame[1-4] (4)
 ++++ lame[5-6] (2)
 +@@ -1 +1 @@
 +-I36
 ++I15
 +~~~
 +
 +
 +### Clush copy
 +
 +Exemple SosRepport
 +
 +
 +### Exemple
 +
 +Génération du sosreport sur les cibles
 +~~~bash
 +clush -B -O ssh_options='-oStrictHostKeyChecking=no -oPort=2222' -l root --hostfile targets.lst 
 +sosreport -q --case-id 000000 --since 20230813000000 --batch
 +~~~
 +
 +Récupération des sosreports
 +~~~bash
 +mkdir sosreports
 +clush -B -O ssh_options='-oStrictHostKeyChecking=no -oPort=2222' -l root --hostfile targets.lst --rcopy '/var/tmp/sosreport-*.tar.xz' --dest sosreports/
 +clush -B -O ssh_options='-oStrictHostKeyChecking=no -oPort=2222' -l root --hostfile targets.lst --rcopy '/var/tmp/sosreport-*.tar.xz.sha256' --dest sosreports/
 +~~~
 +
 +Renommage
 +~~~bash
 +cd sosreports/
 +# rename -nv '*' ` *
 +rename '*' ` *
 +rename '-' ` *
 +~~~
 +
 +Nettoyage
 +~~~bash
 +clush -B -O ssh_options='-oStrictHostKeyChecking=no -oPort=2222' -l root --hostfile targets.lst
 +rm -f /var/tmp/sosrepor*
 +~~~
 +
 +
 +
 +
 +
 +
 +
 +### List
 +
 +~~~bash
 +clush -B --hostfile=hosts.lst
 +~~~
 +
 +~~~bash
 +clush -B -O ssh_options='-oStrictHostKeyChecking=no -oPort=2222' -l admin --hostfile hosts.lst
 +~~~
 +
 +
 +### Groupes
 +
 +~~~bash
 +mkdir ~/.config/clustershell/
 +cp /etc/clustershell/groups.conf ~/.config/clustershell/
 +~~~
 +
 +`~/.config/clustershell/groups.d/plop.yaml`
 +~~~yaml
 +plop:
 +    www: 'www[1-4]'
 +    db: 'db-alpha,db-beta'
 +~~~
 +
 +~~~bash
 +clush -B -g plop:www
 +clush -B -g plop:*
 +~~~
 +
 +
 +## mussh
 +
 +~~~bash
 +mussh -H list.txt -b -c 'uptime'
 +~~~
 +
 +~~~bash
 +mussh -H list.txt -b -C script.sh
 +~~~
 +
 +~~~bash
 +mussh -m 7 -H ~/dev/list.txt -b -c 'apt-get -s dist-upgrade | grep "^[[:digit:]]\+ upgraded"'
 +~~~
 +
 +
 +## ClusterSSH cssh
 +
 +~~~bash
 +sudo apt-get install clusterssh
 +~~~
 +
 +~~~bash
 +cssh c2-bl1 c2-bl2 c2-bl3 c2-bl4 c2-bl5 c2-bl6
 +~~~
 +
 +
 +## sshpass
 +
 +~~~bash
 +read -s SSHPASS ; export SSHPASS
 +
 +for ip in $(cat ip_all.lst) ; do sshpass -e ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=10 $ip /bin/true && echo $ip >> ip_ok.lst || echo $ip >> ip_nok.lst ;done
 +
 +for ip in $(cat ip_ok.lst) ; do sshpass -e ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=10 $ip grep 192.168.1.253 /etc/resolv.conf && echo $ip >> dns_ok.lst || echo $ip >> dns_nok.lst ;done
 +~~~
 +
  

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki