Zabbix установка и настройка RedHat , Centos
Заббикс (Zabbix) – это система мониторинга и управления IT-инфраструктурой, которая позволяет отслеживать параметры системы, таких как CPU, память, диск, сеть и т.п. для обнаружения проблем и предотвращения остановок оборудования.
Ниже приведены основные настройки Zabbix:
**1. Установка и конфигурация**
Для установки Zabbix можно использовать следующие команды:
“`bash
# Инициализация базы данных MySQL
mysql -uroot -p<пароль> < /usr/share/doc/zabbix-server_mysql/schema.sql
# Установка сервера Zabbix
yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-get
“`
**2. Настройка базовой конфигурации**
После установки необходимо настроить базовую конфигурацию Zabbix:
“`bash
# Создание файла конфигурации
echo “DBHost=localhost” >> /etc/zabbix/zabbix_server.conf
echo “DBName=zabbix” >> /etc/zabbix/zabbix_server.conf
echo “DBUser=zabbix” >> /etc/zabbix/zabbix_server.conf
echo “DBPassword=<пароль>” >> /etc/zabbix/zabbix_server.conf
“`
**3. Настройка доступа к веб-интерфейсу**
Чтобы получить доступ к веб-интерфейсу Zabbix, необходимо настроить пароль администратора:
“`bash
# Создание файла конфигурации веб-интерфейса
echo “DBPassword=<пароль>” >> /etc/zabbix/web.conf
“`
**4. Настройка агента**
Агент Zabbix необходим для сбора метрик с удаленного сервера:
“`bash
# Создание файла конфигурации агента
cat <<EOF > /etc/zabbix/zabbix_agentd.conf
Server=<адрес_сервера_zabbix>
Hostname=<имя_сервера>
EOF
# Перезагрузка сервиса агента
systemctl reload zabbix-agent
“`
**5. Настройка сбора метрик**
Для настройки сбора метрик необходимо указать в конфигурационном файле агента, какие параметры следует отслеживать:
“`bash
# Создание файла конфигурации агента для сбора метрик
cat <<EOF > /etc/zabbix/zabbix_agentd.conf
# Сбор метрики CPU
UserParameter=cpu.load[*],top -b -n 1 | awk ‘/Cpu\(s\)/ {print $2}’ | sed ‘s/,//’
UserParameter=cpu.idle[*],top -b -n 1 | awk ‘/Cpu\(s\)/ {print ($5/$2)*100}’
EOF
“`
**6. Настройка отправки метрик**
Для настройки отправки метрик необходимо указать в конфигурационном файле сервера Zabbix, какой формат отчетов следует использовать:
“`bash
# Создание файла конфигурации сервера Zabbix для отправки метрик
cat <<EOF > /etc/zabbix/zabbix_server.conf
EnableRemoteCommands=1
EOF
“`
**7. Настройка сбора и отправки метрик**
Для настройки сбора и отправки метрик необходимо указать в конфигурационном файле агента, какой интервал отслеживания следует использовать:
“`bash
# Создание файла конфигурации агента для сбора и отправки метрик
cat <<EOF > /etc/zabbix/zabbix_agentd.conf
Interval=30
EOF
“`
После настройки всех параметров необходимо перезагрузить сервисы Zabbix и агент:
“`bash
systemctl restart zabbix-server
systemctl restart zabbix-agent
“`
Теперь вы можете получить доступ к веб-интерфейсу Zabbix по адресу: <адрес_сервера_zabbix>:80.
Чтобы отслеживать метрики, необходимо создать сценарий:
“`bash
# Создание сценария для отслеживания метрик
cat <<EOF > /etc/zabbix/scripts/monitoring.sh
#!/bin/bash
# Проверка доступности сервера Zabbix
ping -c 1 <адрес_сервера_zabbix> &>/dev/null && echo “Сервер Zabbix доступен.” || echo “Сервер Zabbix не доступен.”
# Сбор метрики CPU
cpu_load=$(zabbix_get -s <имя_сервера> -k cpu.load)
echo “Метрика CPU: $cpu_load”
# Отправка метрик в базу данных Zabbix
curl -X POST -H “Content-Type: application/json” \
http://<адрес_сервера_zabbix>:80/zabbix/api_jsonrpc.php -d \
‘{“jsonrpc”:”2.0″,”method”:”user.login”,”params”:{“username”:”zabbix”,”password”:”zabbix”},”id”:1}’ | \
curl -X POST -H “Content-Type: application/json” \
http://<адрес_сервера_zabbix>:80/zabbix/api_jsonrpc.php -d \
‘{“jsonrpc”:”2.0″,”method”:”host.get”,”params”:{“output”:”extend”,”filter”:{“host”:”имя_сервера”}},”id”:1}’ | \
curl -X POST -H “Content-Type: application/json” \
http://<адрес_сервера_zabbix>:80/zabbix/api_jsonrpc.php -d \
‘{“jsonrpc”:”2.0″,”method”:”item.create”,”params”:{“hostid”:”имя_сервера”,”name”:”cpu.load”,”type”:18,”key_”:”cpu.load”},”id”:1}’
EOF
# Присвоение владельца файлу сценария
chown zabbix:zabbix /etc/zabbix/scripts/monitoring.sh
“`
После создания сценария необходимо указать в конфигурационном файле агента, какой интервал отслеживания следует использовать:
“`bash
# Создание файла конфигурации агента для сбора и отправки метрик
cat <<EOF > /etc/zabbix/zabbix_agentd.conf
Interval=30
# Исполнение сценария
UserParameter=monitoring[*],/etc/zabbix/scripts/monitoring.sh $1
EOF
“`
После настройки всех параметров необходимо перезагрузить сервисы Zabbix и агент:
“`bash
systemctl restart zabbix-server
systemctl restart zabbix-agent
“`
Теперь вы можете отслеживать метрики по адресу: <адрес_сервера_zabbix>:80.
Пожалуйста, помните, что приведенные выше настройки являются примерами и должны быть адаптированы под конкретные требования вашей организации.