Zabbix 监控
Linux下常用的系统监控软件有Nagios、Cacti、Zabbix、Monit等,这些开源的软件,可以帮助我们更好的管理机器,在第一时间内发现,并警告系统维护人员。
今天开始研究下Zabbix,使用Zabbix的目的,是为了能够更好的监控mysql数据库服务器,并且能够生成图形报表,虽然Nagios也能够生成图形报表,但没有Zabbix这么强大。
首先,我们先来介绍下Zabblx:
一.Zabbix简介
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix由zabbix server与可选组件zabbix agent两部门组成。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视。
zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。
zabbix的主要特点:
- 学习成本低
- 支持多语言(包括中文)
- 免费开源
- 自动发现服务器与网络设备
- 分布式监视以及WEB集中管理功能
- 可以无agent监视
- 用户安全认证和柔软的授权方式
- 通过WEB界面设置或查看监视结果
- email等通知功能
等等
Zabbix主要功能:
- CPU负荷
- 内存使用
- 磁盘使用
- 网络状况
- 端口监视
- 日志监视
安装源码库配置部署包
安装源码库配置部署包,这个部署包包含了yum配置文件,更新下yum源缓存
# rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
# yum makecache
安装Zabbix部署包,安装初始化数据库,数据库没有密码
# yum install zabbix-server-mysql zabbix-web-mysql zabbix-server zabbix-agent mariadb-server
# systemctl start mariadb
# mysql -uroot -p
在MySQL上安装Zabbix数据库和用户,然后导入初始架构(Schema)和数据
MariaDB [(none)]>create database zabbix character set utf8 collate utf8_bin;
MariaDB [(none)]>grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| zabbix |
+--------------------+
5 rows in set (0.00 sec)
MariaDB [(none)]> quit
# cd /usr/share/doc/zabbix-server-mysql-3.4.10/
# zcat create.sql.gz |mysql -uroot zabbix
在zabbix_server.conf中编辑数据库配置,启动Zabbix Server进程
# vi /etc/zabbix/zabbix_server.conf DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabbix
# systemctl start zabbix-server
注意:在启动zabbix-server进程前要先确保selinux是否已关闭,防火墙是否关闭或者是添加了80,3306,10050,10051等等,不然zabbix-server会报错
编辑Zabbix前端的PHP配置
Zabbix前端的Apache配置文件位于 /etc/httpd/conf.d/zabbix.conf 。一些PHP设置已经完成了配置
# vim /etc/httpd/conf.d/zabbix.conf
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 Asia/Shanghai
启动Apache服务
# systemctl start httpd
在浏览器打开URL
http:ip地址/zabbix,根据图形界面进行安装
zabbix-server端已搭建完成,登录默认账号密码是:Admin/zabbix