Я играю с кластером для запуска некоторых нагрузочных тестов.Как я могу запустить команду на всех из них?Это прекрасно работает:
role :lt1, "root@184.106.65.194"
role :lt2, "root@184.106.70.52"
role :lt3, "root@184.106.69.138"
role :lt4, "root@184.106.70.42"
role :lt5, "root@184.106.70.90"
role :lt6, "root@184.106.98.158"
role :lt7, "root@184.106.70.89"
role :lt8, "root@184.106.70.58"
role :lt9, "root@184.106.64.187"
role :lt10, "root@184.106.97.57"
task :date, :roles => [:lt1] do
run "date"
end
Но в ту минуту, когда я пытаюсь изменить :roles
на [:lt1, :lt2]
, оно просто висит навсегда.
Я также попробовал почти то же самое с серверами с именованными адресами (example.something.com
), и это прекрасно работает.
Какой правильный способ сделать это и как мне избежать его зависания?
Когда я делаю только один:
* executing `date'
* executing "date"
servers: ["184.106.65.194"]
[root@184.106.65.194] executing command
** [out :: root@184.106.65.194] Wed Jan 26 19:56:16 UTC 2011
command finished
Когда я делаю два
* executing `date'
* executing "date"
servers: ["184.106.65.194", "184.106.70.52"]