Фрилансеры предложат решение вашей задачи уже через несколько минут!

Публикация заказа на фриланс бирже не займет много времени.

9 лет назад
Дмитрий С.
31 год, Украина
11 лет в сервисе
Был онлайн 1 год назад
9 лет назад

Необходимо разработать скрипт мониторинга linux - серверов по ssh на php 5.
Основные требования – ооп подход, чистый код. Библиотека для работы с ssh имеется.

Как это должно работать?
Есть скрипт сбора данных серверов, который вызывается по крону фоново, предположим, раз в 15 минут, берет сервера из базы, собирает по ssh информацию.
Что касательно сбора данных – нужно знать консольные команды Linux, предположим, хотим получить аптайм:

$buffer = $ssh->exec_command(“uptime”);
получаем текстовый ответ
23:57:38 up 22:52, 1 user, load average: 0.46, 0.26, 0.14
Забираем аптайм (парсингом строки).

По аналогии вытягивается и всё остальное (состояние памяти, загруженность процессора, состояние служб).

Какие данные нужно собирать:
1. Загруженность процессора(если процессоров несколько то по каждому конкретно)
2. Состояние оперативной памяти(свободно\занято)
3. Службы и потребление ими памяти
4. Прослушивание определённых портов
5. Занятое и свободное дисковое пространство.
6. Информация по использованию swap
7. Uptime.


Вторая часть – непосредственно веб-морда.
Что должна уметь морда?

1. На главной странице отображаются списком сервера(хост, имя сервера, загруженность, свободная память, занятая память, время последней проверки, аптайм).
2. Просмотр данных по конкретному серверу при клике(полная информация, можно будет просматривать данные за определённый период времени, также, было бы здорово организовать графики загруженности и использования памяти при помощи плагина к jQuery)
3. Необходимо предусмотреть добавление служб и портов на определённый сервер(добавляется номер порта, «имя» порта для последующего его «прозвона»). Службы должны храниться в базе в виде отдельной таблицы-спика, чтобы при добавлении уже существующей, её можно было просто выбрать, если таковой нет, то добавляем службу в список)
4. Построение табличных отчётов(выбираем параметры и период времени, генерим отчёт).
5. Добавление серверов в систему.
6. Добавление администраторов системы (ролевой модели не будет, тупо администраторы и всё).
7. Предусмотреть две кнопки „Перезагрузка”, „Выключение” возле каждого сервера. Опять же выполняется вызовом $ssh- >exec_command(“shutdown –h now”);

Предпочтительно реализовать веб-морду на фреймворке Codeigniter;

В принципе, ничего сложного, креативный дизайн не нужен, всё должно быть просто.
Всегда готов все разъяснить по icq или скайп.
Жду Ваших предложений.

Нет заявок от фрилансеров

Другие заказы в категории «Веб-программирование»