Как установить и настроить ‘Collectd’ и ‘Collectd-Web’ для мониторинга ресурсов сервера в Linux

Collectd-web – это веб-инструмент мониторинга на основе RRDtool (Round-Robin Database Tool), который интерпретирует и графически отображает данные, собранные службой Collectd на системах Linux.

Collectd по умолчанию поставляется с огромным набором доступных плагинов в свой конфигурационный файл по умолчанию, некоторые из них, по умолчанию, уже активированы после установки программного обеспечения.

Сценарии Collectd-web CGI, которые интерпретируют и генерируют статистическую html-страницу, могут быть просто выполнены шлюзом Apache CGI с минимальными настройками, требуемыми на стороне веб-сервера Apache.

Однако графический веб-интерфейс с сгенерированной статистикой также может быть выполнен автономным веб-сервером, предлагаемым сценарием Python CGIHTTPServer, который поставляется предустановленным с основным хранилищем Git.

Этот учебник охватит процесс установки службы Collectd и интерфейса Collectd-web на системах на основе RHEL/CentOS/Fedora и Ubuntu/Debian с минимальными настройками, необходимыми для запуска служб и активации плагина службы Collectd.

Пожалуйста, ознакомьтесь с следующими статьями серии collectd.

Part 1: Install and Configure ‘Collectd’ and ‘Collectd-Web’ to Monitor Linux Resources

Шаг 1: – Установить службу Collectd

1. В основном задачей демона Collectd является сбор и хранение статистических данных о системе, на которой он работает. Пакет Collectd можно загрузить и установить из репозиториев по умолчанию, основанных на Debian, выполнив следующую команду:

На Ubuntu/Debian
# apt-get install collectd			[On Debian based Systems]
Install Collectd on Debian/Ubuntu
На 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
Install Collectd on CentOS/RHEL/Fedora

Примечание: Для пользователей 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. Прежде чем начать импорт репозитория Git Collectd-web, сначала убедитесь, что установлен пакет программного обеспечения Git и следующие необходимые зависимости на вашем компьютере:

----------------- On Debian / Ubuntu systems -----------------
# apt-get install git
# apt-get install librrds-perl libjson-perl libhtml-parser-perl
Install Git on Debian/Ubuntu
----------------- On RedHat/CentOS/Fedora based systems -----------------
# yum install git
# yum install rrdtool rrdtool-devel rrdtool-perl perl-HTML-Parser perl-JSON
Install Git and Dependencies

Шаг 3: Импорт репозитория Git Collectd-Web и изменение автономного сервера Python

4. На следующем шаге выберите и измените каталог на системный путь из иерархии дерева Linux, куда вы хотите импортировать проект Git (вы можете использовать путь /usr/local/), затем выполните следующую команду для клонирования репозитория Git Collectd-web:

# cd /usr/local/
# git clone https://github.com/httpdss/collectd-web.git
Git Clone Collectd-Web

5. После импорта репозитория Git на вашу систему, перейдите в каталог collectd-web и выведите его содержимое, чтобы определить скрипт Python сервера (runserver.py), который будет изменен на следующем шаге. Также добавьте права выполнения для следующего CGI-скрипта: graphdefs.cgi.

# cd collectd-web/
# ls
# chmod +x cgi-bin/graphdefs.cgi
Set Execute Permission

6. Стандальный Python серверный скрипт Collectd-web настроен по умолчанию на запуск и привязку только к адресу loopback (127.0.0.1).

Для доступа к интерфейсу Collectd-web из удаленного браузера вам необходимо отредактировать скрипт runserver.py и изменить IP-адрес 127.0.1.1 на 0.0.0.0, чтобы привязаться ко всем IP-адресам сетевых интерфейсов.

Если вы хотите привязаться только к определенному интерфейсу, то используйте IP-адрес этого интерфейса (не рекомендуется использовать эту опцию, если IP-адрес сетевого интерфейса динамически выделяется DHCP-сервером). Используйте ниже приведенный скриншот в качестве отрывка о том, как должен выглядеть окончательный скрипт runserver.py:

# nano runserver.py
Configure Collect-web

Если вы хотите использовать другой сетевой порт, чем 8888, измените значение переменной PORT.

Шаг 4: Запустите Python CGI Standalone Server и просмотрите интерфейс Collectd-web

7. После того, как вы изменили привязку IP-адреса в автономном серверном скрипте Python, запустите сервер в фоновом режиме, выполнив следующую команду:

# ./runserver.py &

По желанию, в качестве альтернативного метода вы можете вызвать интерпретатор Python для запуска сервера:

# python runserver.py &
Start Collect-Web Server

Source:
https://www.tecmint.com/install-collectd-and-collectd-web-to-monitor-server-resources-in-linux/