Мы успешно управляем сотнями серверов RedHat Enterprise Linux с помощью Puppet. Один из интересных побочных эффектов заключается в том, что мы можем перейти в / var / lib / puppet / yaml /acts и посмотреть на вывод утилиты "facter" (часть Puppet).
Теперь мне хотелось бы такого же удобства для получения дополнительной информации, например, о том, какие службы запущены и работают или деактивированы, или о списке установленных пакетов. Я говорю не совсем о мониторинге, поскольку меня не столько интересует создание предупреждений или графиков по этому поводу, сколько о централизации информации для анализа.
Я вижу в этом две части:
сначала механизм для подключения центрального репозитория к клиентам. Я помню, что net-snmp уже предоставляет доступ к базе данных RPM, если это разрешено, я предполагаю, что это могло бы или могло быть сделано, чтобы открыть chkconfig.
во-вторых, инструмент для хранения указанной информации.
Какой инструмент может с этим помочь? Я ищу что-то, что хранит данные удобным образом, будь то SQL, YAML, XML или текстовые файлы с последовательным форматированием, и мне легко сказать, с кем поговорить.
Вы также можете оформить заказ mcollective, марионеточные лаборатории приняли его как официальный проект. Он выполняет оркестровку и позволяет запрашивать ваши системы в реальном времени.
Существуют различные слепки экрана и простой механизм плагинов, он упрощает специальные вопросы и использует RAL и facter марионетки, но доступны и другие плагины, и вы можете написать свои собственные. Скринкаст показывает это в действии.
Для установленных пакетов лучше всего использовать net-snmp.
Если вам нужен хороший интерфейс для марионеточных фактов, вы можете попробовать мастер. Версия git также имеет REST api, который вы можете использовать в скриптах.
Вы могли бы написать собственные факты марионеток и получить к ним доступ через мастера.