Как установить и настроить «Collectd» и «Collectd-Web» для мониторинга ресурсов сервера в Linux
Collectd-web — это инструмент веб-интерфейса для мониторинга, основанный на RRDtool (Round-Robin Ddatabase Инструмент), который интерпретирует и графически выводит данные, собранные службой Collectd в системах Linux.
Служба Collectd по умолчанию поставляется с огромной коллекцией доступных плагинов в файле конфигурации по умолчанию, причем некоторые из них по умолчанию уже активированы после установки пакета программного обеспечения.
Сценарии Collectd-web CGI, которые интерпретируют и генерируют графическую статистику html-страницы, могут быть просто выполнены с помощью шлюза Apache CGI с минимальными настройками, необходимыми на стороне веб-сервера Apache.
Однако графический веб-интерфейс со сгенерированной статистикой также может выполняться с помощью автономного веб-сервера, предлагаемого сценарием Python CGIHTTPServer, который предварительно установлен в основном репозитории Git. .
В этом руководстве описан процесс установки службы Collectd и интерфейса Collectd-web на RHEL/CentOS/Fedora и Ubuntu/Debian<. Системы на базе с минимальными настройками, необходимыми для запуска служб и включения подключаемого модуля службы Collectd.
Ознакомьтесь со следующими статьями серии collected.
Шаг 1: – Установите службу Collectd.
1. По сути, задача демона Collectd заключается в сборе и хранении статистики данных в системе, в которой он работает. Пакет Collectd можно загрузить и установить из репозиториев дистрибутива Debian по умолчанию, выполнив следующую команду:
В Ubuntu/Debian
apt-get install collectd [On Debian based Systems]
В RHEL/CentOS 6.x/5.x
В более старых системах на базе RedHat, таких как CentOS/Fedora, сначала необходимо включить репозиторий epel в вашей системе, а затем вы сможете установить пакет collectd. из репозитория epel.
yum install collectd
В RHEL/CentOS 7.x
В последней версии RHEL/CentOS 7.x вы можете установить и включить репозиторий epel из репозиториев yum по умолчанию, как показано ниже.
yum install epel-release
yum install collectd
Примечание. Пользователям Fedora не нужно включать какие-либо сторонние репозитории: достаточно просто yum получить пакетcollectd из репозиториев yum по умолчанию.
2. После установки пакета в вашей системе выполните приведенную ниже команду, чтобы запустить службу.
service collectd start [On Debian based Systems]
service collectd start [On RHEL/CentOS 6.x/5.x Systems]
systemctl start collectd.service [On RHEL/CentOS 7.x Systems]
Шаг 2. Установите Collectd-Web и зависимости
3. Прежде чем приступить к импорту репозитория Collectd-web Git, сначала необходимо убедиться, что установлен пакет программного обеспечения Git и следующие необходимые зависимости. на вашей машине:
----------------- On Debian / Ubuntu systems -----------------
apt-get install git
apt-get install librrds-perl libjson-perl libhtml-parser-perl
----------------- On RedHat/CentOS/Fedora based systems -----------------
yum install git
yum install rrdtool rrdtool-devel rrdtool-perl perl-HTML-Parser perl-JSON
Шаг 3. Импортируйте репозиторий Git Collectd-Web и измените автономный сервер Python
4. На следующем шаге выберите и измените каталог на системный путь из древовидной иерархии Linux, куда вы хотите импортировать проект Git (вы можете использовать /usr/local/
). путь), затем выполните следующую команду, чтобы клонировать репозиторий Collectd-web git:
cd /usr/local/
git clone https://github.com/httpdss/collectd-web.git
5. После того, как репозиторий Git будет импортирован в вашу систему, войдите в каталог collectd-web и перечислите его содержимое, чтобы идентифицировать серверный скрипт Python (runserver.py
), который будет изменен на следующем шаге. Кроме того, добавьте разрешения на выполнение следующему сценарию CGI: graphdefs.cgi
.
cd collectd-web/
ls
chmod +x cgi-bin/graphdefs.cgi
6. Collectd-web автономный серверный скрипт Python по умолчанию настроен на запуск и привязку только по обратному адресу (127.0.0.1).
Чтобы получить доступ к интерфейсу Collectd-web из удаленного браузера, вам необходимо отредактировать скрипт runserver.py
и изменить 127.0.1.1 IP. Адрес 0.0.0.0, чтобы привязать IP-адреса всех сетевых интерфейсов.
Если вы хотите выполнить привязку только к определенному интерфейсу, используйте IP-адрес этого интерфейса (не рекомендуется использовать эту опцию, если адрес вашего сетевого интерфейса динамически выделяется DHCP-сервером). Используйте снимок экрана ниже в качестве примера того, как должен выглядеть окончательный сценарий runserver.py
:
nano runserver.py
Если вы хотите использовать другой сетевой порт, кроме 8888, измените значение переменной PORT.
Шаг 4. Запустите автономный сервер Python CGI и просмотрите веб-интерфейс Collectd.
7. После того, как вы изменили привязку IP-адреса автономного сценария сервера Python, запустите сервер в фоновом режиме, выполнив следующую команду:
./runserver.py &
Необязательно, в качестве альтернативного метода вы можете вызвать интерпретатор Python для запуска сервера:
python runserver.py &