Мне интересно, будет ли какая-нибудь помощь, если какие-то инструменты, которые выполняют мониторинг файловой системы (например, inotify-tools), будут изменены для мониторинга / отправки отчетов через ssh. Поможет ли системным администраторам сделать что-то вроде inotify-watch 192.168.0.33:/home/deploy/script
? Вероятно, контролируемые серверы должны выполнять какое-то предварительное условие, но возможно ли это?
Вы думали о мунине? http://munin.projects.linpro.no/
Обычный метод работы - программа munin-node прослушивает удаленные машины. Периодически программа мониторинга munin будет подключаться к узлам для сбора данных; он может даже сделать это через туннель SSH. (Это в FAQ, я не могу вставить две ссылки, потому что у меня слишком мало репутации).
Munin по умолчанию может отслеживать широкий спектр статистических данных, включая мониторинг файловой системы. Кроме того, легко написать свои собственные плагины для munin-node, чтобы собирать нужные данные.
Я должен быть честным, это кажется неправильным способом работы.
Прежде всего, невозможно узнать, поддерживает ли удаленный компьютер inotify.
Во-вторых, кажется, что нужно приложить много усилий, чтобы объединить то, что традиционно представляет собой обобщенное решение из двух частей, в единое конкретное решение. Мониторинг и отчетность на удаленных машинах редко лучше всего выполнять с помощью ssh. Когда вам нужен этот уровень информации об удаленном хосте, вы обычно хотите разместить программный агент на удаленном хосте, который может выполнять мониторинг, а затем запустить систему мониторинга в другом поле, чтобы опросить агента (или получить отчет агента. назад).
Если вы хотите добавить эту возможность в коробку без установки дополнительного агента, логичным выбором будет SNMP (многие / большинство хостов поддерживают SNMP из коробки или имеют пакет SNMP, поставляемый поставщиком). В качестве альтернативы, большинство систем мониторинга на основе агентов, таких как Nagios, BigBrother / Hobbit / BigSister, Munin и т. Д., Предлагают возможность определять свои собственные плагины. Создать подключаемый модуль на основе inotify не так уж и сложно.
Если вы не хотите использовать полноценную систему мониторинга для мониторинга удаленного блока, я бы использовал что-то вроде func, который обеспечивает лучшую основу для этого, чем ssh.
Вы можете посмотреть на включение аудита файлов, что заставляет систему записывать файловые события. Он довольно гибкий и не требует постоянного подключения. Аудит можно найти с помощью инструмента командной строки, auditctl (8), так что вам не нужно пробираться сквозь горы посторонних данных. Еще один бонус - вы получаете запись учетных записей пользователей, идентификаторов процессов и т. Д.
Что касается удаленного мониторинга, вы можете либо сделать так, чтобы локальный сервер выполнил действие за вас и отправил данные, либо вы можете запустить удаленную команду через ssh, в зависимости от того, что лучше всего соответствует вашим потребностям.
Да, любые дополнительные способы мониторинга систем могут помочь. Вы спрашиваете, потому что пишете обертку?
семья может быть то, что вы ищете. У него есть демон, который выполняет локальное обнаружение, и libfam, являющуюся библиотекой, с которой он может общаться, чтобы получать более независимое от платформы уведомление.
я хотел бы использовать любой инструмент вы хотите чтобы посмотреть доступ к файлу, а затем отправить его через аутентифицированный веб-API, тогда вы можете преобразовать / сохранить / отсортировать вещи в хорошем веб-интерфейсе