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

Статус сервера в реальном времени на другом сервере Linux

Я хочу создать какой-то читаемый файл (канал?) На двух моих веб-серверах, который показывает идентификатор сервера mysql с наименьшей нагрузкой для использования в балансировке нагрузки, а также в некоторых других приложениях. Я также хочу, чтобы это было в режиме реального времени, а не просто что-то часто обновляющееся через задание cron.

С чего мне начать?

Написание собственной системы обнаружения атрибутов сервера потребует больше работы, чем вы думаете. Рассмотрите возможность использования инструмента оркестровки, такого как Mcollective с Facter, для выполнения этой задачи.

например, установите Facter и Mcollective и настройте центральную очередь. Убедитесь, что вы можете выполнить «mco ping» и увидеть все свои серверы.

Затем, чтобы узнать факты с серверов, вы можете:

mco facts --json uptime

Что возвращает текущее время безотказной работы (факт) со всех моих серверов. Вы можете написать собственный факт, чтобы обнаружить все, что вам нужно на ваших серверах, например, количество текущих подключений mysql, загрузку процессора и т. Д.

Один из способов сделать это - вы можете выполнить задание cron 'top', которое должно работать, и отправить его в текстовый файл (или файл HTML в каталоге веб-сервера)

команда:

top -n 1 -b | head -n 10 > index.html

запустить n = 1 итерацию top, head дает n = 10 строк (вам не обязательно иметь команду head, мне нравится элемент управления)

обязательно используйте точные пути для команд, чтобы задание cron работало правильно

-

образцы результатов:

cat index.html

наверх - 15:24:49 вверх 121 день, 6:13, 1 пользователь, средняя загрузка: 0,03, 0,18, 0,21 Задачи: всего 62, 1 запущен, 61 спящий, 0 остановлен, 0 зомби ЦП: 0,2% us , 0,0% sy, 0,0% ni, 99,8% id, 0,0% wa, 0,0% hi, 0,0% si, 0,0% st Mem: 8388608k всего, 6909524k использовано, 1479084k свободно, 0k буферов Swap: всего 2097152k, использовано 95012k, 2002140k бесплатно, 6143764k кешировано

PID ПОЛЬЗОВАТЕЛЬ PR NI VIRT RES SHR S% CPU% MEM TIME + COMMAND
1 корень 20 0 19232 196 88 S 0,0 0,0 0: 02,17 инициализации
2 корень 20 0 0 0 0 S 0,0 0,0 0: 00.00 kthreadd / 109402
3 корень 20 0 0 0 0 S 0,0 0,0 0: 00.00 khelper / 109402