- zabbix
zabbix(音同 zbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
Zabbix的优缺点:
优点:
开源,无软件成本投入
Server 对设备性能要求低
支持设备多,自带多种监控模板
支持分布式集中管理,有自动发现功能,可以实现自动化监控
开放式接口,扩展性强,插件编写容易
当监控的item 比较多服务器队列比较大时可以采用被动状态,被监控客户端主动从server 端去下载需要监控的item 然后取数据上传到server 端。这种方式对服务器的负载比较小。
Api 的支持,方便与其他系统结合
缺点:
需在被监控主机上安装agent,所有数据都存在数据库里,产生的数据据很大,瓶颈主要在数据库。
=============================================================
安装zabbix (机器能上网的情况)
1、时间同步、配置主机名/解析、SELinux/firewalld关闭 (略)
[root@zabbix-server yum.repos.d]# cat centos.repo
[aliyuan]
name=aliyuan
baseurl=http://mirrors.aliyun.com/zabbix/zabbix/3.2/rhel/7/x86_64/
enabled=1
gpgcheck=0
[root@zabbix -server yum.repos.d]#
[root@zabbix-server yum.repos.d]# yum makecache
3、安装依赖:
[root@zabbix-server~]# yum install epel-release
[root@zabbix-server ~]# yum install -y httpd mariadb mariadb-server mariadb-devel libdbi-dbd-mysql net-snmp net-snmp-devel net-snmp-utils curl-devel mod_ssl mod_auth_mysql mod_perl
开启各项服务并设置为开机自动启动
[root@zabbix-server ~]# systemctl start httpd
[root@zabbix-server ~]# systemctl enable httpd
[root@zabbix-server ~]# systemctl start mariadb
[root@zabbix-server ~]# systemctl enable mariadb
4、安装zabbix服务端
[root@zabbix-server ~]# yum install -y zabbix-server-mysql zabbix-web zabbix-web-mysql
创建并初始化zabbix数据库
mysql> CREATE DATABASE zabbix CHARACTER SET utf8;
mysql> GRANT all ON zabbix.* TO 'zabbixuser'@'localhost' IDENTIFIED BY 'redhat';
mysql> FLUSH PRIVILEGES;
导入数据表
[root@zabbix-server ~]# cd /usr/share/doc/zabbix-server-mysql-3.2.1/
[root@zabbix-server zabbix-server-mysql-3.2.1]# zcat create.sql.gz | mysql -u root -p zabbix
登陆mysql查询是否登陆成功(127张表)
#mysql ----- 登录数据库
MariaDB [zabbix]> use zabbix
MariaDB [zabbix]> show tables;
在zabbix_server.conf文件中编辑数据库相关配置
[root@server ~]# vim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbixuser
DBPassword=redhat
DBSocket=/var/lib/mysql/mysql.sock
启动Zabbix Server并配置其开机启动
[root@zabbix-server ~]# systemctl start zabbix-server
[root@zabbix-server ~]# systemctl enable zabbix-server
[root@server ~]# netstat -antp | grep zabbix
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 5909/zabbix_server
tcp 0 0 :::10051 :::* LISTEN 5909/zabbix_server
[root@server ~]#
如果出现 Can't connect to local MySQL server through socket '/tmp/mysql.sock'的error
解决办法:# ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
编辑zabbix.conf配置文件,指定PHP的时区
[root@zabbix-server zabbix-web-3.2.1]# vim /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai
[root@zabbix-server ~]# systemctl restart httpd
5、安装zabbix-server web
打开web界面 -------> http://IP地址/zabbix
开始安装zabbix
检测配置必须保证全是ok
配置数据库
一些其他细节配置,包括主机名或IP地址以及默认监听端口
默认用户名为admin,密码为zabbix