Есть много способов сделать это - использовать цикл for
в оболочке + ssh
, использовать pssh и т. Д. Вам просто нужно помнить, что лучше выполнить повторный перезапуск отдельного пользователя.Узлы Кассандры, поэтому вам нужно подождать, пока Кассандра снова запустится.Что-то вроде:
for host in `cat your-host-list.txt`; do
ssh user@${host} 'sudo service cassandra stop && your_update_command && sudo service cassandra start
done
или немного проще с pssh
:
pssh -l user -h your-host-list.txt -p 1 -t 0 'sudo service cassandra stop && your_update_command && sudo service cassandra start
-p 1
предписывает выполнять только одну команду параллельно t 0
поручает дождаться исполнения без таймаута