Я ищу способ удаленного сбора данных из различных облачных инстансов (EC2, Rackpsace). API Rackspace не позволяет собирать показатели производительности сервера (например, среднюю загрузку, использование процессора, память) через свой API, иначе об этом никогда бы не спросили.
Я начал рассматривать такие решения, как Capistrano или Mcollective (я также рассматривал collectd), но я не уверен, какое из них лучше всего подойдет для моего приложения. Я пытаюсь избежать использования ключей ssh для отслеживания тенденций (я не хочу постоянно входить в систему для сбора этих показателей). Сценарий, который я пишу, представляет собой сценарий Ruby, который перезагружает облачный сервер, если его средняя загрузка превышает определенный количество. Поскольку эти провайдеры не предоставляют эти метрики через свой API, я ищу способ собрать их самостоятельно, и я новичок в сообществе Ruby, поэтому после брифинга по документации для всех этих инструментов я до сих пор не в состоянии получить представление о том, какой фреймворк будет работать лучше, или есть ли другие альтернативы.
Похоже, что Capistrano больше подходит для использования в качестве инструмента развертывания, хотя он может выполнять удаленные задачи, поэтому после того, как я прочитал документацию по нему, он практически не подходил для целей моего сценария.
MCollective выглядит действительно привлекательно для того, что я пытаюсь сделать, но, похоже, для этой цели мне придется написать свой собственный плагин в стиле RPC.
Я также рассматривал возможность подключения к какой-либо более крупной системе мониторинга, такой как Nagios, Munin, Zenoss, Hyperic и т. д., но я бы предпочел не устанавливать какую-либо большую систему массового мониторинга, когда все, что я хочу собрать, — это несколько простых показателей.