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
clush -a -B
clush -w lame[1-4] -B
clush -w lame[1-6] --diff dmidecode -s bios-version
--- lame[1-4] (4) +++ lame[5-6] (2) @@ -1 +1 @@ -I36 +I15
Exemple SosRepport
Génération du sosreport sur les cibles
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
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
cd sosreports/ # rename -nv '*' '' * rename '*' '' * rename '-' '' *
Nettoyage
clush -B -O ssh_options='-oStrictHostKeyChecking=no -oPort=2222' -l root --hostfile targets.lst rm -f /var/tmp/sosrepor*
clush -B --hostfile=hosts.lst
clush -B -O ssh_options='-oStrictHostKeyChecking=no -oPort=2222' -l admin --hostfile hosts.lst
mkdir ~/.config/clustershell/ cp /etc/clustershell/groups.conf ~/.config/clustershell/
~/.config/clustershell/groups.d/plop.yaml
plop: www: 'www[1-4]' db: 'db-alpha,db-beta'
clush -B -g plop:www clush -B -g plop:*
mussh -H list.txt -b -c 'uptime'
mussh -H list.txt -b -C script.sh
mussh -m 7 -H ~/dev/list.txt -b -c 'apt-get -s dist-upgrade | grep "^[[:digit:]]\+ upgraded"'
sudo apt-get install clusterssh
cssh c2-bl1 c2-bl2 c2-bl3 c2-bl4 c2-bl5 c2-bl6
read 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