Как сделать, чтобы сайт работал стабильно и не "отлетал". Часть 1: настройка мониторинга ресурсов

Zabbix_logo

Популярность VPS растет: более 30% компаний (в их числе Shopify, Dropbox и Reddit), держат всю инфраструктуру на них. Однако администраторы VPS сталкиваются с серьезными проблемами, связанными с производительностью, безопасностью и управляемостью. Часто эти проблемы возникают из-за неправильных настроек, что может привести к перегрузкам сервера и утечкам данных.

 

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

В серии статей расскажем про то, как настроить и управлять VPS правильно: чтобы он работал стабильно и “летал”. Дадим полный набор инструментов для вебмастера.

Начнем с базы — мониторинга ресурсов. В первых двух статьях расскажем, как установить Zabbix, настроить и пользоваться им. В нем будем отслеживать все, что касается работы сервера. Zabbix подходит, потому что это бесплатное ПО, которое даст все, что нужно, чтобы следить за сервером в реальном времени.

Мониторинг ресурсов

Первое, что следует сделать, — настроить мониторинг ресурсов. Мониторинг CPU, памяти и места на диске выявит проблемы с производительностью. Zabbix покажет все что надо. Вы будете реагировать на проблемы, избегать простоя и поддерживать работоспособность сервера.

Zabbix

Так выглядит интерфейс Zabbix. Эта программа станет вашим набором бортовых датчиков.

Мониторинг VPS с Zabbix

Сейчас расскажем, как установить и работать с Zabbix на VPS.

По умолчанию все команды приводим для Ubuntu, как одной из популярнейших ОС для VPS. Перед установкой нужно включить SSH. Вот как это сделать на Ubuntu/Debian. Пропишите в терминале:
sudo apt install openssh-server

Zabbix установка

Запустите службу SSH:
sudo systemctl start ssh

Убедитесь, что SSH включён при загрузке:
sudo systemctl enable ssh

Zabbix настройка

После включения вы сможете подключаться к VPS с помощью SSH-клиента, например:

ssh username@ip_address

Теперь можно перейти к установке Zabbix.

Устанавливаем Zabbix

Загрузим и установим Zabbix на VPS. Для этого пропишем следующие команды в терминале:

sudo wget https://repo.zabbix.com/zabbix/6.3/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.3-3%2Bubuntu22.04_all.deb

Zabbix установить

Эта команда загружает Zabbix для установки на сервер с правами суперпользователя

Далее продолжим вводить одну команду за другой:

sudo dpkg -i zabbix-release_6.3-3+ubuntu22.04_all.deb

Zabbix настроить

sudo apt update

Команда sudo apt update обновляет информацию о доступных пакетах и их версиях в системе.

Zabbix на впс

sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent

Этой командой мы устанавливаем следующие компоненты:

  1. Zabbix Server с поддержкой MySQL для хранения данных.
  2. Zabbix Frontend на PHP для веб-интерфейса.
  3. Конфигурация для Apache веб-сервера.
  4. SQL-скрипты, необходимые для инициализации базы данных Zabbix.
  5. Zabbix Agent для мониторинга локальной системы.

Теперь установим SQL, если у вас его нет.

Установим MySQL

Введите в терминале:

sudo apt-get install mysql-server

mysql

Затем:

sudo systemctl start mysql

Откройте MySQL:
sudo mysql

mysql настройка

Создадим базу данных Zabbix

Создадим базу данных с помощью последовательности команд:
create database zabbix character set utf8mb4 collate utf8mb4_bin;

Zabbix база данных

Создайте пользователя Zabbix (не забудьте заменить 'password' на желаемый пароль):
create user zabbix@localhost identified by 'password';

Zabbix

Предоставьте привилегии пользователю Zabbix на базу данных:
grant all privileges on zabbix.* to zabbix@localhost;

Zabbix настройка базы данных

Установите глобальную переменную (это необходимо для некоторых функций):
set global log_bin_trust_function_creators = 1;

настройка базы данных

Выйдите из MySQL:
quit;

Настроим базу данных

Далее распакуем файл server.sql.gz, который содержит SQL-скрипт для настройки базы данных Zabbix и выполняет его в MySQL. В результате создадим таблицы и начальные данные. Это нужно для правильной работы Zabbix. Не забудьте

sudo zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix

база данных на Zabbix

Здесь введите пароль, который установили ранее.

После импорта схемы базы данных Zabbix отключим опцию log_bin_trust_function_creators.

sudo mysql

Далее:

set global log_bin_trust_function_creators = 0;

И:

quit;

Эта команда завершает сеанс работы с MySQL.

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

Отредактируем конфигурацию базы данных

Введем команду:

sudo vim /etc/zabbix/zabbix_server.conf

В файле найдем строку, которая отвечает за подключение к базе данных, и устанавливает пароль для пользователя базы данных Zabbix.

Вот эта эта строка: DBPassword=. После знака равенства нужно указать пароль, который установили для пользователя zabbix.

конфигурация базы данных

Далее командой systemctl restart zabbix-server zabbix-agent apache2 запустим Zabbix-сервер, Zabbix-агент и веб-сервер Apache.

Zabbix конфигурация базы данных

Далее введем команду systemctl enable zabbix-server zabbix-agent apache2

Zabbix пользователь

Вас будут просить ввести пароль на каждом шаге. Просто скопируйте и вставляйте его.

После перезагрузки системы Zabbix-сервер, Zabbix-агент и Apache будут автоматически запущены.

Входим в Zabbix и начинаем работать

Пришло время войти в интерфейс программы. Он доступен через браузер по адресу IP вашего сервера.zabbix.setup.php

Zabbix вход

Далее вам нужно по шагам пройти настройку: выбрать пароль, часовой пояс, язык, имя сервера. В конце вы увидите долгожданное сообщение:

Zabbix авторизация

Ура! Мы установили Zabbix. Теперь можно заходить. Введите имя пользователя и пароль, которые установили ранее.

входим в Zabbix

И наконец-то мы там, где нужно, — в рабочей панели Zabbix.

Zabbix рабочая панель

Что показывает Zabbix?

  • Нагрузка на процессор (CPU). Это помогает увидеть, если сервер перегружен или какие-то приложения работают неэффективно.
  • Использование памяти. Можно узнать, сколько оперативной памяти используется и сколько доступно. Это важно, чтобы сервер не завис из-за нехватки ресурсов.
  • Дисковое пространство. Zabbix показывает, сколько места осталось на дисках.
  • Сетевой трафик. Можно отслеживать, сколько данных поступает и уходит с сервера. Это помогает выявить несанкционированные подключения и понять, как используются сетевые ресурсы.

Если ищете надежный VPS, стоит обратить внимание на LikeVPS. Этот сервис предлагает аренду виртуальных серверов, которые идеально подойдут для ваших нужд. Вам не нужно беспокоиться о производительности — у них отличные ресурсы и стабильное соединение.

Кроме того, поддержка LikeVPS работает 24/7, это значит, что в любой момент вы можете получить помощь по любым вопросам. Зачем рисковать своим бизнесом с менее надежными провайдерами, когда вы можете выбрать сервис, который заботится о вашем успехе?

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

С установкой разобрались. А вот о том, как пользоваться Zabbix, расскажем в следующей статье: настройка и мониторинг сервера с помощью Zabix.