监控服务器 - 什么是Zabbix
Zabbix是企业级开源分布式监控服务器解决方案。 该软件监控网络的不同参数和服务器的完整性,还允许为任何事件配置基于电子邮件的警报。 Zabbix根据存储在数据库(例如MySQL)中的数据提供报告和数据可视化功能。 由软件收集的每个度量可以通过基于Web的界面访问。
Zabbix根据GNU通用公共许可证版本2(GPLv2)的条款发布,完全免费。
在本教程中,我们将在运行MySQL,Apache和PHP的Ubuntu 16.04服务器上安装Zabbix。
安装Zabbix服务器
首先,我们需要安装Zabbix所需的几个PHP模块:
# apt-get install php7.0-bcmath php7.0-xml php7.0-mbstring
Ubuntu存储库中提供的Zabbix软件包已过时。我们可以使用官方Zabbix存储库安装最新的稳定版本。
通过执行以下命令来安装存储库包:
$ wget +xenial_all.deb
# dpkg -i zabbix-release_3.2-1+xenial_all.deb
然后更新apt包源码:
# apt-get update
现在可以安装具有MySQL支持的Zabbix Server和PHP前端。 执行命令:
#apt-get install zabbix-server-mysql zabbix-frontend-php
安装Zabbix agent:
#apt-get install zabbix-agent
Zabbix现已安装。 下一步是配置数据库以存储其数据。
为Zabbix配置MySQL
我们需要创建一个新的MySQL数据库,Zabbix将存储收集的数据。
启动MySQL shell:
$ mysql -uroot -p
下一步
mysql> CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;
Query OK, 1 row affected (0.00 sec)
mysql> GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY 'usr_strong_pwd';
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> EXIT;
Bye
接下来,导入初始模式和数据。
# zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix
输入在MySQL shell中创建的zabbix用户的密码。
接下来,我们需要编辑Zabbix Server配置文件
就是 /etc/zabbix/zabbis_server.conf:
# $EDITOR /etc/zabbix/zabbix_server.conf
搜索该文件的DBPassword部分:
### Option: DBPassword
# Database password. Ignored for SQLite.
# Comment this line if no password is used.
#
# Mandatory: no
# Default:
# DBPassword=
取消注释DBPassword =这行并通过添加在MySQL中创建的密码进行编辑:
DBPassword=usr_strong_pwd
接下来,查找DBHost =行并取消注释。
保存并退出。
配置PHP
我们需要配置PHP来使用Zabbix。 在安装过程中,安装程序在/etc/zabbix中创建了一个名为apache.conf的配置文件。 打开此文件:
# $EDITOR /etc/zabbix/apache.conf
在这里,现在只需要取消注释date.timezone设置并设置正确的时区:
<IfModule mod_php7.c>
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
php_value date.timezone Europe/Rome
</IfModule>
保存并退出。
此时,重新启动Apache并启动Zabbix Server服务,使其能够在启动时启动:
# systemctl restart apache2
# systemctl start zabbix-server
# systemctl enable zabbix-server
使用systemctl检查Zabbix状态:
# systemctl status zabbix-server
该命令应该输出:
â zabbix-server.service - Zabbix Server
Loaded: loaded (/lib/systemd/system/zabbix-server.service; enabled; vendor pr
Active: active (running) ...
此时,Zabbix的服务器端部件已正确安装和配置。