Назад | Перейти на главную страницу

Как я могу получить возможность сообщать, работает ли демон в Linux?

Как я могу получить возможность сообщать, работает ли демон в Linux? Я не собираюсь выполнять какие-либо действия на основании результатов. Мне просто нужен список серверов с запущенным Apache. Я использую RHEL 6 и 7. Итак, RHEL 7 использует systemd, а RHEL 6 использует старые сценарии инициализации.

Ансибл service_facts модуль, вероятно, хорошая ставка.

IIRC назван сервис Apache httpd на всех основных выпусках RHEL, поэтому вам не нужно делать зависимые от выпуска игры, а модуль Ansible позаботится о различиях systemd и upstart.

Что-то вроде приведенного ниже примера должно помочь (обратите внимание, что есть разница в проверке того, включена ли служба или действительно работает. Служба, которая в настоящее время не работает, потому что она не работает или была остановлена ​​администратором, но должна быть работает, потому что служба включена, или наоборот)

- name: Check for apache status
   service_facts:
- debug:
    var: ansible_facts.services.httpd.state

Лучше использовать какой-нибудь инструмент для мониторинга. Ansible - это config mgt. инструмент, основанный на действии, выполняемом на стороне сервера через ssh. Это непродуктивная идея.

Если это единственный вариант, вы можете использовать Ansible Tower -> с расписанием (например, cron) ->, которое можно использовать с уведомлением Slack / по электронной почте.

Вы можете использовать команду: /etc/init.d/httpd status с регистром, чтобы проверить вывод stdout, и если он соответствует условию, он может вызвать предупреждение. Пример:

- name: check http
  command: /etc/init.d/httpd status
  register: httpd_status
  failed_when: "'NOT' in httpd_status.stdout"
  changed_when: False
change НЕ with any other output that you see while checking status.

Ответ с использованием service_facts очень интересно, но вы также можете решить эту проблему с помощью реализации некоторых "custom_facts", которые могут возвращать настраиваемые значения.

Пользовательские факты - это скрипты, которые выполняются при сборе фактов и возвращают JSON-объект.