zabbix的安装

 安装环境

参照官方文档,去rpmfind.net或者官网下载RPM包

  两台虚拟机,一台服务器,一台代理

  Zabbix 3.0 只支持CentOS 7.0以上版本,所以先在虚拟机中安装好CentOS 7.0 x64,并设置好IP,允许虚拟机联网。

 

一、虚拟机服务器端的配置

 

1.安装MYSQL

从最新版本的linux系统开始,默认的是 Mariadb而不是mysql!

使用系统自带的repos安装很简单:


#
yum install -y mariadb mariadb-server 启动mariadb # systemctl start mariadb 之前的服务管理命令还可以用 # service mariadb start 设置开机自启动 # systemctl enable mariadb 安全初始化,设置root密码等 # mysql_secure_installation  或者 mysqladmin -uroot password    123456初次登录设置密码 测试登录 # mysql -uroot -p123456

 2.安装zabbix

安装 zabbix 官方源
# rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

安装 server和web端,基于mysql数据库
# yum install zabbix-server-mysql zabbix-web-mysql 下载RPM包,手动安装   1.首先下载 zabbix-server-mysql zabbix-web-mysql 对应的RPM包,要确定依赖关系   2.搭建本机yum源,一步步解决依赖关系   3.利用镜像中的依赖包 yum localinstall *.rpm

 3. 初始化 zabbix db

# mysql -uroot -p<password>

mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '<password>';
mysql> quit;

# cd /usr/share/doc/zabbix-server-mysql-3.0.0
# zcat create.sql.gz | mysql -uroot -p zabbix

4、修改 Zabbix Server 配置,并启动 Zabbix Server 服务

# vi /etc/zabbix/zabbix_server.conf

DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix

启动zabbix-server服务
# systemctl start zabbix-server

开机自启动zabbix-server服务
# systemctl enable zabbix-server
启动服务的时候出现一个错误,按照提示排错
# Job for zabbix-server.service failed. See 'systemctl status zabbix-server.service' and 'journalctl -xn' for details.
报错:
# segfault at 18 ip 00007f7bd09c9c00 sp 00007fff4034aa28 error 4 in libpthread-2.17.so[7f7bd09c0000+16000]

首先要确认关闭selinux服务,关闭防火墙服务 临时配置 setenforce 0 或者 更改文件/etc/sysconfig/selinux selinux=disabled,然后重启
解决方法两种
1.更新trousers 下载 trousers-0.3.13-1.el7.x86_64.rpm 包 # rpm -U trousers-0.3.13-1.el7.x86_64.rpm 2.第二种方法 Centos7 中 gnutls.x86_64 (gnutls.x86_64 3.3.8-14.el7_2 ) 版本过高,需要降级 3.1.18-8.el7(1.20
下载
3.1.18-8.el7(1.20)的RPM包,需要依赖关系,需要下载4个RPM包 # rpm -Uvh --force gnutls-3.1.18-8.el7.x86_64.rpm 如果遇到其他库依赖 gnutls.x86_64 3.3.8 ;直接将gnutls.x86_64 3.3.8卸载 # yum -y remove gnutls-dane-3.3.8-12.el7.x86_64 然后重启服务 # systemctl restart zabbix-server.service

5、启动 zabbix 管理界面

编辑PHP配置
# vi /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服务
开机启动Apache服务
# systemctl enable httpd

6、登陆 Zabbix 管理页面http://虚拟机IP/zabbix/,显示Zabbix安装向导。此处省略

7、终于看到Zabbix 3.0的新版登陆界面了,默认用户名/密码:Admin/zabbix,注意用户名也区分大小写。

点击右上角的小人图标,进入个性化设置界面,语言没有简体中文可供选择,下面说手工把简体中文放出来。可以先换个主题看看效果。语言能改成中文,但有瑕疵,有其他方法


 二、代理端的配置

1.安装zabbix-agent

安装zabbix-agent
#yum install zabbix-agent
启动zabbix-agent服务
#systemctl start zabbix-agent

rpm 安装
#yum localinstall zabbix-agent-3.2.0-1.el7.x86_64.rpm

2.配置文件

ServerActive=127.0.0.1, 172.16.111.110Server=127.0.0.1, 172.16.111.110Hostname=agent

3.重启服务

#systemctl restart zabbix-agent

三、添加自定义脚本

有时候我们想让被监控端执行一个zabbix没有预定义的检测,zabbix的用户自定义参数功能提供了这个方法。我们可以在客户端配置文件zabbix_angentd.conf里面配置UserParameter,下面我们一起来添加一个自定义脚本(用户自定义参数里指定的脚本由zabbix agent来执行,最大可以返回512KB的数据)

1.在被监控的端配置agent使其生效

语法为:UserParameter=key[*],command 

key在系统中必须是唯一的,[*]传进来的参数是$1-$9,command为调用这个key执行的命令

# vim /etc/zabbix/zabbix_agentd.conf
UserParameter=test.add[*],echo $1+$2|bc
#service zabbix-agent restart

2.在zabbix主机agent上创建监控项,键值写为test.add[10,20],添加

3.在监测--最新数据中,查看监控项,可以看到返回值为30 或者在服务器端执行 zabbix_get -s 172.16.111.109 -k test.add[10,20]查看是否有输出值

四、利用zabbix监控mysql数据库

zabbix 2.2开始支持mysql数据库监控,进入 server IP/zabbix

1.进入配置-主机-虚拟机A-模板,为监控主机添加一个新的模板 “template app mysql”

2.配置监控主机,实现数据库的链接

查看zabbix-agent自带和MYSQL相关的userparameter的参数
# cat /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf

3.根据上述配置文件得知,在/var/lib/zabbix下配置.my.cnf文件,用来存储链接数据库的账户和密码

# mkdir /var/lib/zabbix
# vim /var/lib/zabbix/.my.cnf
[mysql]
host = localhost
user = zabbix
password =zabbix
socket = /var/lib/mysql/mysql.sock
[mysqladmin]
host = localhost
user = zabbix
password = zabbix
socket = /var/lib/mysql/mysql.sock
配置成功后,HOME=/var/lib/zabbix mysql可以登录数据库,配置成功

4.为保证安全,可以创建一个新用户

# mysql -uroot -p123123
mysql> GRANT USAGE ON *.* TO 'zabbix'@'localhost' IDENTIFIED BY 'zabbix';

5.配置完成,重启服务

# service zabbix-agent restart

6.查看主机的监控项,和监测--最新数据,可以查看数据库的一些参数

 

posted @ 2016-11-07 23:35  bonda  阅读(373)  评论(0编辑  收藏  举报