Как контролировать удаленные серверы с помощью Zabbix в Ubuntu 16.04

Zabbix - это бесплатное корпоративное программное обеспечение с открытым исходным кодом, используемое для контроля доступности систем и сетевых компонентов. Zabbix может контролировать тысячи серверов, виртуальных машин или сетевых компонентов одновременно. Zabbix может отслеживать практически все, что связано с системой, такие как процессор, память, дисковое пространство и ввод-вывод, процессы, сеть, базы данных, виртуальные машины и веб-службы. Если доступ к IPMI предоставляется Zabbix, он также может контролировать аппаратное обеспечение, такое как температура, напряжение и так далее.

Предпосылки

В этом руководстве мы будем использовать 192.0.2.1в качестве общедоступного IP-адреса сервера Zabbix и в 192.0.2.2качестве общедоступ��ого IP-адреса хоста Zabbix, который мы будем контролировать удаленно. Обязательно замените все вхождения примера IP-адреса фактическими общедоступными IP-адресами.

Обновите свою базовую систему, используя руководство Как обновить Ubuntu 16.04 . После обновления системы перейдите к установке зависимостей.

Установите Apache и PHP

После установки веб-сайта Zabbix он автоматически создает конфигурацию для веб-сервера Apache.

Установите веб-сервер Apache для обслуживания внешнего интерфейса Zabbix или веб-интерфейса.

sudo apt -y install apache2

Запустите веб-сервер Apache и включите его при загрузке автоматически.

sudo systemctl start apache2
sudo systemctl enable apache2

Установите последнюю версию PHP вместе с модулями, необходимыми Zabbix.

sudo apt -y install php php7.0 libapache2-mod-php7.0 php7.0-cli php7.0-gd php7.0-bcmath php7.0-ctype php7.0-xml php7.0-sockets php7.0-mbstring php7.0-gettext php7.0-ldap php7.0-pgsql

Установите и настройте PostgreSQL

PostgreSQL - это объектно-реляционная система баз данных. Добавьте репозиторий PostgreSQL в вашу систему.

echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list

Импортируйте ключ подписи репозитория и обновите списки пакетов.

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt update

Установите сервер базы данных PostgreSQL.

sudo apt -y install postgresql postgresql-contrib

Запустите сервер PostgreSQL и включите его автоматический запуск во время загрузки.

sudo systemctl start postgresql
sudo systemctl enable postgresql

Измените пароль для пользователя PostgreSQL по умолчанию.

sudo passwd postgres

Войдите в систему как пользователь PostgreSQL.

sudo su - postgres

Создайте нового пользователя PostgreSQL для Zabbix.

createuser zabbix

PostgreSQL предоставляет psqlоболочку для выполнения запросов к базе данных. Переключитесь на оболочку PostgreSQL, запустив.

psql

Установите пароль для вновь созданного пользователя базы данных для базы данных Zabbix.

ALTER USER zabbix WITH ENCRYPTED password 'StrongPassword';

Создайте новую базу данных для Zabbix.

CREATE DATABASE zabbix OWNER zabbix;

Выход из psqlоболочки.

\q

Переключиться на sudoпользователя от текущего postgresпользователя.

exit

Установить Zabbix

Zabbix предоставляет установочные файлы для Ubuntu, которые можно установить непосредственно из репозитория Zabbix. Добавьте репозиторий Zabbix в вашу систему.

wget http://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+xenial_all.deb
sudo dpkg -i zabbix-release_3.4-1+xenial_all.deb
sudo apt update

Установите Zabbix serverи Zabbix web.

sudo apt -y install zabbix-server-pgsql zabbix-frontend-php

Импортируйте базу данных PostgreSQL, которая поставляется вместе с приложением.

zcat /usr/share/doc/zabbix-server-pgsql/create.sql.gz | sudo -H -u zabbix bash -c 'psql -U zabbix zabbix'

Вы должны увидеть что-то похожее на следующее в конце вывода.

...
INSERT 0 1
INSERT 0 1
COMMIT

Откройте файл конфигурации Zabbix, чтобы обновить детали базы данных.

sudo nano /etc/zabbix/zabbix_server.conf

Найдите следующие строки и обновите значения в соответствии с вашей конфигурацией базы данных. Вам нужно будет раскомментировать DBHostи DBPortлинии.

DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=StrongPassword
DBPort=5432

Zabbix автоматически устанавливает файл виртуального хоста для Apache. Нам нужно будет настроить виртуальный хост для обновления часового пояса.

sudo nano /etc/apache2/conf-available/zabbix.conf

Найдите следующие строки.

<IfModule mod_php7.c>
...
#php_value date.timezone Europe/Riga

Обновите линии в соответствии с вашим часовым поясом, как показано ниже.

<IfModule mod_php7.c>
...
php_value date.timezone Asia/Kolkata

Теперь перезапустите Apache, чтобы применить эти изменения в конфигурации.

sudo systemctl restart apache2

Кроме того, запустите Zabbix сервер и включите его автоматический запуск во время загрузки.

sudo systemctl start zabbix-server
sudo systemctl enable zabbix-server

У вас должен быть запущен и работает Zabbix сервер. Вы можете проверить статус процесса.

sudo systemctl status zabbix-server

Чтобы получить доступ к панели администрирования, вы можете открыть http://192.0.2.1/zabbixс помощью вашего любимого браузера. Вы увидите приветственное сообщение. На следующем интерфейсе должны быть выполнены все предпосылки. Следуйте инструкциям на странице установщика для установки программного обеспечения. После установки программного обеспечения войдите в систему, используя имя пользователя Adminи пароль zabbix. Zabbix теперь установлен и готов к сбору данных от агента Zabbix.

Настройте агента на сервере

Для мониторинга сервера, на котором установлен Zabbix, вы можете настроить агент на сервере. Агент Zabbix будет собирать данные о событиях с сервера Linux, чтобы отправить их на сервер Zabbix. По умолчанию номер порта 10050используется для отправки событий и данных на сервер.

Установите Zabbix агент.

sudo apt -y install zabbix-agent

Запустите агент и включите его автоматический запуск во время загрузки.

sudo systemctl start zabbix-agent
sudo systemctl enable zabbix-agent

Поскольку связь между агентом Zabbix и сервером Zabbix осуществляется локально, нет необходимости настраивать шифрование.

Прежде чем Zabbix сервер сможет получать какие-либо данные, вам необходимо включить хост. Войдите в панель администрирования веб-сервера Zabbix и перейдите по ссылке Configuration >> Host. Вы увидите отключенную запись хоста Zabbix сервера. Выберите запись и нажмите Enableкнопку, чтобы включить мониторинг приложения сервера Zabbix и базовой системы, на которой установлен сервер Zabbix.

Как контролировать удаленные серверы с помощью Zabbix в Ubuntu 16.04

Агент установки на удаленных машинах Linux

Существует три метода, с помощью которых удаленный агент Zabbix может отправлять события на Zabbix сервер. Первый способ заключается в использовании незашифрованного соединения, а второй - в использовании защищенного предварительного общего ключа. Третий и наиболее безопасный способ - это шифрование передачи с использованием сертификатов RSA.

Прежде чем мы приступим к установке и настройке агента Zabbix на удаленной машине, нам нужно сгенерировать сертификаты в системе Zabbix-сервера. В этом уроке мы будем использовать самозаверяющие сертификаты.

Выполните следующие команды на Zabbix сервере как sudoпользователь .

Создайте новый каталог для хранения ключей Zabbix и сгенерируйте закрытый ключ для CA.

mkdir ~/zabbix-keys && cd ~/zabbix-keys
openssl genrsa -aes256 -out zabbix-ca.key 4096

Он попросит вас ввести ключевую фразу для защиты закрытого ключа. После создания закрытого ключа перейдите к созданию сертификата для CA.

openssl req -x509 -new -key zabbix-ca.key -sha256 -days 3560 -out zabbix-ca.crt

Укажите парольную фразу закрытого ключа. Он попросит у вас несколько деталей о вашей стране, штате, организации. Предоставьте детали соответственно.

user@vultr:~/zabbix-keys$ openssl req -x509 -new -key zabbix-ca.key -sha256 -days 3560 -out zabbix-ca.crt
Enter pass phrase for zabbix-ca.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:IN
State or Province Name (full name) [Some-State]:My State
Locality Name (eg, city) []:My City
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:My Unit
Common Name (e.g. server FQDN or YOUR name) []:Zabbix CA
Email Address []:[email protected]

Мы успешно сгенерировали сертификат CA. Сгенерируйте закрытый ключ и CSR для Zabbix сервера.

openssl genrsa -out zabbix-server.key 2048
openssl req -new -key zabbix-server.key -out zabbix-server.csr

Пожалуйста, не предоставляйте парольную фразу для шифрования закрытого ключа при выполнении вышеуказанной команды. Используя CSR, создайте сертификат для Zabbix сервера.

openssl x509 -req -in zabbix-server.csr -CA zabbix-ca.crt -CAkey zabbix-ca.key -CAcreateserial -out zabbix-server.crt -days 1825 -sha256

Аналогично, сгенерируйте закрытый ключ и CSR для хоста или агента Zabbix.

openssl genrsa -out zabbix-host1.key 2048
openssl req -new -key zabbix-host1.key -out zabbix-host1.csr

Теперь создайте сертификат.

openssl x509 -req -in zabbix-host1.csr -CA zabbix-ca.crt -CAkey zabbix-ca.key -CAcreateserial -out zabbix-host1.crt -days 1460 -sha256

Скопируйте сертификаты в каталог конфигурации Zabbix.

sudo mkdir /etc/zabbix/keys
sudo cp zabbix-ca.* zabbix-server.* /etc/zabbix/keys

Предоставьте право собственности на сертификаты пользователю Zabbix.

sudo chown -R zabbix: /etc/zabbix/keys

Откройте файл конфигурации Zabbix сервера, чтобы обновить путь сертификатов.

sudo nano /etc/zabbix/zabbix_server.conf

Найдите эти строки в файле конфигурации и измените их, как показано ниже.

TLSCAFile=/etc/zabbix/keys/zabbix-ca.crt
TLSCertFile=/etc/zabbix/keys/zabbix-server.crt
TLSKeyFile=/etc/zabbix/keys/zabbix-server.key

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

sudo systemctl restart zabbix-server

Скопируйте сертификаты с помощью scpкоманды на хост-компьютер, который вы хотите отслеживать.

cd ~/zabbix-keys
scp zabbix-ca.crt zabbix-host1.* [email protected]:~

Убедитесь, что вы заменили 192.0.2.2фактическим IP-адресом удаленного хоста, на который вы хотите установить Zabbix агент.

Установите Zabbix Host

Теперь, когда мы скопировали сертификаты в хост-систему, мы готовы установить Zabbix агент.

С этого момента все команды должны выполняться на хосте, который вы хотите отслеживать .

Добавьте репозиторий Zabbix в систему.

wget http://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+xenial_all.deb
sudo dpkg -i zabbix-release_3.4-1+xenial_all.deb
sudo apt update

Установите Zabbix агент в систему.

sudo apt -y install zabbix-agent

Для настройки и настройки Zabbix перейдите к шагу Install Zabbix Host руководства Zabbix для CentOS 7 .



Leave a Comment

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

6 невероятных фактов о Nintendo Switch

6 невероятных фактов о Nintendo Switch

Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.

Технические обещания, которые все еще не выполнены

Технические обещания, которые все еще не выполнены

Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.

Функциональные возможности уровней эталонной архитектуры больших данных

Функциональные возможности уровней эталонной архитектуры больших данных

Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.

Как ИИ может вывести автоматизацию процессов на новый уровень?

Как ИИ может вывести автоматизацию процессов на новый уровень?

Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.

Телемедицина и удаленное здравоохранение: будущее уже здесь

Телемедицина и удаленное здравоохранение: будущее уже здесь

Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше